From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v5 01/21] xen/x86: Annotate VM applicability in featureset Date: Thu, 7 Apr 2016 12:57:06 +0100 Message-ID: <1460030246-30153-2-git-send-email-andrew.cooper3@citrix.com> References: <1460030246-30153-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1460030246-30153-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Jan Beulich List-Id: xen-devel@lists.xenproject.org VXNlIGF0dHJpYnV0ZXMgdG8gc3BlY2lmeSB3aGV0aGVyIGEgZmVhdHVyZSBpcyBhcHBsaWNhYmxl IHRvIGJlIGV4cG9zZWQgdG86CiAxKSBBbGwgZ3Vlc3RzCiAyKSBIVk0gZ3Vlc3RzCiAzKSBIVk0g SEFQIGd1ZXN0cwphbmQsIHZpYSBhYnNlbmNlIG9mIGFuIGF0dHJpYnV0ZSwgdG8gbm8gZ3Vlc3Rz LgoKVGhlcmUgaXMgbm8gY3VycmVudCBuZWVkIGZvciBvdGhlciBjYXRlZ29yaWVzIChlLmcuIFBW LW9ubHkgZmVhdHVyZXMpLCBhbmQKc3VjaCBjYXRlZ29yaWVzIHNob3VsZCBub3QgYmUgaW50cm9k dWNlZCBpZiBwb3NzaWJsZS4gIFRoZXNlIGNhdGVnb3JpZXMgZm9sbG93CmZyb20gdGhlIGZhY3Qg dGhhdCwgd2l0aCBpbmNyZWFzZWQgaGFyZHdhcmUgc3VwcG9ydCwgYSBndWVzdCBnZXRzIG1vcmUK ZmVhdHVyZXMgdG8gdXNlLgoKVGhlc2Ugc2V0dGluZ3MgYXJlIGRlcml2ZWQgZnJvbSB0aGUgZXhp c3RpbmcgY29kZSBpbiB7cHYsaHZtfV9jcHVpZCgpLCBhbmQKeGNfY3B1aWRfeDg2LmMuICBPbmUg bm90YWJsZSBleGNlcHRpb24gaXMgRVhUQVBJQyB3aGljaCB3YXMgcHJldmlvdXNseQplcnJvbmVv dXNseSBleHBvc2VkIHRvIGd1ZXN0cy4gIFBWIGd1ZXN0cyBkb24ndCBnZXQgdG8gdXNlIHRoZSBB UElDIGFuZCB0aGUKSFZNIEFQSUMgZW11bGF0aW9uIGRvZXNuJ3Qgc3VwcG9ydCBleHRlbmRlZCBz cGFjZS4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJp eC5jb20+ClJldmlld2VkLWJ5OiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxrQG9y YWNsZS5jb20+Ci0tLQpDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgoKdjI6CiAq IEFubm90YXRlIGZlYXR1cmVzIHVzaW5nIGEgbWFnaWMgY29tbWVudCBhbmQgYXV0b2dlbmVyYXRp b24uCnYzOgogKiBSZWJhc2Ugb3ZlciB0aGUgbmV3IG5hbWVzcGFjZWluZyBjaGFuZ2VzLgogKiBF eHBhbmQgY29tbWl0IG1lc3NhZ2UuCiAqIENvcnJlY3QgUFNFMzYgdG8gYmVpbmcgYSBIQVAtb25s eSBmZWF0dXJlLgp2NDoKICogUmUtYnJlYWsgUFNFMzYuCiAqIEhpZGUgTFdQIGZyb20gUFYgZ3Vl c3RzLgp2NToKICogRXhwbGljaXRseSBpZGVudGlmeSB0aGF0IGF0dHJpYnV0ZXMgYXJlIG5vdCBw YXJ0IG9mIHRoZSBwdWJsaWMgQVBJLgotLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9j cHVmZWF0dXJlc2V0LmggfCAxOTAgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogeGVuL3Rv b2xzL2dlbi1jcHVpZC5weSAgICAgICAgICAgICAgICAgICAgICB8ICAzMiArKysrLQogMiBmaWxl cyBjaGFuZ2VkLCAxMjggaW5zZXJ0aW9ucygrKSwgOTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQuaCBiL3hlbi9pbmNs dWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKaW5kZXggODMwODk3Mi4uZWRkOTk3 NSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQu aAorKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1ZmVhdHVyZXNldC5oCkBAIC03 NSwxNDEgKzc1LDE0NyBAQCBlbnVtIHsKICAqIEF0dHJpYnV0ZSBzeW50YXg6CiAgKgogICogQXR0 cmlidXRlcyBmb3IgYSBwYXJ0aWN1bGFyIGZlYXR1cmUgYXJlIHByb3ZpZGVkIGFzIGNoYXJhY3Rl cnMgYmVmb3JlIHRoZQotICogZmlyc3Qgc3BhY2UgaW4gdGhlIGNvbW1lbnQgaW1tZWRpYXRlbHkg Zm9sbG93aW5nIHRoZSBmZWF0dXJlIHZhbHVlLgorICogZmlyc3Qgc3BhY2UgaW4gdGhlIGNvbW1l bnQgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBmZWF0dXJlIHZhbHVlLiAgTm90ZSAtCisgKiBu b25lIG9mIHRoZXNlIGF0dHJpYnV0ZXMgZm9ybSBwYXJ0IG9mIHRoZSBYZW4gcHVibGljIEFCSS4K ICAqCiAgKiBTcGVjaWFsOiAnIScKICAqICAgVGhpcyBiaXQgaGFzIHNwZWNpYWwgcHJvcGVydGll cyBhbmQgaXMgbm90IGEgc3RyYWlnaHQgaW5kaWNhdGlvbiBvZiBhCiAgKiAgIHBpZWNlIG9mIG5l dyBmdW5jdGlvbmFsaXR5LiAgWGVuIHdpbGwgaGFuZGxlIHRoZXNlIGRpZmZlcmVudGx5LAogICog ICBhbmQgbWF5IG92ZXJyaWRlIHRvb2xzdGFjayBzZXR0aW5ncyBjb21wbGV0ZWx5LgorICoKKyAq IEFwcGxpY2FiaWxpdHkgdG8gZ3Vlc3RzOiAnQScsICdTJyBvciAnSCcKKyAqICAgJ0EnID0gQWxs IGd1ZXN0cy4KKyAqICAgJ1MnID0gQWxsIEhWTSBndWVzdHMgKG5vdCBQViBndWVzdHMpLgorICog ICAnSCcgPSBIVk0gSEFQIGd1ZXN0cyAobm90IFBWIG9yIEhWTSBTaGFkb3cgZ3Vlc3RzKS4KICAq LwogCiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHgwMDAwMDAw MS5lZHgsIHdvcmQgMCAqLwotWEVOX0NQVUZFQVRVUkUoRlBVLCAgICAgICAgICAgMCozMisgMCkg LyogICBPbmJvYXJkIEZQVSAqLwotWEVOX0NQVUZFQVRVUkUoVk1FLCAgICAgICAgICAgMCozMisg MSkgLyogICBWaXJ0dWFsIE1vZGUgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoREUsICAg ICAgICAgICAgMCozMisgMikgLyogICBEZWJ1Z2dpbmcgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZF QVRVUkUoUFNFLCAgICAgICAgICAgMCozMisgMykgLyogICBQYWdlIFNpemUgRXh0ZW5zaW9ucyAq LwotWEVOX0NQVUZFQVRVUkUoVFNDLCAgICAgICAgICAgMCozMisgNCkgLyogICBUaW1lIFN0YW1w IENvdW50ZXIgKi8KLVhFTl9DUFVGRUFUVVJFKE1TUiwgICAgICAgICAgIDAqMzIrIDUpIC8qICAg TW9kZWwtU3BlY2lmaWMgUmVnaXN0ZXJzLCBSRE1TUiwgV1JNU1IgKi8KLVhFTl9DUFVGRUFUVVJF KFBBRSwgICAgICAgICAgIDAqMzIrIDYpIC8qICAgUGh5c2ljYWwgQWRkcmVzcyBFeHRlbnNpb25z ICovCi1YRU5fQ1BVRkVBVFVSRShNQ0UsICAgICAgICAgICAwKjMyKyA3KSAvKiAgIE1hY2hpbmUg Q2hlY2sgQXJjaGl0ZWN0dXJlICovCi1YRU5fQ1BVRkVBVFVSRShDWDgsICAgICAgICAgICAwKjMy KyA4KSAvKiAgIENNUFhDSEc4IGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShBUElDLCAg ICAgICAgICAwKjMyKyA5KSAvKiEgIE9uYm9hcmQgQVBJQyAqLwotWEVOX0NQVUZFQVRVUkUoU0VQ LCAgICAgICAgICAgMCozMisxMSkgLyogICBTWVNFTlRFUi9TWVNFWElUICovCi1YRU5fQ1BVRkVB VFVSRShNVFJSLCAgICAgICAgICAwKjMyKzEyKSAvKiAgIE1lbW9yeSBUeXBlIFJhbmdlIFJlZ2lz dGVycyAqLwotWEVOX0NQVUZFQVRVUkUoUEdFLCAgICAgICAgICAgMCozMisxMykgLyogICBQYWdl IEdsb2JhbCBFbmFibGUgKi8KLVhFTl9DUFVGRUFUVVJFKE1DQSwgICAgICAgICAgIDAqMzIrMTQp IC8qICAgTWFjaGluZSBDaGVjayBBcmNoaXRlY3R1cmUgKi8KLVhFTl9DUFVGRUFUVVJFKENNT1Ys ICAgICAgICAgIDAqMzIrMTUpIC8qICAgQ01PViBpbnN0cnVjdGlvbiAoRkNNT1ZDQyBhbmQgRkNP TUkgdG9vIGlmIEZQVSBwcmVzZW50KSAqLwotWEVOX0NQVUZFQVRVUkUoUEFULCAgICAgICAgICAg MCozMisxNikgLyogICBQYWdlIEF0dHJpYnV0ZSBUYWJsZSAqLwotWEVOX0NQVUZFQVRVUkUoUFNF MzYsICAgICAgICAgMCozMisxNykgLyogICAzNi1iaXQgUFNFcyAqLwotWEVOX0NQVUZFQVRVUkUo Q0xGTFVTSCwgICAgICAgMCozMisxOSkgLyogICBDTEZMVVNIIGluc3RydWN0aW9uICovCitYRU5f Q1BVRkVBVFVSRShGUFUsICAgICAgICAgICAwKjMyKyAwKSAvKkEgIE9uYm9hcmQgRlBVICovCitY RU5fQ1BVRkVBVFVSRShWTUUsICAgICAgICAgICAwKjMyKyAxKSAvKlMgIFZpcnR1YWwgTW9kZSBF eHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShERSwgICAgICAgICAgICAwKjMyKyAyKSAvKkEg IERlYnVnZ2luZyBFeHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShQU0UsICAgICAgICAgICAw KjMyKyAzKSAvKlMgIFBhZ2UgU2l6ZSBFeHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShUU0Ms ICAgICAgICAgICAwKjMyKyA0KSAvKkEgIFRpbWUgU3RhbXAgQ291bnRlciAqLworWEVOX0NQVUZF QVRVUkUoTVNSLCAgICAgICAgICAgMCozMisgNSkgLypBICBNb2RlbC1TcGVjaWZpYyBSZWdpc3Rl cnMsIFJETVNSLCBXUk1TUiAqLworWEVOX0NQVUZFQVRVUkUoUEFFLCAgICAgICAgICAgMCozMisg NikgLypBICBQaHlzaWNhbCBBZGRyZXNzIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKE1D RSwgICAgICAgICAgIDAqMzIrIDcpIC8qQSAgTWFjaGluZSBDaGVjayBBcmNoaXRlY3R1cmUgKi8K K1hFTl9DUFVGRUFUVVJFKENYOCwgICAgICAgICAgIDAqMzIrIDgpIC8qQSAgQ01QWENIRzggaW5z dHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKEFQSUMsICAgICAgICAgIDAqMzIrIDkpIC8qIUEg T25ib2FyZCBBUElDICovCitYRU5fQ1BVRkVBVFVSRShTRVAsICAgICAgICAgICAwKjMyKzExKSAv KkEgIFNZU0VOVEVSL1NZU0VYSVQgKi8KK1hFTl9DUFVGRUFUVVJFKE1UUlIsICAgICAgICAgIDAq MzIrMTIpIC8qUyAgTWVtb3J5IFR5cGUgUmFuZ2UgUmVnaXN0ZXJzICovCitYRU5fQ1BVRkVBVFVS RShQR0UsICAgICAgICAgICAwKjMyKzEzKSAvKlMgIFBhZ2UgR2xvYmFsIEVuYWJsZSAqLworWEVO X0NQVUZFQVRVUkUoTUNBLCAgICAgICAgICAgMCozMisxNCkgLypBICBNYWNoaW5lIENoZWNrIEFy Y2hpdGVjdHVyZSAqLworWEVOX0NQVUZFQVRVUkUoQ01PViwgICAgICAgICAgMCozMisxNSkgLypB ICBDTU9WIGluc3RydWN0aW9uIChGQ01PVkNDIGFuZCBGQ09NSSB0b28gaWYgRlBVIHByZXNlbnQp ICovCitYRU5fQ1BVRkVBVFVSRShQQVQsICAgICAgICAgICAwKjMyKzE2KSAvKkEgIFBhZ2UgQXR0 cmlidXRlIFRhYmxlICovCitYRU5fQ1BVRkVBVFVSRShQU0UzNiwgICAgICAgICAwKjMyKzE3KSAv KlMgIDM2LWJpdCBQU0VzICovCitYRU5fQ1BVRkVBVFVSRShDTEZMVVNILCAgICAgICAwKjMyKzE5 KSAvKkEgIENMRkxVU0ggaW5zdHJ1Y3Rpb24gKi8KIFhFTl9DUFVGRUFUVVJFKERTLCAgICAgICAg ICAgIDAqMzIrMjEpIC8qICAgRGVidWcgU3RvcmUgKi8KLVhFTl9DUFVGRUFUVVJFKEFDUEksICAg ICAgICAgIDAqMzIrMjIpIC8qICAgQUNQSSB2aWEgTVNSICovCi1YRU5fQ1BVRkVBVFVSRShNTVgs ICAgICAgICAgICAwKjMyKzIzKSAvKiAgIE11bHRpbWVkaWEgRXh0ZW5zaW9ucyAqLwotWEVOX0NQ VUZFQVRVUkUoRlhTUiwgICAgICAgICAgMCozMisyNCkgLyogICBGWFNBVkUgYW5kIEZYUlNUT1Ig aW5zdHJ1Y3Rpb25zICovCi1YRU5fQ1BVRkVBVFVSRShTU0UsICAgICAgICAgICAwKjMyKzI1KSAv KiAgIFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMgKi8KLVhFTl9DUFVGRUFUVVJFKFNTRTIsICAg ICAgICAgIDAqMzIrMjYpIC8qICAgU3RyZWFtaW5nIFNJTUQgRXh0ZW5zaW9ucy0yICovCi1YRU5f Q1BVRkVBVFVSRShIVFQsICAgICAgICAgICAwKjMyKzI4KSAvKiEgIEh5cGVyLVRocmVhZGluZyBU ZWNobm9sb2d5ICovCitYRU5fQ1BVRkVBVFVSRShBQ1BJLCAgICAgICAgICAwKjMyKzIyKSAvKkEg IEFDUEkgdmlhIE1TUiAqLworWEVOX0NQVUZFQVRVUkUoTU1YLCAgICAgICAgICAgMCozMisyMykg LypBICBNdWx0aW1lZGlhIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKEZYU1IsICAgICAg ICAgIDAqMzIrMjQpIC8qQSAgRlhTQVZFIGFuZCBGWFJTVE9SIGluc3RydWN0aW9ucyAqLworWEVO X0NQVUZFQVRVUkUoU1NFLCAgICAgICAgICAgMCozMisyNSkgLypBICBTdHJlYW1pbmcgU0lNRCBF eHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShTU0UyLCAgICAgICAgICAwKjMyKzI2KSAvKkEg IFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMtMiAqLworWEVOX0NQVUZFQVRVUkUoSFRULCAgICAg ICAgICAgMCozMisyOCkgLyohQSBIeXBlci1UaHJlYWRpbmcgVGVjaG5vbG9neSAqLwogWEVOX0NQ VUZFQVRVUkUoVE0xLCAgICAgICAgICAgMCozMisyOSkgLyogICBUaGVybWFsIE1vbml0b3IgMSAq LwogWEVOX0NQVUZFQVRVUkUoUEJFLCAgICAgICAgICAgMCozMiszMSkgLyogICBQZW5kaW5nIEJy ZWFrIEVuYWJsZSAqLwogCiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2 ZWwgMHgwMDAwMDAwMS5lY3gsIHdvcmQgMSAqLwotWEVOX0NQVUZFQVRVUkUoU1NFMywgICAgICAg ICAgMSozMisgMCkgLyogICBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zLTMgKi8KLVhFTl9DUFVG RUFUVVJFKFBDTE1VTFFEUSwgICAgIDEqMzIrIDEpIC8qICAgQ2FycnktbGVzcyBtdWxpdHBsaWNh dGlvbiAqLworWEVOX0NQVUZFQVRVUkUoU1NFMywgICAgICAgICAgMSozMisgMCkgLypBICBTdHJl YW1pbmcgU0lNRCBFeHRlbnNpb25zLTMgKi8KK1hFTl9DUFVGRUFUVVJFKFBDTE1VTFFEUSwgICAg IDEqMzIrIDEpIC8qQSAgQ2FycnktbGVzcyBtdWxpdHBsaWNhdGlvbiAqLwogWEVOX0NQVUZFQVRV UkUoRFRFUzY0LCAgICAgICAgMSozMisgMikgLyogICA2NC1iaXQgRGVidWcgU3RvcmUgKi8KIFhF Tl9DUFVGRUFUVVJFKE1PTklUT1IsICAgICAgIDEqMzIrIDMpIC8qICAgTW9uaXRvci9Nd2FpdCBz dXBwb3J0ICovCiBYRU5fQ1BVRkVBVFVSRShEU0NQTCwgICAgICAgICAxKjMyKyA0KSAvKiAgIENQ TCBRdWFsaWZpZWQgRGVidWcgU3RvcmUgKi8KLVhFTl9DUFVGRUFUVVJFKFZNWCwgICAgICAgICAg IDEqMzIrIDUpIC8qICAgVmlydHVhbCBNYWNoaW5lIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFU VVJFKFZNWCwgICAgICAgICAgIDEqMzIrIDUpIC8qUyAgVmlydHVhbCBNYWNoaW5lIEV4dGVuc2lv bnMgKi8KIFhFTl9DUFVGRUFUVVJFKFNNWCwgICAgICAgICAgIDEqMzIrIDYpIC8qICAgU2FmZXIg TW9kZSBFeHRlbnNpb25zICovCiBYRU5fQ1BVRkVBVFVSRShFSVNULCAgICAgICAgICAxKjMyKyA3 KSAvKiAgIEVuaGFuY2VkIFNwZWVkU3RlcCAqLwogWEVOX0NQVUZFQVRVUkUoVE0yLCAgICAgICAg ICAgMSozMisgOCkgLyogICBUaGVybWFsIE1vbml0b3IgMiAqLwotWEVOX0NQVUZFQVRVUkUoU1NT RTMsICAgICAgICAgMSozMisgOSkgLyogICBTdXBwbGVtZW50YWwgU3RyZWFtaW5nIFNJTUQgRXh0 ZW5zaW9ucy0zICovCi1YRU5fQ1BVRkVBVFVSRShGTUEsICAgICAgICAgICAxKjMyKzEyKSAvKiAg IEZ1c2VkIE11bHRpcGx5IEFkZCAqLwotWEVOX0NQVUZFQVRVUkUoQ1gxNiwgICAgICAgICAgMSoz MisxMykgLyogICBDTVBYQ0hHMTZCICovCitYRU5fQ1BVRkVBVFVSRShTU1NFMywgICAgICAgICAx KjMyKyA5KSAvKkEgIFN1cHBsZW1lbnRhbCBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zLTMgKi8K K1hFTl9DUFVGRUFUVVJFKEZNQSwgICAgICAgICAgIDEqMzIrMTIpIC8qQSAgRnVzZWQgTXVsdGlw bHkgQWRkICovCitYRU5fQ1BVRkVBVFVSRShDWDE2LCAgICAgICAgICAxKjMyKzEzKSAvKkEgIENN UFhDSEcxNkIgKi8KIFhFTl9DUFVGRUFUVVJFKFhUUFIsICAgICAgICAgIDEqMzIrMTQpIC8qICAg U2VuZCBUYXNrIFByaW9yaXR5IE1lc3NhZ2VzICovCiBYRU5fQ1BVRkVBVFVSRShQRENNLCAgICAg ICAgICAxKjMyKzE1KSAvKiAgIFBlcmYvRGVidWcgQ2FwYWJpbGl0eSBNU1IgKi8KLVhFTl9DUFVG RUFUVVJFKFBDSUQsICAgICAgICAgIDEqMzIrMTcpIC8qICAgUHJvY2VzcyBDb250ZXh0IElEICov CitYRU5fQ1BVRkVBVFVSRShQQ0lELCAgICAgICAgICAxKjMyKzE3KSAvKkggIFByb2Nlc3MgQ29u dGV4dCBJRCAqLwogWEVOX0NQVUZFQVRVUkUoRENBLCAgICAgICAgICAgMSozMisxOCkgLyogICBE aXJlY3QgQ2FjaGUgQWNjZXNzICovCi1YRU5fQ1BVRkVBVFVSRShTU0U0XzEsICAgICAgICAxKjMy KzE5KSAvKiAgIFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMgNC4xICovCi1YRU5fQ1BVRkVBVFVS RShTU0U0XzIsICAgICAgICAxKjMyKzIwKSAvKiAgIFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMg NC4yICovCi1YRU5fQ1BVRkVBVFVSRShYMkFQSUMsICAgICAgICAxKjMyKzIxKSAvKiEgIEV4dGVu ZGVkIHhBUElDICovCi1YRU5fQ1BVRkVBVFVSRShNT1ZCRSwgICAgICAgICAxKjMyKzIyKSAvKiAg IG1vdmJlIGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShQT1BDTlQsICAgICAgICAxKjMy KzIzKSAvKiAgIFBPUENOVCBpbnN0cnVjdGlvbiAqLwotWEVOX0NQVUZFQVRVUkUoVFNDX0RFQURM SU5FLCAgMSozMisyNCkgLyogICBUU0MgRGVhZGxpbmUgVGltZXIgKi8KLVhFTl9DUFVGRUFUVVJF KEFFU05JLCAgICAgICAgIDEqMzIrMjUpIC8qICAgQUVTIGluc3RydWN0aW9ucyAqLwotWEVOX0NQ VUZFQVRVUkUoWFNBVkUsICAgICAgICAgMSozMisyNikgLyogICBYU0FWRS9YUlNUT1IvWFNFVEJW L1hHRVRCViAqLworWEVOX0NQVUZFQVRVUkUoU1NFNF8xLCAgICAgICAgMSozMisxOSkgLypBICBT dHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zIDQuMSAqLworWEVOX0NQVUZFQVRVUkUoU1NFNF8yLCAg ICAgICAgMSozMisyMCkgLypBICBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zIDQuMiAqLworWEVO X0NQVUZFQVRVUkUoWDJBUElDLCAgICAgICAgMSozMisyMSkgLyohQSBFeHRlbmRlZCB4QVBJQyAq LworWEVOX0NQVUZFQVRVUkUoTU9WQkUsICAgICAgICAgMSozMisyMikgLypBICBtb3ZiZSBpbnN0 cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUE9QQ05ULCAgICAgICAgMSozMisyMykgLypBICBQ T1BDTlQgaW5zdHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKFRTQ19ERUFETElORSwgIDEqMzIr MjQpIC8qUyAgVFNDIERlYWRsaW5lIFRpbWVyICovCitYRU5fQ1BVRkVBVFVSRShBRVNOSSwgICAg ICAgICAxKjMyKzI1KSAvKkEgIEFFUyBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKFhT QVZFLCAgICAgICAgIDEqMzIrMjYpIC8qQSAgWFNBVkUvWFJTVE9SL1hTRVRCVi9YR0VUQlYgKi8K IFhFTl9DUFVGRUFUVVJFKE9TWFNBVkUsICAgICAgIDEqMzIrMjcpIC8qISAgT1NYU0FWRSAqLwot WEVOX0NQVUZFQVRVUkUoQVZYLCAgICAgICAgICAgMSozMisyOCkgLyogICBBZHZhbmNlZCBWZWN0 b3IgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoRjE2QywgICAgICAgICAgMSozMisyOSkg LyogICBIYWxmLXByZWNpc2lvbiBjb252ZXJ0IGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVS RShSRFJBTkQsICAgICAgICAxKjMyKzMwKSAvKiAgIERpZ2l0YWwgUmFuZG9tIE51bWJlciBHZW5l cmF0b3IgKi8KLVhFTl9DUFVGRUFUVVJFKEhZUEVSVklTT1IsICAgIDEqMzIrMzEpIC8qISAgUnVu bmluZyB1bmRlciBzb21lIGh5cGVydmlzb3IgKi8KK1hFTl9DUFVGRUFUVVJFKEFWWCwgICAgICAg ICAgIDEqMzIrMjgpIC8qQSAgQWR2YW5jZWQgVmVjdG9yIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVG RUFUVVJFKEYxNkMsICAgICAgICAgIDEqMzIrMjkpIC8qQSAgSGFsZi1wcmVjaXNpb24gY29udmVy dCBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUkRSQU5ELCAgICAgICAgMSozMiszMCkg LypBICBEaWdpdGFsIFJhbmRvbSBOdW1iZXIgR2VuZXJhdG9yICovCitYRU5fQ1BVRkVBVFVSRShI WVBFUlZJU09SLCAgICAxKjMyKzMxKSAvKiFBIFJ1bm5pbmcgdW5kZXIgc29tZSBoeXBlcnZpc29y ICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHg4MDAwMDAw MS5lZHgsIHdvcmQgMiAqLwotWEVOX0NQVUZFQVRVUkUoU1lTQ0FMTCwgICAgICAgMiozMisxMSkg LyogICBTWVNDQUxML1NZU1JFVCAqLwotWEVOX0NQVUZFQVRVUkUoTlgsICAgICAgICAgICAgMioz MisyMCkgLyogICBFeGVjdXRlIERpc2FibGUgKi8KLVhFTl9DUFVGRUFUVVJFKE1NWEVYVCwgICAg ICAgIDIqMzIrMjIpIC8qICAgQU1EIE1NWCBleHRlbnNpb25zICovCi1YRU5fQ1BVRkVBVFVSRShG RlhTUiwgICAgICAgICAyKjMyKzI1KSAvKiAgIEZGWFNSIGluc3RydWN0aW9uIG9wdGltaXphdGlv bnMgKi8KLVhFTl9DUFVGRUFUVVJFKFBBR0UxR0IsICAgICAgIDIqMzIrMjYpIC8qICAgMUdiIGxh cmdlIHBhZ2Ugc3VwcG9ydCAqLwotWEVOX0NQVUZFQVRVUkUoUkRUU0NQLCAgICAgICAgMiozMisy NykgLyogICBSRFRTQ1AgKi8KLVhFTl9DUFVGRUFUVVJFKExNLCAgICAgICAgICAgIDIqMzIrMjkp IC8qICAgTG9uZyBNb2RlICh4ODYtNjQpICovCi1YRU5fQ1BVRkVBVFVSRSgzRE5PV0VYVCwgICAg ICAyKjMyKzMwKSAvKiAgIEFNRCAzRE5vdyEgZXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUo M0ROT1csICAgICAgICAgMiozMiszMSkgLyogICAzRE5vdyEgKi8KK1hFTl9DUFVGRUFUVVJFKFNZ U0NBTEwsICAgICAgIDIqMzIrMTEpIC8qQSAgU1lTQ0FMTC9TWVNSRVQgKi8KK1hFTl9DUFVGRUFU VVJFKE5YLCAgICAgICAgICAgIDIqMzIrMjApIC8qQSAgRXhlY3V0ZSBEaXNhYmxlICovCitYRU5f Q1BVRkVBVFVSRShNTVhFWFQsICAgICAgICAyKjMyKzIyKSAvKkEgIEFNRCBNTVggZXh0ZW5zaW9u cyAqLworWEVOX0NQVUZFQVRVUkUoRkZYU1IsICAgICAgICAgMiozMisyNSkgLypBICBGRlhTUiBp bnN0cnVjdGlvbiBvcHRpbWl6YXRpb25zICovCitYRU5fQ1BVRkVBVFVSRShQQUdFMUdCLCAgICAg ICAyKjMyKzI2KSAvKkggIDFHYiBsYXJnZSBwYWdlIHN1cHBvcnQgKi8KK1hFTl9DUFVGRUFUVVJF KFJEVFNDUCwgICAgICAgIDIqMzIrMjcpIC8qUyAgUkRUU0NQICovCitYRU5fQ1BVRkVBVFVSRShM TSwgICAgICAgICAgICAyKjMyKzI5KSAvKkEgIExvbmcgTW9kZSAoeDg2LTY0KSAqLworWEVOX0NQ VUZFQVRVUkUoM0ROT1dFWFQsICAgICAgMiozMiszMCkgLypBICBBTUQgM0ROb3chIGV4dGVuc2lv bnMgKi8KK1hFTl9DUFVGRUFUVVJFKDNETk9XLCAgICAgICAgIDIqMzIrMzEpIC8qQSAgM0ROb3ch ICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHg4MDAwMDAw MS5lY3gsIHdvcmQgMyAqLwotWEVOX0NQVUZFQVRVUkUoTEFIRl9MTSwgICAgICAgMyozMisgMCkg LyogICBMQUhGL1NBSEYgaW4gbG9uZyBtb2RlICovCi1YRU5fQ1BVRkVBVFVSRShDTVBfTEVHQUNZ LCAgICAzKjMyKyAxKSAvKiEgIElmIHllcyBIeXBlclRocmVhZGluZyBub3QgdmFsaWQgKi8KLVhF Tl9DUFVGRUFUVVJFKFNWTSwgICAgICAgICAgIDMqMzIrIDIpIC8qICAgU2VjdXJlIHZpcnR1YWwg bWFjaGluZSAqLworWEVOX0NQVUZFQVRVUkUoTEFIRl9MTSwgICAgICAgMyozMisgMCkgLypBICBM QUhGL1NBSEYgaW4gbG9uZyBtb2RlICovCitYRU5fQ1BVRkVBVFVSRShDTVBfTEVHQUNZLCAgICAz KjMyKyAxKSAvKiFBIElmIHllcyBIeXBlclRocmVhZGluZyBub3QgdmFsaWQgKi8KK1hFTl9DUFVG RUFUVVJFKFNWTSwgICAgICAgICAgIDMqMzIrIDIpIC8qUyAgU2VjdXJlIHZpcnR1YWwgbWFjaGlu ZSAqLwogWEVOX0NQVUZFQVRVUkUoRVhUQVBJQywgICAgICAgMyozMisgMykgLyogICBFeHRlbmRl ZCBBUElDIHNwYWNlICovCi1YRU5fQ1BVRkVBVFVSRShDUjhfTEVHQUNZLCAgICAzKjMyKyA0KSAv KiAgIENSOCBpbiAzMi1iaXQgbW9kZSAqLwotWEVOX0NQVUZFQVRVUkUoQUJNLCAgICAgICAgICAg MyozMisgNSkgLyogICBBZHZhbmNlZCBiaXQgbWFuaXB1bGF0aW9uICovCi1YRU5fQ1BVRkVBVFVS RShTU0U0QSwgICAgICAgICAzKjMyKyA2KSAvKiAgIFNTRS00QSAqLwotWEVOX0NQVUZFQVRVUkUo TUlTQUxJR05TU0UsICAgMyozMisgNykgLyogICBNaXNhbGlnbmVkIFNTRSBtb2RlICovCi1YRU5f Q1BVRkVBVFVSRSgzRE5PV1BSRUZFVENILCAzKjMyKyA4KSAvKiAgIDNETm93IHByZWZldGNoIGlu c3RydWN0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoQ1I4X0xFR0FDWSwgICAgMyozMisgNCkgLypT ICBDUjggaW4gMzItYml0IG1vZGUgKi8KK1hFTl9DUFVGRUFUVVJFKEFCTSwgICAgICAgICAgIDMq MzIrIDUpIC8qQSAgQWR2YW5jZWQgYml0IG1hbmlwdWxhdGlvbiAqLworWEVOX0NQVUZFQVRVUkUo U1NFNEEsICAgICAgICAgMyozMisgNikgLypBICBTU0UtNEEgKi8KK1hFTl9DUFVGRUFUVVJFKE1J U0FMSUdOU1NFLCAgIDMqMzIrIDcpIC8qQSAgTWlzYWxpZ25lZCBTU0UgbW9kZSAqLworWEVOX0NQ VUZFQVRVUkUoM0ROT1dQUkVGRVRDSCwgMyozMisgOCkgLypBICAzRE5vdyBwcmVmZXRjaCBpbnN0 cnVjdGlvbnMgKi8KIFhFTl9DUFVGRUFUVVJFKE9TVlcsICAgICAgICAgIDMqMzIrIDkpIC8qICAg T1MgVmlzaWJsZSBXb3JrYXJvdW5kICovCi1YRU5fQ1BVRkVBVFVSRShJQlMsICAgICAgICAgICAz KjMyKzEwKSAvKiAgIEluc3RydWN0aW9uIEJhc2VkIFNhbXBsaW5nICovCi1YRU5fQ1BVRkVBVFVS RShYT1AsICAgICAgICAgICAzKjMyKzExKSAvKiAgIGV4dGVuZGVkIEFWWCBpbnN0cnVjdGlvbnMg Ki8KK1hFTl9DUFVGRUFUVVJFKElCUywgICAgICAgICAgIDMqMzIrMTApIC8qUyAgSW5zdHJ1Y3Rp b24gQmFzZWQgU2FtcGxpbmcgKi8KK1hFTl9DUFVGRUFUVVJFKFhPUCwgICAgICAgICAgIDMqMzIr MTEpIC8qQSAgZXh0ZW5kZWQgQVZYIGluc3RydWN0aW9ucyAqLwogWEVOX0NQVUZFQVRVUkUoU0tJ TklULCAgICAgICAgMyozMisxMikgLyogICBTS0lOSVQvU1RHSSBpbnN0cnVjdGlvbnMgKi8KIFhF Tl9DUFVGRUFUVVJFKFdEVCwgICAgICAgICAgIDMqMzIrMTMpIC8qICAgV2F0Y2hkb2cgdGltZXIg Ki8KLVhFTl9DUFVGRUFUVVJFKExXUCwgICAgICAgICAgIDMqMzIrMTUpIC8qICAgTGlnaHQgV2Vp Z2h0IFByb2ZpbGluZyAqLwotWEVOX0NQVUZFQVRVUkUoRk1BNCwgICAgICAgICAgMyozMisxNikg LyogICA0IG9wZXJhbmRzIE1BQyBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKExXUCwg ICAgICAgICAgIDMqMzIrMTUpIC8qUyAgTGlnaHQgV2VpZ2h0IFByb2ZpbGluZyAqLworWEVOX0NQ VUZFQVRVUkUoRk1BNCwgICAgICAgICAgMyozMisxNikgLypBICA0IG9wZXJhbmRzIE1BQyBpbnN0 cnVjdGlvbnMgKi8KIFhFTl9DUFVGRUFUVVJFKE5PREVJRF9NU1IsICAgIDMqMzIrMTkpIC8qICAg Tm9kZUlkIE1TUiAqLwotWEVOX0NQVUZFQVRVUkUoVEJNLCAgICAgICAgICAgMyozMisyMSkgLyog ICB0cmFpbGluZyBiaXQgbWFuaXB1bGF0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoVEJNLCAgICAg ICAgICAgMyozMisyMSkgLypBICB0cmFpbGluZyBiaXQgbWFuaXB1bGF0aW9ucyAqLwogWEVOX0NQ VUZFQVRVUkUoVE9QT0VYVCwgICAgICAgMyozMisyMikgLyogICB0b3BvbG9neSBleHRlbnNpb25z IENQVUlEIGxlYWZzICovCi1YRU5fQ1BVRkVBVFVSRShEQkVYVCwgICAgICAgICAzKjMyKzI2KSAv KiAgIGRhdGEgYnJlYWtwb2ludCBleHRlbnNpb24gKi8KK1hFTl9DUFVGRUFUVVJFKERCRVhULCAg ICAgICAgIDMqMzIrMjYpIC8qQSAgZGF0YSBicmVha3BvaW50IGV4dGVuc2lvbiAqLwogWEVOX0NQ VUZFQVRVUkUoTU9OSVRPUlgsICAgICAgMyozMisyOSkgLyogICBNT05JVE9SIGV4dGVuc2lvbiAo TU9OSVRPUlgvTVdBSVRYKSAqLwogCiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BV SUQgbGV2ZWwgMHgwMDAwMDAwRDoxLmVheCwgd29yZCA0ICovCi1YRU5fQ1BVRkVBVFVSRShYU0FW RU9QVCwgICAgICA0KjMyKyAwKSAvKiAgIFhTQVZFT1BUIGluc3RydWN0aW9uICovCi1YRU5fQ1BV RkVBVFVSRShYU0FWRUMsICAgICAgICA0KjMyKyAxKSAvKiAgIFhTQVZFQy9YUlNUT1JDIGluc3Ry dWN0aW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoWEdFVEJWMSwgICAgICAgNCozMisgMikgLyogICBY R0VUQlYgd2l0aCAlZWN4PTEgKi8KLVhFTl9DUFVGRUFUVVJFKFhTQVZFUywgICAgICAgIDQqMzIr IDMpIC8qICAgWFNBVkVTL1hSU1RPUlMgaW5zdHJ1Y3Rpb25zICovCitYRU5fQ1BVRkVBVFVSRShY U0FWRU9QVCwgICAgICA0KjMyKyAwKSAvKkEgIFhTQVZFT1BUIGluc3RydWN0aW9uICovCitYRU5f Q1BVRkVBVFVSRShYU0FWRUMsICAgICAgICA0KjMyKyAxKSAvKkEgIFhTQVZFQy9YUlNUT1JDIGlu c3RydWN0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoWEdFVEJWMSwgICAgICAgNCozMisgMikgLypB ICBYR0VUQlYgd2l0aCAlZWN4PTEgKi8KK1hFTl9DUFVGRUFUVVJFKFhTQVZFUywgICAgICAgIDQq MzIrIDMpIC8qUyAgWFNBVkVTL1hSU1RPUlMgaW5zdHJ1Y3Rpb25zICovCiAKIC8qIEludGVsLWRl ZmluZWQgQ1BVIGZlYXR1cmVzLCBDUFVJRCBsZXZlbCAweDAwMDAwMDA3OjAuZWJ4LCB3b3JkIDUg Ki8KLVhFTl9DUFVGRUFUVVJFKEZTR1NCQVNFLCAgICAgIDUqMzIrIDApIC8qICAge1JELFdSfXtG UyxHU31CQVNFIGluc3RydWN0aW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoVFNDX0FESlVTVCwgICAg NSozMisgMSkgLyogICBUU0NfQURKVVNUIE1TUiBhdmFpbGFibGUgKi8KLVhFTl9DUFVGRUFUVVJF KEJNSTEsICAgICAgICAgIDUqMzIrIDMpIC8qICAgMXN0IGJpdCBtYW5pcHVsYXRpb24gZXh0ZW5z aW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoSExFLCAgICAgICAgICAgNSozMisgNCkgLyogICBIYXJk d2FyZSBMb2NrIEVsaXNpb24gKi8KLVhFTl9DUFVGRUFUVVJFKEFWWDIsICAgICAgICAgIDUqMzIr IDUpIC8qICAgQVZYMiBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKEZTR1NCQVNFLCAg ICAgIDUqMzIrIDApIC8qQSAge1JELFdSfXtGUyxHU31CQVNFIGluc3RydWN0aW9ucyAqLworWEVO X0NQVUZFQVRVUkUoVFNDX0FESlVTVCwgICAgNSozMisgMSkgLypTICBUU0NfQURKVVNUIE1TUiBh dmFpbGFibGUgKi8KK1hFTl9DUFVGRUFUVVJFKEJNSTEsICAgICAgICAgIDUqMzIrIDMpIC8qQSAg MXN0IGJpdCBtYW5pcHVsYXRpb24gZXh0ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoSExFLCAg ICAgICAgICAgNSozMisgNCkgLypBICBIYXJkd2FyZSBMb2NrIEVsaXNpb24gKi8KK1hFTl9DUFVG RUFUVVJFKEFWWDIsICAgICAgICAgIDUqMzIrIDUpIC8qQSAgQVZYMiBpbnN0cnVjdGlvbnMgKi8K IFhFTl9DUFVGRUFUVVJFKEZEUF9FWENQX09OTFksIDUqMzIrIDYpIC8qISAgeDg3IEZEUCBvbmx5 IHVwZGF0ZWQgb24gZXhjZXB0aW9uLiAqLwotWEVOX0NQVUZFQVRVUkUoU01FUCwgICAgICAgICAg NSozMisgNykgLyogICBTdXBlcnZpc29yIE1vZGUgRXhlY3V0aW9uIFByb3RlY3Rpb24gKi8KLVhF Tl9DUFVGRUFUVVJFKEJNSTIsICAgICAgICAgIDUqMzIrIDgpIC8qICAgMm5kIGJpdCBtYW5pcHVs YXRpb24gZXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoRVJNUywgICAgICAgICAgNSozMisg OSkgLyogICBFbmhhbmNlZCBSRVAgTU9WU0IvU1RPU0IgKi8KLVhFTl9DUFVGRUFUVVJFKElOVlBD SUQsICAgICAgIDUqMzIrMTApIC8qICAgSW52YWxpZGF0ZSBQcm9jZXNzIENvbnRleHQgSUQgKi8K LVhFTl9DUFVGRUFUVVJFKFJUTSwgICAgICAgICAgIDUqMzIrMTEpIC8qICAgUmVzdHJpY3RlZCBU cmFuc2FjdGlvbmFsIE1lbW9yeSAqLworWEVOX0NQVUZFQVRVUkUoU01FUCwgICAgICAgICAgNSoz MisgNykgLypTICBTdXBlcnZpc29yIE1vZGUgRXhlY3V0aW9uIFByb3RlY3Rpb24gKi8KK1hFTl9D UFVGRUFUVVJFKEJNSTIsICAgICAgICAgIDUqMzIrIDgpIC8qQSAgMm5kIGJpdCBtYW5pcHVsYXRp b24gZXh0ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoRVJNUywgICAgICAgICAgNSozMisgOSkg LypBICBFbmhhbmNlZCBSRVAgTU9WU0IvU1RPU0IgKi8KK1hFTl9DUFVGRUFUVVJFKElOVlBDSUQs ICAgICAgIDUqMzIrMTApIC8qSCAgSW52YWxpZGF0ZSBQcm9jZXNzIENvbnRleHQgSUQgKi8KK1hF Tl9DUFVGRUFUVVJFKFJUTSwgICAgICAgICAgIDUqMzIrMTEpIC8qQSAgUmVzdHJpY3RlZCBUcmFu c2FjdGlvbmFsIE1lbW9yeSAqLwogWEVOX0NQVUZFQVRVUkUoUFFNLCAgICAgICAgICAgNSozMisx MikgLyogICBQbGF0Zm9ybSBRb1MgTW9uaXRvcmluZyAqLwogWEVOX0NQVUZFQVRVUkUoTk9fRlBV X1NFTCwgICAgNSozMisxMykgLyohICBGUFUgQ1MvRFMgc3RvcmVkIGFzIHplcm8gKi8KLVhFTl9D UFVGRUFUVVJFKE1QWCwgICAgICAgICAgIDUqMzIrMTQpIC8qICAgTWVtb3J5IFByb3RlY3Rpb24g RXh0ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoTVBYLCAgICAgICAgICAgNSozMisxNCkgLypT ICBNZW1vcnkgUHJvdGVjdGlvbiBFeHRlbnNpb25zICovCiBYRU5fQ1BVRkVBVFVSRShQUUUsICAg ICAgICAgICA1KjMyKzE1KSAvKiAgIFBsYXRmb3JtIFFvUyBFbmZvcmNlbWVudCAqLwotWEVOX0NQ VUZFQVRVUkUoUkRTRUVELCAgICAgICAgNSozMisxOCkgLyogICBSRFNFRUQgaW5zdHJ1Y3Rpb24g Ki8KLVhFTl9DUFVGRUFUVVJFKEFEWCwgICAgICAgICAgIDUqMzIrMTkpIC8qICAgQURDWCwgQURP WCBpbnN0cnVjdGlvbnMgKi8KLVhFTl9DUFVGRUFUVVJFKFNNQVAsICAgICAgICAgIDUqMzIrMjAp IC8qICAgU3VwZXJ2aXNvciBNb2RlIEFjY2VzcyBQcmV2ZW50aW9uICovCi1YRU5fQ1BVRkVBVFVS RShQQ09NTUlULCAgICAgICA1KjMyKzIyKSAvKiAgIFBDT01NSVQgaW5zdHJ1Y3Rpb24gKi8KLVhF Tl9DUFVGRUFUVVJFKENMRkxVU0hPUFQsICAgIDUqMzIrMjMpIC8qICAgQ0xGTFVTSE9QVCBpbnN0 cnVjdGlvbiAqLwotWEVOX0NQVUZFQVRVUkUoQ0xXQiwgICAgICAgICAgNSozMisyNCkgLyogICBD TFdCIGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShTSEEsICAgICAgICAgICA1KjMyKzI5 KSAvKiAgIFNIQTEgJiBTSEEyNTYgaW5zdHJ1Y3Rpb25zICovCitYRU5fQ1BVRkVBVFVSRShSRFNF RUQsICAgICAgICA1KjMyKzE4KSAvKkEgIFJEU0VFRCBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZF QVRVUkUoQURYLCAgICAgICAgICAgNSozMisxOSkgLypBICBBRENYLCBBRE9YIGluc3RydWN0aW9u cyAqLworWEVOX0NQVUZFQVRVUkUoU01BUCwgICAgICAgICAgNSozMisyMCkgLypTICBTdXBlcnZp c29yIE1vZGUgQWNjZXNzIFByZXZlbnRpb24gKi8KK1hFTl9DUFVGRUFUVVJFKFBDT01NSVQsICAg ICAgIDUqMzIrMjIpIC8qQSAgUENPTU1JVCBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUo Q0xGTFVTSE9QVCwgICAgNSozMisyMykgLypBICBDTEZMVVNIT1BUIGluc3RydWN0aW9uICovCitY RU5fQ1BVRkVBVFVSRShDTFdCLCAgICAgICAgICA1KjMyKzI0KSAvKkEgIENMV0IgaW5zdHJ1Y3Rp b24gKi8KK1hFTl9DUFVGRUFUVVJFKFNIQSwgICAgICAgICAgIDUqMzIrMjkpIC8qQSAgU0hBMSAm IFNIQTI1NiBpbnN0cnVjdGlvbnMgKi8KIAogLyogSW50ZWwtZGVmaW5lZCBDUFUgZmVhdHVyZXMs IENQVUlEIGxldmVsIDB4MDAwMDAwMDc6MC5lY3gsIHdvcmQgNiAqLwotWEVOX0NQVUZFQVRVUkUo UFJFRkVUQ0hXVDEsICAgNiozMisgMCkgLyogICBQUkVGRVRDSFdUMSBpbnN0cnVjdGlvbiAqLwot WEVOX0NQVUZFQVRVUkUoUEtVLCAgICAgICAgICAgNiozMisgMykgLyogICBQcm90ZWN0aW9uIEtl eXMgZm9yIFVzZXJzcGFjZSAqLworWEVOX0NQVUZFQVRVUkUoUFJFRkVUQ0hXVDEsICAgNiozMisg MCkgLypBICBQUkVGRVRDSFdUMSBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUEtVLCAg ICAgICAgICAgNiozMisgMykgLypIICBQcm90ZWN0aW9uIEtleXMgZm9yIFVzZXJzcGFjZSAqLwog WEVOX0NQVUZFQVRVUkUoT1NQS0UsICAgICAgICAgNiozMisgNCkgLyohICBPUyBQcm90ZWN0aW9u IEtleXMgRW5hYmxlICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2 ZWwgMHg4MDAwMDAwNy5lZHgsIHdvcmQgNyAqLwpAQCAtMjE3LDcgKzIyMyw3IEBAIFhFTl9DUFVG RUFUVVJFKElUU0MsICAgICAgICAgIDcqMzIrIDgpIC8qICAgSW52YXJpYW50IFRTQyAqLwogWEVO X0NQVUZFQVRVUkUoRUZSTywgICAgICAgICAgNyozMisxMCkgLyogICBBUEVSRi9NUEVSRiBSZWFk IE9ubHkgaW50ZXJmYWNlICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQg bGV2ZWwgMHg4MDAwMDAwOC5lYngsIHdvcmQgOCAqLwotWEVOX0NQVUZFQVRVUkUoQ0xaRVJPLCAg ICAgICAgOCozMisgMCkgLyogICBDTFpFUk8gaW5zdHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJF KENMWkVSTywgICAgICAgIDgqMzIrIDApIC8qQSAgQ0xaRVJPIGluc3RydWN0aW9uICovCiAKICNl bmRpZiAvKiBYRU5fQ1BVRkVBVFVSRSAqLwogCmRpZmYgLS1naXQgYS94ZW4vdG9vbHMvZ2VuLWNw dWlkLnB5IGIveGVuL3Rvb2xzL2dlbi1jcHVpZC5weQppbmRleCA0NmVmNmQxLi5mOTcxYWIyIDEw MDc1NQotLS0gYS94ZW4vdG9vbHMvZ2VuLWNwdWlkLnB5CisrKyBiL3hlbi90b29scy9nZW4tY3B1 aWQucHkKQEAgLTE3LDEyICsxNywxOCBAQCBjbGFzcyBTdGF0ZShvYmplY3QpOgogICAgICAgICAj IFN0YXRlIHBhcnNlZCBmcm9tIGlucHV0CiAgICAgICAgIHNlbGYubmFtZXMgPSB7fSAjIE5hbWUg PT4gdmFsdWUgbWFwcGluZwogICAgICAgICBzZWxmLnJhd19zcGVjaWFsID0gc2V0KCkKKyAgICAg ICAgc2VsZi5yYXdfcHYgPSBzZXQoKQorICAgICAgICBzZWxmLnJhd19odm1fc2hhZG93ID0gc2V0 KCkKKyAgICAgICAgc2VsZi5yYXdfaHZtX2hhcCA9IHNldCgpCiAKICAgICAgICAgIyBTdGF0ZSBj YWxjdWxhdGVkCiAgICAgICAgIHNlbGYubnJfZW50cmllcyA9IDAgIyBOdW1iZXIgb2Ygd29yZHMg aW4gYSBmZWF0dXJlc2V0CiAgICAgICAgIHNlbGYuY29tbW9uXzFkID0gMCAjIENvbW1vbiBmZWF0 dXJlcyBiZXR3ZWVuIDFkIGFuZCBlMWQKICAgICAgICAgc2VsZi5rbm93biA9IFtdICMgQWxsIGtu b3duIGZlYXR1cmVzCiAgICAgICAgIHNlbGYuc3BlY2lhbCA9IFtdICMgRmVhdHVyZXMgd2l0aCBz cGVjaWFsIHNlbWFudGljcworICAgICAgICBzZWxmLnB2ID0gW10KKyAgICAgICAgc2VsZi5odm1f c2hhZG93ID0gW10KKyAgICAgICAgc2VsZi5odm1faGFwID0gW10KIAogZGVmIHBhcnNlX2RlZmlu aXRpb25zKHN0YXRlKToKICAgICAiIiIKQEAgLTMyLDcgKzM4LDcgQEAgZGVmIHBhcnNlX2RlZmlu aXRpb25zKHN0YXRlKToKICAgICBmZWF0X3JlZ2V4ID0gcmUuY29tcGlsZSgKICAgICAgICAgciJe WEVOX0NQVUZFQVRVUkVcKChbQS1aMC05X10rKSwiCiAgICAgICAgICJccysoW1xzXGRdK1wqW1xz XGRdK1wrW1xzXGRdKylcKSIKLSAgICAgICAgIlxzKy9cKihbIV0qKSAuKiQiKQorICAgICAgICAi XHMrL1wqKFtcdyFdKikgLiokIikKIAogICAgIHRoaXMgPSBzeXMubW9kdWxlc1tfX25hbWVfX10K IApAQCAtNzIsNiArNzgsMTYgQEAgZGVmIHBhcnNlX2RlZmluaXRpb25zKHN0YXRlKToKIAogICAg ICAgICAgICAgaWYgYSA9PSAiISI6CiAgICAgICAgICAgICAgICAgc3RhdGUucmF3X3NwZWNpYWwu YWRkKHZhbCkKKyAgICAgICAgICAgIGVsaWYgYSBpbiAiQVNIIjoKKyAgICAgICAgICAgICAgICBp ZiBhID09ICJBIjoKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X3B2LmFkZCh2YWwpCisg ICAgICAgICAgICAgICAgICAgIHN0YXRlLnJhd19odm1fc2hhZG93LmFkZCh2YWwpCisgICAgICAg ICAgICAgICAgICAgIHN0YXRlLnJhd19odm1faGFwLmFkZCh2YWwpCisgICAgICAgICAgICAgICAg ZWxpZiBhdHRyID09ICJTIjoKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X2h2bV9zaGFk b3cuYWRkKHZhbCkKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X2h2bV9oYXAuYWRkKHZh bCkKKyAgICAgICAgICAgICAgICBlbGlmIGF0dHIgPT0gIkgiOgorICAgICAgICAgICAgICAgICAg ICBzdGF0ZS5yYXdfaHZtX2hhcC5hZGQodmFsKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAg ICAgICAgICByYWlzZSBGYWlsKCJVbnJlY29nbmlzZWQgYXR0cmlidXRlICclcycgZm9yICVzIiAl IChhLCBuYW1lKSkKIApAQCAtMTI0LDYgKzE0MCw5IEBAIGRlZiBjcnVuY2hfbnVtYmVycyhzdGF0 ZSk6CiAKICAgICBzdGF0ZS5jb21tb25fMWQgPSBmZWF0dXJlc2V0X3RvX3VpbnQzMnMoY29tbW9u XzFkLCAxKVswXQogICAgIHN0YXRlLnNwZWNpYWwgPSBmZWF0dXJlc2V0X3RvX3VpbnQzMnMoc3Rh dGUucmF3X3NwZWNpYWwsIG5yX2VudHJpZXMpCisgICAgc3RhdGUucHYgPSBmZWF0dXJlc2V0X3Rv X3VpbnQzMnMoc3RhdGUucmF3X3B2LCBucl9lbnRyaWVzKQorICAgIHN0YXRlLmh2bV9zaGFkb3cg PSBmZWF0dXJlc2V0X3RvX3VpbnQzMnMoc3RhdGUucmF3X2h2bV9zaGFkb3csIG5yX2VudHJpZXMp CisgICAgc3RhdGUuaHZtX2hhcCA9IGZlYXR1cmVzZXRfdG9fdWludDMycyhzdGF0ZS5yYXdfaHZt X2hhcCwgbnJfZW50cmllcykKIAogCiBkZWYgd3JpdGVfcmVzdWx0cyhzdGF0ZSk6CkBAIC0xNDQs MTEgKzE2MywyMCBAQCBkZWYgd3JpdGVfcmVzdWx0cyhzdGF0ZSk6CiAKICNkZWZpbmUgSU5JVF9L Tk9XTl9GRUFUVVJFUyB7IFxcXG4lc1xufSAKIAotI2RlZmluZSBJTklUX1NQRUNJQUxfRkVBVFVS RVMgeyBcXFxuJXNcbn0gCisjZGVmaW5lIElOSVRfU1BFQ0lBTF9GRUFUVVJFUyB7IFxcXG4lc1xu fQorCisjZGVmaW5lIElOSVRfUFZfRkVBVFVSRVMgeyBcXFxuJXNcbn0KKworI2RlZmluZSBJTklU X0hWTV9TSEFET1dfRkVBVFVSRVMgeyBcXFxuJXNcbn0KKworI2RlZmluZSBJTklUX0hWTV9IQVBf RkVBVFVSRVMgeyBcXFxuJXNcbn0KICIiIiAlIChzdGF0ZS5ucl9lbnRyaWVzLAogICAgICAgIHN0 YXRlLmNvbW1vbl8xZCwKICAgICAgICBmb3JtYXRfdWludDMycyhzdGF0ZS5rbm93biwgNCksCiAg ICAgICAgZm9ybWF0X3VpbnQzMnMoc3RhdGUuc3BlY2lhbCwgNCksCisgICAgICAgZm9ybWF0X3Vp bnQzMnMoc3RhdGUucHYsIDQpLAorICAgICAgIGZvcm1hdF91aW50MzJzKHN0YXRlLmh2bV9zaGFk b3csIDQpLAorICAgICAgIGZvcm1hdF91aW50MzJzKHN0YXRlLmh2bV9oYXAsIDQpLAogICAgICAg ICkpCiAKICAgICBzdGF0ZS5vdXRwdXQud3JpdGUoCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QK WGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==