IFNUQU5EQVJES0xBU1NFOgoJIi9zdGQvYXJtb3VyIgogCiBCRU5VVFpVTkc6CiAgICAgICAgaW5oZXJpdCAiL3N0ZC9hcm1vdXIiOwogCiAgICAgICAgI2luY2x1ZGUgPHByb3BlcnRpZXMuaD4KICAgICAgICAjaW5jbHVkZSA8Y29tYmF0Lmg+CgogUFJPUEVSVElFUzoKICAgICBHcnVuZGxlZ2VuZDoKCVBfQUMJCXNldHpiYXI6IFJ1ZXN0dW5nc2tsYXNzZSA9PSBTY2h1dHoKCVBfQVJNT1VSX1RZUEUJc2V0emJhcjogUnVlc3R1bmdzdHlwCgogICAgIEJlc29uZGVyZSBBdHRyaWJ1dGUgdW5kIEFuZm9yZGVydW5nZW4gZnVlciBUcmFlZ2VyOgoJUF9SRVNUUklDVElPTlMJc2V0emJhcjogQW5mb3JkZXJ1bmdlbiBhbiBUcmFlZ2VyCglQX01fQVRUUl9NT0QJc2V0emJhcjogQXR0cmlidXRtb2RpZmlrYXRvciBmdWVyIFRyYWVnZXIKCVBfUkVTSVNUQU5DRV9TVFJFTkdUSFMKCQkJc2V0emJhcjogUmVzaXN0ZW56bW9kaWZpa2F0b3IgZnVlciBUcmFlZ2VyCglQX05SX0hBTkRTCXNldHpiYXI6IG5vdHdlbmRpZ2UgSGFuZGFuemFobCAoekIgU2NoaWxkZSkKCVBfQ1VSU0VECXNldHpiYXI6IFZlcmZsdWNodW5nIChuaWNodCBhdXN6aWVoYmFyKQoKICAgICBNZWxkdW5nZW4gdW5kIFplaXRwdW5rdGU6CglQX0VRVUlQX1RJTUUJZW50aGFlbHQgZGVuIFplaXRwdW5rdCBkZXMgQW56aWVoZW5zCglQX0xBU1RfVVNFCWVudGhhZWx0IGRlbiBaZWl0cHVua3QgZGVzIGxldHp0ZW4gVHJlZmZlcnMKCVBfV09STgkJZW50aGFlbHQgZGVuIFRyYWVnZXIKCVBfV0VBUl9NU0cJc2V0emJhcjogZWlnZW5lIEFuemllaG1lbGR1bmdlbgoJUF9VTldFQVJfTVNHCXNldHpiYXI6IGVpZ2VuZSBBdXN6aWVobWVsZHVuZ2VuCgogICAgIER5bmFtaXNjaGVzIFZlcmhhbHRlbiBpbiBLYW1wZiB1bmQgYmVpbSBBbnppZWhlbjoKCVBfV0VBUl9GVU5DCXNldHpiYXI6IE9iamVrdCBtaXQgQW56aWVoZnVua3Rpb24gIldlYXJGdW5jKCkiCglQX1JFTU9WRV9GVU5DCXNldHpiYXI6IE9iamVrdCBtaXQgQXVzemllaGZ1bmt0aW9uICJSZW1vdmVGdW5jKCkiCglQX0RFRkVORF9GVU5DCXNldHpiYXI6IE9iamVrdCBtaXQgRGVmZW5zaXZmdW5rdGlvbiAiRGVmZW5kRnVuYygpIgoKICAgICBadXNhZXR6bGljaGUgRWlnZW5zY2hhZnRlbjoKCVBfREFNQUdFRAllbnRoYWVsdCBkZW4gQXVzbWFzcyBkZXMgU2NoYWRlbnMgYW4gV2FmZmUKCVBfUVVBTElUWQlzZXR6YmFyOiBRdWFsaXTkdC9IYWx0YmFya2VpdCBkZXIgV2FmZmUKCVBfRUZGRUNUSVZFX0FDCXNldHpiYXI6IGZhbGxzIERlZmVuZEZ1bmMgQUMgbmljaHQgc2ljaGJhciBhZW5kZXJ0CglQX0RBTV9UWVBFCXNldHpiYXI6IGludGVyZXNzYW50IGJlaSBLYWVtcGZlcmFuZ3JpZmZlbgoKICAgICBadXNhZXR6bGljaCBzaW5kIGFsbGUgUHJvcGVydGllcyBhdXMgL3N0ZC90aGluZyB2ZXJmdWVnYmFyLCBhbHNvCiAgICAgYml0dGUgYXVjaCBmb2xnZW5kZSBzZXR6ZW46CglQX01BVEVSSUFMCXNldHpiYXI6IFp1c2FtbWVuc2V0enVuZwoJUF9TSVpFCQlzZXR6YmFyOiBHcm9lc3NlCglQX1dFSUdIVAlzZXR6YmFyOiBHZXdpY2h0CgogTUFLUk9TOgogICAgIEd1ZWx0aWdlIFJ1ZXN0dW5nc3R5cGVuIChkZWZpbmllcnQgaW4gIi9zeXMvY29tYmF0LmgiKS4KIAogRVJMQUVVVEVSVU5HOgogICAgIEJhc2lza2xhc3NlIGZ1ZXIgYWxsZSBSdWVzdHVuZ2VuIGltIFNwaWVsLiBTaWUgaXN0IHZvbiAiL3N0ZC9jbG90aGluZyIKICAgICBhYmdlbGVpdGV0IHVuZCBlbnRoYWVsdCBhbGxlIHp1c2FldHpsaWNoZSBGdW5rdGlvbmFsaXRhZXQKICAgICBmdWVyIGRlbiBLYW1wZi4KCiAgICAgVm9yIGRlciBQcm9ncmFtbWllcnVuZyB2b24gUnVlc3R1bmdlbiBzb2xsdGUgL2RvYy9NRy93YWZmZW5fd2VydGUKICAgICBnZWxlc2VuIHdlcmRlbi4gRGllIFJlZ2VsbiBkYXJpbiBzaW5kIHZlcmJpbmRsaWNoIHVuZCBzb2xsdGVuIG51cgogICAgIGluIEF1c25haG1lZmFlbGxlbiB1bmQgbWl0IEFic3ByYWNoZSBtaXQgZGVtIEVyem1hZ2llciBmdWVyIAogICAgIFdhZmZlbi9SdWVzdHVuZ2VuL01vbnN0ZXIgdWViZXJzY2hyaXR0ZW4gd2VyZGVuLgogICAgIEdlcmFkZSBpbiBEZWZlbmRGdW5jcyBzb2xsdGUgYXVmIGRpZSBrb3JyZWt0ZSBCZWhhbmRsdW5nIGRlcgogICAgIHVlYmVyZ2ViZW5lbiBTcGVsbGZsYWdzIGdlYWNodGV0IHdlcmRlbiAtIGluc2Jlc29uZGVyZSBTUF9SRUNVUlNJVkUKICAgICB1bmQgU1BfTk9fQUNUSVZFX0RFRkVOU0UuCgogICAgIERpZSBNYXhpbWFsd2VydGUgdW5kIFdlcnRlIGZ1ZXIgWmVyc3RvZXJ1bmcgYmVpIFZlcmthdWYgc2luZAogICAgIC9zeXMvY29tYmF0LmggenUgZW50bmVobWVuOiBWQUxJRF9BUk1PVVJfQ0xBU1MvS0VFUF9BUk1PVVJfQ0xBU1MuCgogVkVSRVJCVU5HU0JBVU06CiAgICAgWy9zdGQvYXJtb3VyXQogICAgIC4uLi4uIFsvc3RkL3RoaW5nL3Byb3BlcnRpZXNdCiAgICAgLi4uLi4gWy9zdGQvdGhpbmcvbGFuZ3VhZ2VdCiAgICAgLi4uLi4gWy9zdGQvdGhpbmcvY29tbWFuZHNdCiAgICAgLi4uLi4gWy9zdGQvdGhpbmcvcmVzdHJpY3Rpb25zXQogICAgIC4uLi4uIFsvc3RkL3RoaW5nL2VudmNoa10KICAgICAuLi4uLiBbL3N0ZC9hcm1vdXIvZGVzY3JpcHRpb25dCiAgICAgLi4uLi4uLi4uLiBbL3N0ZC9jbG90aGluZy9kZXNjcmlwdGlvbl0KICAgICAuLi4uLi4uLi4uLi4uLiBbL3N0ZC90aGluZy9kZXNjcmlwdGlvbl0KICAgICAuLi4uLiBbL3N0ZC9hcm1vdXIvd2Vhcl0KICAgICAuLi4uLi4uLi4uIFsvc3RkL2Nsb3RoaW5nL3dlYXJdCiAgICAgLi4uLi4gWy9zdGQvY2xvdGhpbmcvbW92aW5nXQogICAgIC4uLi4uLi4uLi4gWy9zdGQvdGhpbmcvbW92aW5nXQogICAgIC4uLi4uIFsvc3RkL2FybW91ci9jb21iYXRdCgogU0lFSEUgQVVDSDoKICAgICBQX0FSTU9VUlMsIFBfTEFTVF9XRUFSX0FDVElPTiwgUF9UT1RBTF9BQwogICAgIEF0dGFjaygpLCBEZWZlbmQoKSwgL2RvYy93aXovcnVlc3R1bmdlbiwgYmFsYW5jZQoKMDMuMDguMjAwNywgWmVzc3RyYQoK