From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v3 08/28] xen/x86: Annotate VM applicability in featureset Date: Tue, 15 Mar 2016 15:35:04 +0000 Message-ID: <1458056124-8024-9-git-send-email-andrew.cooper3@citrix.com> References: <1458056124-8024-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: <1458056124-8024-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 SEFQIGd1ZXN0cwoKVGhlcmUgaXMgbm8gY3VycmVudCBuZWVkIGZvciBvdGhlciBjYXRlZ29yaWVz IChlLmcuIFBWLW9ubHkgZmVhdHVyZXMpLCBhbmQKc3VjaCBjYXRlZ29yaWVzIHNob3VkIG5vdCBi ZSBpbnRyb2R1Y2VkIGlmIHBvc3NpYmxlLiAgVGhlc2UgY2F0ZWdvcmllcyBmb2xsb3cKZnJvbSB0 aGUgZmFjdCB0aGF0LCB3aXRoIGluY3JlYXNlZCBoYXJkd2FyZSBzdXBwb3J0LCBhIGd1ZXN0IGdl dHMgbW9yZQpmZWF0dXJlcyB0byB1c2UuCgpUaGVzZSBzZXR0aW5ncyBhcmUgZGVyaXZlZCBmcm9t IHRoZSBleGlzdGluZyBjb2RlIGluIHtwdixodm19X2NwdWlkKCksIGFuZAp4Y19jcHVpZF94ODYu Yy4gIE9uZSBub3RhYmxlIGV4Y2V0cGlvbiBpcyBFWFRBUElDIHdoaWNoIHdhcyBwcmV2aW91c2x5 CmVycm9uaW91c2x5IGV4cG9zZWQgdG8gZ3Vlc3RzLiAgUFYgZ3Vlc3RzIGRvbid0IGdldCB0byB1 c2UgdGhlIEFQSUMgYW5kIHRoZQpIVk0gQVBJQyBlbXVsYXRpb24gZG9lc24ndCBzdXBwb3J0IGV4 dGVuZGVkIHNwYWNlLgoKU2lnbmVkLW9mZi1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3Bl cjNAY2l0cml4LmNvbT4KLS0tCkNDOiBKYW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5jb20+Cgp2 MzoKICogUmViYXNlIG92ZXIgdGhlIG5ldyBuYW1lc3BhY2VpbmcgY2hhbmdlcy4KICogRXhwYW5k IGNvbW1pdCBtZXNzYWdlLgogKiBDb3JyZWN0IFBTRTM2IHRvIGJlaW5nIGEgSEFQLW9ubHkgZmVh dHVyZS4KCnYyOgogKiBBbm5vdGF0ZSBmZWF0dXJlcyB1c2luZyBhIG1hZ2ljIGNvbW1lbnQgYW5k IGF1dG9nZW5lcmF0aW9uLgotLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0 dXJlc2V0LmggfCAxODcgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogeGVuL3Rvb2xzL2dl bi1jcHVpZC5weSAgICAgICAgICAgICAgICAgICAgICB8ICAzMCArKysrLQogMiBmaWxlcyBjaGFu Z2VkLCAxMjUgaW5zZXJ0aW9ucygrKSwgOTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVu L2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQuaCBiL3hlbi9pbmNsdWRlL3B1 YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKaW5kZXggOTM4OWVkOS4uMmExM2UwYyAxMDA2 NDQKLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQuaAorKysg Yi94ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1ZmVhdHVyZXNldC5oCkBAIC05MSwxMzUg KzkxLDE0MCBAQCBlbnVtIHsKICAqICAgVGhpcyBiaXQgaGFzIHNwZWNpYWwgcHJvcGVydGllcyBh bmQgaXMgbm90IGEgc3RyYWlnaHQgaW5kaWNhdGlvbiBvZiBhCiAgKiAgIHBpZWNlIG9mIG5ldyBm dW5jdGlvbmFsaXR5LiAgWGVuIHdpbGwgaGFuZGxlIHRoZXNlIGRpZmZlcmVudGx5LAogICogICBh bmQgbWF5IG92ZXJyaWRlIHRvb2xzdGFjayBzZXR0aW5ncyBjb21wbGV0ZWx5LgorICoKKyAqIEFw cGxpY2FiaWxpdHkgdG8gZ3Vlc3RzOiAnQScsICdTJyBvciAnSCcKKyAqICAgJ0EnID0gQWxsIGd1 ZXN0cy4KKyAqICAgJ1MnID0gQWxsIEhWTSBndWVzdHMgKG5vdCBQViBndWVzdHMpLgorICogICAn SCcgPSBIVk0gSEFQIGd1ZXN0cyAobm90IFBWIG9yIEhWTSBTaGFkb3cgZ3Vlc3RzKS4KICAqLwog CiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHgwMDAwMDAwMS5l ZHgsIHdvcmQgMCAqLwotWEVOX0NQVUZFQVRVUkUoRlBVLCAgICAgICAgICAgMCozMisgMCkgLyog ICBPbmJvYXJkIEZQVSAqLwotWEVOX0NQVUZFQVRVUkUoVk1FLCAgICAgICAgICAgMCozMisgMSkg LyogICBWaXJ0dWFsIE1vZGUgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoREUsICAgICAg ICAgICAgMCozMisgMikgLyogICBEZWJ1Z2dpbmcgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRV UkUoUFNFLCAgICAgICAgICAgMCozMisgMykgLyogICBQYWdlIFNpemUgRXh0ZW5zaW9ucyAqLwot WEVOX0NQVUZFQVRVUkUoVFNDLCAgICAgICAgICAgMCozMisgNCkgLyogICBUaW1lIFN0YW1wIENv dW50ZXIgKi8KLVhFTl9DUFVGRUFUVVJFKE1TUiwgICAgICAgICAgIDAqMzIrIDUpIC8qICAgTW9k ZWwtU3BlY2lmaWMgUmVnaXN0ZXJzLCBSRE1TUiwgV1JNU1IgKi8KLVhFTl9DUFVGRUFUVVJFKFBB RSwgICAgICAgICAgIDAqMzIrIDYpIC8qICAgUGh5c2ljYWwgQWRkcmVzcyBFeHRlbnNpb25zICov Ci1YRU5fQ1BVRkVBVFVSRShNQ0UsICAgICAgICAgICAwKjMyKyA3KSAvKiAgIE1hY2hpbmUgQ2hl Y2sgQXJjaGl0ZWN0dXJlICovCi1YRU5fQ1BVRkVBVFVSRShDWDgsICAgICAgICAgICAwKjMyKyA4 KSAvKiAgIENNUFhDSEc4IGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShBUElDLCAgICAg ICAgICAwKjMyKyA5KSAvKiEgIE9uYm9hcmQgQVBJQyAqLwotWEVOX0NQVUZFQVRVUkUoU0VQLCAg ICAgICAgICAgMCozMisxMSkgLyogICBTWVNFTlRFUi9TWVNFWElUICovCi1YRU5fQ1BVRkVBVFVS RShNVFJSLCAgICAgICAgICAwKjMyKzEyKSAvKiAgIE1lbW9yeSBUeXBlIFJhbmdlIFJlZ2lzdGVy cyAqLwotWEVOX0NQVUZFQVRVUkUoUEdFLCAgICAgICAgICAgMCozMisxMykgLyogICBQYWdlIEds b2JhbCBFbmFibGUgKi8KLVhFTl9DUFVGRUFUVVJFKE1DQSwgICAgICAgICAgIDAqMzIrMTQpIC8q ICAgTWFjaGluZSBDaGVjayBBcmNoaXRlY3R1cmUgKi8KLVhFTl9DUFVGRUFUVVJFKENNT1YsICAg ICAgICAgIDAqMzIrMTUpIC8qICAgQ01PViBpbnN0cnVjdGlvbiAoRkNNT1ZDQyBhbmQgRkNPTUkg dG9vIGlmIEZQVSBwcmVzZW50KSAqLwotWEVOX0NQVUZFQVRVUkUoUEFULCAgICAgICAgICAgMCoz MisxNikgLyogICBQYWdlIEF0dHJpYnV0ZSBUYWJsZSAqLwotWEVOX0NQVUZFQVRVUkUoUFNFMzYs ICAgICAgICAgMCozMisxNykgLyogICAzNi1iaXQgUFNFcyAqLwotWEVOX0NQVUZFQVRVUkUoQ0xG TFVTSCwgICAgICAgMCozMisxOSkgLyogICBDTEZMVVNIIGluc3RydWN0aW9uICovCitYRU5fQ1BV RkVBVFVSRShGUFUsICAgICAgICAgICAwKjMyKyAwKSAvKkEgIE9uYm9hcmQgRlBVICovCitYRU5f Q1BVRkVBVFVSRShWTUUsICAgICAgICAgICAwKjMyKyAxKSAvKlMgIFZpcnR1YWwgTW9kZSBFeHRl bnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShERSwgICAgICAgICAgICAwKjMyKyAyKSAvKkEgIERl YnVnZ2luZyBFeHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShQU0UsICAgICAgICAgICAwKjMy KyAzKSAvKlMgIFBhZ2UgU2l6ZSBFeHRlbnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShUU0MsICAg ICAgICAgICAwKjMyKyA0KSAvKkEgIFRpbWUgU3RhbXAgQ291bnRlciAqLworWEVOX0NQVUZFQVRV UkUoTVNSLCAgICAgICAgICAgMCozMisgNSkgLypBICBNb2RlbC1TcGVjaWZpYyBSZWdpc3RlcnMs IFJETVNSLCBXUk1TUiAqLworWEVOX0NQVUZFQVRVUkUoUEFFLCAgICAgICAgICAgMCozMisgNikg LypBICBQaHlzaWNhbCBBZGRyZXNzIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKE1DRSwg ICAgICAgICAgIDAqMzIrIDcpIC8qQSAgTWFjaGluZSBDaGVjayBBcmNoaXRlY3R1cmUgKi8KK1hF Tl9DUFVGRUFUVVJFKENYOCwgICAgICAgICAgIDAqMzIrIDgpIC8qQSAgQ01QWENIRzggaW5zdHJ1 Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKEFQSUMsICAgICAgICAgIDAqMzIrIDkpIC8qIUEgT25i b2FyZCBBUElDICovCitYRU5fQ1BVRkVBVFVSRShTRVAsICAgICAgICAgICAwKjMyKzExKSAvKkEg IFNZU0VOVEVSL1NZU0VYSVQgKi8KK1hFTl9DUFVGRUFUVVJFKE1UUlIsICAgICAgICAgIDAqMzIr MTIpIC8qUyAgTWVtb3J5IFR5cGUgUmFuZ2UgUmVnaXN0ZXJzICovCitYRU5fQ1BVRkVBVFVSRShQ R0UsICAgICAgICAgICAwKjMyKzEzKSAvKlMgIFBhZ2UgR2xvYmFsIEVuYWJsZSAqLworWEVOX0NQ VUZFQVRVUkUoTUNBLCAgICAgICAgICAgMCozMisxNCkgLypBICBNYWNoaW5lIENoZWNrIEFyY2hp dGVjdHVyZSAqLworWEVOX0NQVUZFQVRVUkUoQ01PViwgICAgICAgICAgMCozMisxNSkgLypBICBD TU9WIGluc3RydWN0aW9uIChGQ01PVkNDIGFuZCBGQ09NSSB0b28gaWYgRlBVIHByZXNlbnQpICov CitYRU5fQ1BVRkVBVFVSRShQQVQsICAgICAgICAgICAwKjMyKzE2KSAvKkEgIFBhZ2UgQXR0cmli dXRlIFRhYmxlICovCitYRU5fQ1BVRkVBVFVSRShQU0UzNiwgICAgICAgICAwKjMyKzE3KSAvKkgg IDM2LWJpdCBQU0VzICovCitYRU5fQ1BVRkVBVFVSRShDTEZMVVNILCAgICAgICAwKjMyKzE5KSAv KkEgIENMRkxVU0ggaW5zdHJ1Y3Rpb24gKi8KIFhFTl9DUFVGRUFUVVJFKERTLCAgICAgICAgICAg IDAqMzIrMjEpIC8qICAgRGVidWcgU3RvcmUgKi8KLVhFTl9DUFVGRUFUVVJFKEFDUEksICAgICAg ICAgIDAqMzIrMjIpIC8qICAgQUNQSSB2aWEgTVNSICovCi1YRU5fQ1BVRkVBVFVSRShNTVgsICAg ICAgICAgICAwKjMyKzIzKSAvKiAgIE11bHRpbWVkaWEgRXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZF QVRVUkUoRlhTUiwgICAgICAgICAgMCozMisyNCkgLyogICBGWFNBVkUgYW5kIEZYUlNUT1IgaW5z dHJ1Y3Rpb25zICovCi1YRU5fQ1BVRkVBVFVSRShTU0UsICAgICAgICAgICAwKjMyKzI1KSAvKiAg IFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMgKi8KLVhFTl9DUFVGRUFUVVJFKFNTRTIsICAgICAg ICAgIDAqMzIrMjYpIC8qICAgU3RyZWFtaW5nIFNJTUQgRXh0ZW5zaW9ucy0yICovCi1YRU5fQ1BV RkVBVFVSRShIVFQsICAgICAgICAgICAwKjMyKzI4KSAvKiEgIEh5cGVyLVRocmVhZGluZyBUZWNo bm9sb2d5ICovCitYRU5fQ1BVRkVBVFVSRShBQ1BJLCAgICAgICAgICAwKjMyKzIyKSAvKkEgIEFD UEkgdmlhIE1TUiAqLworWEVOX0NQVUZFQVRVUkUoTU1YLCAgICAgICAgICAgMCozMisyMykgLypB ICBNdWx0aW1lZGlhIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKEZYU1IsICAgICAgICAg IDAqMzIrMjQpIC8qQSAgRlhTQVZFIGFuZCBGWFJTVE9SIGluc3RydWN0aW9ucyAqLworWEVOX0NQ VUZFQVRVUkUoU1NFLCAgICAgICAgICAgMCozMisyNSkgLypBICBTdHJlYW1pbmcgU0lNRCBFeHRl bnNpb25zICovCitYRU5fQ1BVRkVBVFVSRShTU0UyLCAgICAgICAgICAwKjMyKzI2KSAvKkEgIFN0 cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMtMiAqLworWEVOX0NQVUZFQVRVUkUoSFRULCAgICAgICAg ICAgMCozMisyOCkgLyohQSBIeXBlci1UaHJlYWRpbmcgVGVjaG5vbG9neSAqLwogWEVOX0NQVUZF QVRVUkUoVE0xLCAgICAgICAgICAgMCozMisyOSkgLyogICBUaGVybWFsIE1vbml0b3IgMSAqLwog WEVOX0NQVUZFQVRVUkUoUEJFLCAgICAgICAgICAgMCozMiszMSkgLyogICBQZW5kaW5nIEJyZWFr IEVuYWJsZSAqLwogCiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwg MHgwMDAwMDAwMS5lY3gsIHdvcmQgMSAqLwotWEVOX0NQVUZFQVRVUkUoU1NFMywgICAgICAgICAg MSozMisgMCkgLyogICBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zLTMgKi8KLVhFTl9DUFVGRUFU VVJFKFBDTE1VTFFEUSwgICAgIDEqMzIrIDEpIC8qICAgQ2FycnktbGVzcyBtdWxpdHBsaWNhdGlv biAqLworWEVOX0NQVUZFQVRVUkUoU1NFMywgICAgICAgICAgMSozMisgMCkgLypBICBTdHJlYW1p bmcgU0lNRCBFeHRlbnNpb25zLTMgKi8KK1hFTl9DUFVGRUFUVVJFKFBDTE1VTFFEUSwgICAgIDEq MzIrIDEpIC8qQSAgQ2FycnktbGVzcyBtdWxpdHBsaWNhdGlvbiAqLwogWEVOX0NQVUZFQVRVUkUo RFRFUzY0LCAgICAgICAgMSozMisgMikgLyogICA2NC1iaXQgRGVidWcgU3RvcmUgKi8KIFhFTl9D UFVGRUFUVVJFKE1PTklUT1IsICAgICAgIDEqMzIrIDMpIC8qICAgTW9uaXRvci9Nd2FpdCBzdXBw b3J0ICovCiBYRU5fQ1BVRkVBVFVSRShEU0NQTCwgICAgICAgICAxKjMyKyA0KSAvKiAgIENQTCBR dWFsaWZpZWQgRGVidWcgU3RvcmUgKi8KLVhFTl9DUFVGRUFUVVJFKFZNWCwgICAgICAgICAgIDEq MzIrIDUpIC8qICAgVmlydHVhbCBNYWNoaW5lIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFUVVJF KFZNWCwgICAgICAgICAgIDEqMzIrIDUpIC8qUyAgVmlydHVhbCBNYWNoaW5lIEV4dGVuc2lvbnMg Ki8KIFhFTl9DUFVGRUFUVVJFKFNNWCwgICAgICAgICAgIDEqMzIrIDYpIC8qICAgU2FmZXIgTW9k ZSBFeHRlbnNpb25zICovCiBYRU5fQ1BVRkVBVFVSRShFSVNULCAgICAgICAgICAxKjMyKyA3KSAv KiAgIEVuaGFuY2VkIFNwZWVkU3RlcCAqLwogWEVOX0NQVUZFQVRVUkUoVE0yLCAgICAgICAgICAg MSozMisgOCkgLyogICBUaGVybWFsIE1vbml0b3IgMiAqLwotWEVOX0NQVUZFQVRVUkUoU1NTRTMs ICAgICAgICAgMSozMisgOSkgLyogICBTdXBwbGVtZW50YWwgU3RyZWFtaW5nIFNJTUQgRXh0ZW5z aW9ucy0zICovCi1YRU5fQ1BVRkVBVFVSRShGTUEsICAgICAgICAgICAxKjMyKzEyKSAvKiAgIEZ1 c2VkIE11bHRpcGx5IEFkZCAqLwotWEVOX0NQVUZFQVRVUkUoQ1gxNiwgICAgICAgICAgMSozMisx MykgLyogICBDTVBYQ0hHMTZCICovCitYRU5fQ1BVRkVBVFVSRShTU1NFMywgICAgICAgICAxKjMy KyA5KSAvKkEgIFN1cHBsZW1lbnRhbCBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zLTMgKi8KK1hF Tl9DUFVGRUFUVVJFKEZNQSwgICAgICAgICAgIDEqMzIrMTIpIC8qQSAgRnVzZWQgTXVsdGlwbHkg QWRkICovCitYRU5fQ1BVRkVBVFVSRShDWDE2LCAgICAgICAgICAxKjMyKzEzKSAvKkEgIENNUFhD SEcxNkIgKi8KIFhFTl9DUFVGRUFUVVJFKFhUUFIsICAgICAgICAgIDEqMzIrMTQpIC8qICAgU2Vu ZCBUYXNrIFByaW9yaXR5IE1lc3NhZ2VzICovCiBYRU5fQ1BVRkVBVFVSRShQRENNLCAgICAgICAg ICAxKjMyKzE1KSAvKiAgIFBlcmYvRGVidWcgQ2FwYWJpbGl0eSBNU1IgKi8KLVhFTl9DUFVGRUFU VVJFKFBDSUQsICAgICAgICAgIDEqMzIrMTcpIC8qICAgUHJvY2VzcyBDb250ZXh0IElEICovCitY RU5fQ1BVRkVBVFVSRShQQ0lELCAgICAgICAgICAxKjMyKzE3KSAvKkggIFByb2Nlc3MgQ29udGV4 dCBJRCAqLwogWEVOX0NQVUZFQVRVUkUoRENBLCAgICAgICAgICAgMSozMisxOCkgLyogICBEaXJl Y3QgQ2FjaGUgQWNjZXNzICovCi1YRU5fQ1BVRkVBVFVSRShTU0U0XzEsICAgICAgICAxKjMyKzE5 KSAvKiAgIFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMgNC4xICovCi1YRU5fQ1BVRkVBVFVSRShT U0U0XzIsICAgICAgICAxKjMyKzIwKSAvKiAgIFN0cmVhbWluZyBTSU1EIEV4dGVuc2lvbnMgNC4y ICovCi1YRU5fQ1BVRkVBVFVSRShYMkFQSUMsICAgICAgICAxKjMyKzIxKSAvKiAgIEV4dGVuZGVk IHhBUElDICovCi1YRU5fQ1BVRkVBVFVSRShNT1ZCRSwgICAgICAgICAxKjMyKzIyKSAvKiAgIG1v dmJlIGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShQT1BDTlQsICAgICAgICAxKjMyKzIz KSAvKiAgIFBPUENOVCBpbnN0cnVjdGlvbiAqLwotWEVOX0NQVUZFQVRVUkUoVFNDX0RFQURMSU5F LCAgMSozMisyNCkgLyogICBUU0MgRGVhZGxpbmUgVGltZXIgKi8KLVhFTl9DUFVGRUFUVVJFKEFF U05JLCAgICAgICAgIDEqMzIrMjUpIC8qICAgQUVTIGluc3RydWN0aW9ucyAqLwotWEVOX0NQVUZF QVRVUkUoWFNBVkUsICAgICAgICAgMSozMisyNikgLyogICBYU0FWRS9YUlNUT1IvWFNFVEJWL1hH RVRCViAqLworWEVOX0NQVUZFQVRVUkUoU1NFNF8xLCAgICAgICAgMSozMisxOSkgLypBICBTdHJl YW1pbmcgU0lNRCBFeHRlbnNpb25zIDQuMSAqLworWEVOX0NQVUZFQVRVUkUoU1NFNF8yLCAgICAg ICAgMSozMisyMCkgLypBICBTdHJlYW1pbmcgU0lNRCBFeHRlbnNpb25zIDQuMiAqLworWEVOX0NQ VUZFQVRVUkUoWDJBUElDLCAgICAgICAgMSozMisyMSkgLypBICBFeHRlbmRlZCB4QVBJQyAqLwor WEVOX0NQVUZFQVRVUkUoTU9WQkUsICAgICAgICAgMSozMisyMikgLypBICBtb3ZiZSBpbnN0cnVj dGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUE9QQ05ULCAgICAgICAgMSozMisyMykgLypBICBQT1BD TlQgaW5zdHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKFRTQ19ERUFETElORSwgIDEqMzIrMjQp IC8qUyAgVFNDIERlYWRsaW5lIFRpbWVyICovCitYRU5fQ1BVRkVBVFVSRShBRVNOSSwgICAgICAg ICAxKjMyKzI1KSAvKkEgIEFFUyBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKFhTQVZF LCAgICAgICAgIDEqMzIrMjYpIC8qQSAgWFNBVkUvWFJTVE9SL1hTRVRCVi9YR0VUQlYgKi8KIFhF Tl9DUFVGRUFUVVJFKE9TWFNBVkUsICAgICAgIDEqMzIrMjcpIC8qISAgT1NYU0FWRSAqLwotWEVO X0NQVUZFQVRVUkUoQVZYLCAgICAgICAgICAgMSozMisyOCkgLyogICBBZHZhbmNlZCBWZWN0b3Ig RXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoRjE2QywgICAgICAgICAgMSozMisyOSkgLyog ICBIYWxmLXByZWNpc2lvbiBjb252ZXJ0IGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShS RFJBTkQsICAgICAgICAxKjMyKzMwKSAvKiAgIERpZ2l0YWwgUmFuZG9tIE51bWJlciBHZW5lcmF0 b3IgKi8KLVhFTl9DUFVGRUFUVVJFKEhZUEVSVklTT1IsICAgIDEqMzIrMzEpIC8qICAgUnVubmlu ZyB1bmRlciBzb21lIGh5cGVydmlzb3IgKi8KK1hFTl9DUFVGRUFUVVJFKEFWWCwgICAgICAgICAg IDEqMzIrMjgpIC8qQSAgQWR2YW5jZWQgVmVjdG9yIEV4dGVuc2lvbnMgKi8KK1hFTl9DUFVGRUFU VVJFKEYxNkMsICAgICAgICAgIDEqMzIrMjkpIC8qQSAgSGFsZi1wcmVjaXNpb24gY29udmVydCBp bnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUkRSQU5ELCAgICAgICAgMSozMiszMCkgLypB ICBEaWdpdGFsIFJhbmRvbSBOdW1iZXIgR2VuZXJhdG9yICovCitYRU5fQ1BVRkVBVFVSRShIWVBF UlZJU09SLCAgICAxKjMyKzMxKSAvKkEgIFJ1bm5pbmcgdW5kZXIgc29tZSBoeXBlcnZpc29yICov CiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHg4MDAwMDAwMS5l ZHgsIHdvcmQgMiAqLwotWEVOX0NQVUZFQVRVUkUoU1lTQ0FMTCwgICAgICAgMiozMisxMSkgLyog ICBTWVNDQUxML1NZU1JFVCAqLwotWEVOX0NQVUZFQVRVUkUoTlgsICAgICAgICAgICAgMiozMisy MCkgLyogICBFeGVjdXRlIERpc2FibGUgKi8KLVhFTl9DUFVGRUFUVVJFKE1NWEVYVCwgICAgICAg IDIqMzIrMjIpIC8qICAgQU1EIE1NWCBleHRlbnNpb25zICovCi1YRU5fQ1BVRkVBVFVSRShGRlhT UiwgICAgICAgICAyKjMyKzI1KSAvKiAgIEZGWFNSIGluc3RydWN0aW9uIG9wdGltaXphdGlvbnMg Ki8KLVhFTl9DUFVGRUFUVVJFKFBBR0UxR0IsICAgICAgIDIqMzIrMjYpIC8qICAgMUdiIGxhcmdl IHBhZ2Ugc3VwcG9ydCAqLwotWEVOX0NQVUZFQVRVUkUoUkRUU0NQLCAgICAgICAgMiozMisyNykg LyogICBSRFRTQ1AgKi8KLVhFTl9DUFVGRUFUVVJFKExNLCAgICAgICAgICAgIDIqMzIrMjkpIC8q ICAgTG9uZyBNb2RlICh4ODYtNjQpICovCi1YRU5fQ1BVRkVBVFVSRSgzRE5PV0VYVCwgICAgICAy KjMyKzMwKSAvKiAgIEFNRCAzRE5vdyEgZXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoM0RO T1csICAgICAgICAgMiozMiszMSkgLyogICAzRE5vdyEgKi8KK1hFTl9DUFVGRUFUVVJFKFNZU0NB TEwsICAgICAgIDIqMzIrMTEpIC8qQSAgU1lTQ0FMTC9TWVNSRVQgKi8KK1hFTl9DUFVGRUFUVVJF KE5YLCAgICAgICAgICAgIDIqMzIrMjApIC8qQSAgRXhlY3V0ZSBEaXNhYmxlICovCitYRU5fQ1BV RkVBVFVSRShNTVhFWFQsICAgICAgICAyKjMyKzIyKSAvKkEgIEFNRCBNTVggZXh0ZW5zaW9ucyAq LworWEVOX0NQVUZFQVRVUkUoRkZYU1IsICAgICAgICAgMiozMisyNSkgLypBICBGRlhTUiBpbnN0 cnVjdGlvbiBvcHRpbWl6YXRpb25zICovCitYRU5fQ1BVRkVBVFVSRShQQUdFMUdCLCAgICAgICAy KjMyKzI2KSAvKkggIDFHYiBsYXJnZSBwYWdlIHN1cHBvcnQgKi8KK1hFTl9DUFVGRUFUVVJFKFJE VFNDUCwgICAgICAgIDIqMzIrMjcpIC8qUyAgUkRUU0NQICovCitYRU5fQ1BVRkVBVFVSRShMTSwg ICAgICAgICAgICAyKjMyKzI5KSAvKkEgIExvbmcgTW9kZSAoeDg2LTY0KSAqLworWEVOX0NQVUZF QVRVUkUoM0ROT1dFWFQsICAgICAgMiozMiszMCkgLypBICBBTUQgM0ROb3chIGV4dGVuc2lvbnMg Ki8KK1hFTl9DUFVGRUFUVVJFKDNETk9XLCAgICAgICAgIDIqMzIrMzEpIC8qQSAgM0ROb3chICov CiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHg4MDAwMDAwMS5l Y3gsIHdvcmQgMyAqLwotWEVOX0NQVUZFQVRVUkUoTEFIRl9MTSwgICAgICAgMyozMisgMCkgLyog ICBMQUhGL1NBSEYgaW4gbG9uZyBtb2RlICovCi1YRU5fQ1BVRkVBVFVSRShDTVBfTEVHQUNZLCAg ICAzKjMyKyAxKSAvKiEgIElmIHllcyBIeXBlclRocmVhZGluZyBub3QgdmFsaWQgKi8KLVhFTl9D UFVGRUFUVVJFKFNWTSwgICAgICAgICAgIDMqMzIrIDIpIC8qICAgU2VjdXJlIHZpcnR1YWwgbWFj aGluZSAqLworWEVOX0NQVUZFQVRVUkUoTEFIRl9MTSwgICAgICAgMyozMisgMCkgLypBICBMQUhG L1NBSEYgaW4gbG9uZyBtb2RlICovCitYRU5fQ1BVRkVBVFVSRShDTVBfTEVHQUNZLCAgICAzKjMy KyAxKSAvKiFBIElmIHllcyBIeXBlclRocmVhZGluZyBub3QgdmFsaWQgKi8KK1hFTl9DUFVGRUFU VVJFKFNWTSwgICAgICAgICAgIDMqMzIrIDIpIC8qUyAgU2VjdXJlIHZpcnR1YWwgbWFjaGluZSAq LwogWEVOX0NQVUZFQVRVUkUoRVhUQVBJQywgICAgICAgMyozMisgMykgLyogICBFeHRlbmRlZCBB UElDIHNwYWNlICovCi1YRU5fQ1BVRkVBVFVSRShDUjhfTEVHQUNZLCAgICAzKjMyKyA0KSAvKiAg IENSOCBpbiAzMi1iaXQgbW9kZSAqLwotWEVOX0NQVUZFQVRVUkUoQUJNLCAgICAgICAgICAgMyoz MisgNSkgLyogICBBZHZhbmNlZCBiaXQgbWFuaXB1bGF0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShT U0U0QSwgICAgICAgICAzKjMyKyA2KSAvKiAgIFNTRS00QSAqLwotWEVOX0NQVUZFQVRVUkUoTUlT QUxJR05TU0UsICAgMyozMisgNykgLyogICBNaXNhbGlnbmVkIFNTRSBtb2RlICovCi1YRU5fQ1BV RkVBVFVSRSgzRE5PV1BSRUZFVENILCAzKjMyKyA4KSAvKiAgIDNETm93IHByZWZldGNoIGluc3Ry dWN0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoQ1I4X0xFR0FDWSwgICAgMyozMisgNCkgLypTICBD UjggaW4gMzItYml0IG1vZGUgKi8KK1hFTl9DUFVGRUFUVVJFKEFCTSwgICAgICAgICAgIDMqMzIr IDUpIC8qQSAgQWR2YW5jZWQgYml0IG1hbmlwdWxhdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoU1NF NEEsICAgICAgICAgMyozMisgNikgLypBICBTU0UtNEEgKi8KK1hFTl9DUFVGRUFUVVJFKE1JU0FM SUdOU1NFLCAgIDMqMzIrIDcpIC8qQSAgTWlzYWxpZ25lZCBTU0UgbW9kZSAqLworWEVOX0NQVUZF QVRVUkUoM0ROT1dQUkVGRVRDSCwgMyozMisgOCkgLypBICAzRE5vdyBwcmVmZXRjaCBpbnN0cnVj dGlvbnMgKi8KIFhFTl9DUFVGRUFUVVJFKE9TVlcsICAgICAgICAgIDMqMzIrIDkpIC8qICAgT1Mg VmlzaWJsZSBXb3JrYXJvdW5kICovCi1YRU5fQ1BVRkVBVFVSRShJQlMsICAgICAgICAgICAzKjMy KzEwKSAvKiAgIEluc3RydWN0aW9uIEJhc2VkIFNhbXBsaW5nICovCi1YRU5fQ1BVRkVBVFVSRShY T1AsICAgICAgICAgICAzKjMyKzExKSAvKiAgIGV4dGVuZGVkIEFWWCBpbnN0cnVjdGlvbnMgKi8K K1hFTl9DUFVGRUFUVVJFKElCUywgICAgICAgICAgIDMqMzIrMTApIC8qUyAgSW5zdHJ1Y3Rpb24g QmFzZWQgU2FtcGxpbmcgKi8KK1hFTl9DUFVGRUFUVVJFKFhPUCwgICAgICAgICAgIDMqMzIrMTEp IC8qQSAgZXh0ZW5kZWQgQVZYIGluc3RydWN0aW9ucyAqLwogWEVOX0NQVUZFQVRVUkUoU0tJTklU LCAgICAgICAgMyozMisxMikgLyogICBTS0lOSVQvU1RHSSBpbnN0cnVjdGlvbnMgKi8KIFhFTl9D UFVGRUFUVVJFKFdEVCwgICAgICAgICAgIDMqMzIrMTMpIC8qICAgV2F0Y2hkb2cgdGltZXIgKi8K LVhFTl9DUFVGRUFUVVJFKExXUCwgICAgICAgICAgIDMqMzIrMTUpIC8qICAgTGlnaHQgV2VpZ2h0 IFByb2ZpbGluZyAqLwotWEVOX0NQVUZFQVRVUkUoRk1BNCwgICAgICAgICAgMyozMisxNikgLyog ICA0IG9wZXJhbmRzIE1BQyBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKExXUCwgICAg ICAgICAgIDMqMzIrMTUpIC8qQSAgTGlnaHQgV2VpZ2h0IFByb2ZpbGluZyAqLworWEVOX0NQVUZF QVRVUkUoRk1BNCwgICAgICAgICAgMyozMisxNikgLypBICA0IG9wZXJhbmRzIE1BQyBpbnN0cnVj dGlvbnMgKi8KIFhFTl9DUFVGRUFUVVJFKE5PREVJRF9NU1IsICAgIDMqMzIrMTkpIC8qICAgTm9k ZUlkIE1TUiAqLwotWEVOX0NQVUZFQVRVUkUoVEJNLCAgICAgICAgICAgMyozMisyMSkgLyogICB0 cmFpbGluZyBiaXQgbWFuaXB1bGF0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoVEJNLCAgICAgICAg ICAgMyozMisyMSkgLypBICB0cmFpbGluZyBiaXQgbWFuaXB1bGF0aW9ucyAqLwogWEVOX0NQVUZF QVRVUkUoVE9QT0VYVCwgICAgICAgMyozMisyMikgLyogICB0b3BvbG9neSBleHRlbnNpb25zIENQ VUlEIGxlYWZzICovCi1YRU5fQ1BVRkVBVFVSRShEQkVYVCwgICAgICAgICAzKjMyKzI2KSAvKiAg IGRhdGEgYnJlYWtwb2ludCBleHRlbnNpb24gKi8KK1hFTl9DUFVGRUFUVVJFKERCRVhULCAgICAg ICAgIDMqMzIrMjYpIC8qQSAgZGF0YSBicmVha3BvaW50IGV4dGVuc2lvbiAqLwogWEVOX0NQVUZF QVRVUkUoTU9OSVRPUlgsICAgICAgMyozMisyOSkgLyogICBNT05JVE9SIGV4dGVuc2lvbiAoTU9O SVRPUlgvTVdBSVRYKSAqLwogCiAvKiBJbnRlbC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQg bGV2ZWwgMHgwMDAwMDAwRDoxLmVheCwgd29yZCA0ICovCi1YRU5fQ1BVRkVBVFVSRShYU0FWRU9Q VCwgICAgICA0KjMyKyAwKSAvKiAgIFhTQVZFT1BUIGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVB VFVSRShYU0FWRUMsICAgICAgICA0KjMyKyAxKSAvKiAgIFhTQVZFQy9YUlNUT1JDIGluc3RydWN0 aW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoWEdFVEJWMSwgICAgICAgNCozMisgMikgLyogICBYR0VU QlYgd2l0aCAlZWN4PTEgKi8KLVhFTl9DUFVGRUFUVVJFKFhTQVZFUywgICAgICAgIDQqMzIrIDMp IC8qICAgWFNBVkVTL1hSU1RPUlMgaW5zdHJ1Y3Rpb25zICovCitYRU5fQ1BVRkVBVFVSRShYU0FW RU9QVCwgICAgICA0KjMyKyAwKSAvKkEgIFhTQVZFT1BUIGluc3RydWN0aW9uICovCitYRU5fQ1BV RkVBVFVSRShYU0FWRUMsICAgICAgICA0KjMyKyAxKSAvKkEgIFhTQVZFQy9YUlNUT1JDIGluc3Ry dWN0aW9ucyAqLworWEVOX0NQVUZFQVRVUkUoWEdFVEJWMSwgICAgICAgNCozMisgMikgLypBICBY R0VUQlYgd2l0aCAlZWN4PTEgKi8KK1hFTl9DUFVGRUFUVVJFKFhTQVZFUywgICAgICAgIDQqMzIr IDMpIC8qUyAgWFNBVkVTL1hSU1RPUlMgaW5zdHJ1Y3Rpb25zICovCiAKIC8qIEludGVsLWRlZmlu ZWQgQ1BVIGZlYXR1cmVzLCBDUFVJRCBsZXZlbCAweDAwMDAwMDA3OjAuZWJ4LCB3b3JkIDUgKi8K LVhFTl9DUFVGRUFUVVJFKEZTR1NCQVNFLCAgICAgIDUqMzIrIDApIC8qICAge1JELFdSfXtGUyxH U31CQVNFIGluc3RydWN0aW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoVFNDX0FESlVTVCwgICAgNSoz MisgMSkgLyogICBUU0NfQURKVVNUIE1TUiBhdmFpbGFibGUgKi8KLVhFTl9DUFVGRUFUVVJFKEJN STEsICAgICAgICAgIDUqMzIrIDMpIC8qICAgMXN0IGJpdCBtYW5pcHVsYXRpb24gZXh0ZW5zaW9u cyAqLwotWEVOX0NQVUZFQVRVUkUoSExFLCAgICAgICAgICAgNSozMisgNCkgLyogICBIYXJkd2Fy ZSBMb2NrIEVsaXNpb24gKi8KLVhFTl9DUFVGRUFUVVJFKEFWWDIsICAgICAgICAgIDUqMzIrIDUp IC8qICAgQVZYMiBpbnN0cnVjdGlvbnMgKi8KK1hFTl9DUFVGRUFUVVJFKEZTR1NCQVNFLCAgICAg IDUqMzIrIDApIC8qQSAge1JELFdSfXtGUyxHU31CQVNFIGluc3RydWN0aW9ucyAqLworWEVOX0NQ VUZFQVRVUkUoVFNDX0FESlVTVCwgICAgNSozMisgMSkgLypTICBUU0NfQURKVVNUIE1TUiBhdmFp bGFibGUgKi8KK1hFTl9DUFVGRUFUVVJFKEJNSTEsICAgICAgICAgIDUqMzIrIDMpIC8qQSAgMXN0 IGJpdCBtYW5pcHVsYXRpb24gZXh0ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoSExFLCAgICAg ICAgICAgNSozMisgNCkgLypBICBIYXJkd2FyZSBMb2NrIEVsaXNpb24gKi8KK1hFTl9DUFVGRUFU VVJFKEFWWDIsICAgICAgICAgIDUqMzIrIDUpIC8qQSAgQVZYMiBpbnN0cnVjdGlvbnMgKi8KIFhF Tl9DUFVGRUFUVVJFKEZEUF9FWENQX09OTFksIDUqMzIrIDYpIC8qISAgeDg3IEZEUCBvbmx5IHVw ZGF0ZWQgb24gZXhjZXB0aW9uLiAqLwotWEVOX0NQVUZFQVRVUkUoU01FUCwgICAgICAgICAgNSoz MisgNykgLyogICBTdXBlcnZpc29yIE1vZGUgRXhlY3V0aW9uIFByb3RlY3Rpb24gKi8KLVhFTl9D UFVGRUFUVVJFKEJNSTIsICAgICAgICAgIDUqMzIrIDgpIC8qICAgMm5kIGJpdCBtYW5pcHVsYXRp b24gZXh0ZW5zaW9ucyAqLwotWEVOX0NQVUZFQVRVUkUoRVJNUywgICAgICAgICAgNSozMisgOSkg LyogICBFbmhhbmNlZCBSRVAgTU9WU0IvU1RPU0IgKi8KLVhFTl9DUFVGRUFUVVJFKElOVlBDSUQs ICAgICAgIDUqMzIrMTApIC8qICAgSW52YWxpZGF0ZSBQcm9jZXNzIENvbnRleHQgSUQgKi8KLVhF Tl9DUFVGRUFUVVJFKFJUTSwgICAgICAgICAgIDUqMzIrMTEpIC8qICAgUmVzdHJpY3RlZCBUcmFu c2FjdGlvbmFsIE1lbW9yeSAqLworWEVOX0NQVUZFQVRVUkUoU01FUCwgICAgICAgICAgNSozMisg NykgLypTICBTdXBlcnZpc29yIE1vZGUgRXhlY3V0aW9uIFByb3RlY3Rpb24gKi8KK1hFTl9DUFVG RUFUVVJFKEJNSTIsICAgICAgICAgIDUqMzIrIDgpIC8qQSAgMm5kIGJpdCBtYW5pcHVsYXRpb24g ZXh0ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoRVJNUywgICAgICAgICAgNSozMisgOSkgLypB ICBFbmhhbmNlZCBSRVAgTU9WU0IvU1RPU0IgKi8KK1hFTl9DUFVGRUFUVVJFKElOVlBDSUQsICAg ICAgIDUqMzIrMTApIC8qSCAgSW52YWxpZGF0ZSBQcm9jZXNzIENvbnRleHQgSUQgKi8KK1hFTl9D UFVGRUFUVVJFKFJUTSwgICAgICAgICAgIDUqMzIrMTEpIC8qQSAgUmVzdHJpY3RlZCBUcmFuc2Fj dGlvbmFsIE1lbW9yeSAqLwogWEVOX0NQVUZFQVRVUkUoUFFNLCAgICAgICAgICAgNSozMisxMikg LyogICBQbGF0Zm9ybSBRb1MgTW9uaXRvcmluZyAqLwogWEVOX0NQVUZFQVRVUkUoTk9fRlBVX1NF TCwgICAgNSozMisxMykgLyohICBGUFUgQ1MvRFMgc3RvcmVkIGFzIHplcm8gKi8KLVhFTl9DUFVG RUFUVVJFKE1QWCwgICAgICAgICAgIDUqMzIrMTQpIC8qICAgTWVtb3J5IFByb3RlY3Rpb24gRXh0 ZW5zaW9ucyAqLworWEVOX0NQVUZFQVRVUkUoTVBYLCAgICAgICAgICAgNSozMisxNCkgLypTICBN ZW1vcnkgUHJvdGVjdGlvbiBFeHRlbnNpb25zICovCiBYRU5fQ1BVRkVBVFVSRShQUUUsICAgICAg ICAgICA1KjMyKzE1KSAvKiAgIFBsYXRmb3JtIFFvUyBFbmZvcmNlbWVudCAqLwotWEVOX0NQVUZF QVRVUkUoUkRTRUVELCAgICAgICAgNSozMisxOCkgLyogICBSRFNFRUQgaW5zdHJ1Y3Rpb24gKi8K LVhFTl9DUFVGRUFUVVJFKEFEWCwgICAgICAgICAgIDUqMzIrMTkpIC8qICAgQURDWCwgQURPWCBp bnN0cnVjdGlvbnMgKi8KLVhFTl9DUFVGRUFUVVJFKFNNQVAsICAgICAgICAgIDUqMzIrMjApIC8q ICAgU3VwZXJ2aXNvciBNb2RlIEFjY2VzcyBQcmV2ZW50aW9uICovCi1YRU5fQ1BVRkVBVFVSRShQ Q09NTUlULCAgICAgICA1KjMyKzIyKSAvKiAgIFBDT01NSVQgaW5zdHJ1Y3Rpb24gKi8KLVhFTl9D UFVGRUFUVVJFKENMRkxVU0hPUFQsICAgIDUqMzIrMjMpIC8qICAgQ0xGTFVTSE9QVCBpbnN0cnVj dGlvbiAqLwotWEVOX0NQVUZFQVRVUkUoQ0xXQiwgICAgICAgICAgNSozMisyNCkgLyogICBDTFdC IGluc3RydWN0aW9uICovCi1YRU5fQ1BVRkVBVFVSRShTSEEsICAgICAgICAgICA1KjMyKzI5KSAv KiAgIFNIQTEgJiBTSEEyNTYgaW5zdHJ1Y3Rpb25zICovCitYRU5fQ1BVRkVBVFVSRShSRFNFRUQs ICAgICAgICA1KjMyKzE4KSAvKkEgIFJEU0VFRCBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRV UkUoQURYLCAgICAgICAgICAgNSozMisxOSkgLypBICBBRENYLCBBRE9YIGluc3RydWN0aW9ucyAq LworWEVOX0NQVUZFQVRVUkUoU01BUCwgICAgICAgICAgNSozMisyMCkgLypTICBTdXBlcnZpc29y IE1vZGUgQWNjZXNzIFByZXZlbnRpb24gKi8KK1hFTl9DUFVGRUFUVVJFKFBDT01NSVQsICAgICAg IDUqMzIrMjIpIC8qQSAgUENPTU1JVCBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoQ0xG TFVTSE9QVCwgICAgNSozMisyMykgLypBICBDTEZMVVNIT1BUIGluc3RydWN0aW9uICovCitYRU5f Q1BVRkVBVFVSRShDTFdCLCAgICAgICAgICA1KjMyKzI0KSAvKkEgIENMV0IgaW5zdHJ1Y3Rpb24g Ki8KK1hFTl9DUFVGRUFUVVJFKFNIQSwgICAgICAgICAgIDUqMzIrMjkpIC8qQSAgU0hBMSAmIFNI QTI1NiBpbnN0cnVjdGlvbnMgKi8KIAogLyogSW50ZWwtZGVmaW5lZCBDUFUgZmVhdHVyZXMsIENQ VUlEIGxldmVsIDB4MDAwMDAwMDc6MC5lY3gsIHdvcmQgNiAqLwotWEVOX0NQVUZFQVRVUkUoUFJF RkVUQ0hXVDEsICAgNiozMisgMCkgLyogICBQUkVGRVRDSFdUMSBpbnN0cnVjdGlvbiAqLwotWEVO X0NQVUZFQVRVUkUoUEtVLCAgICAgICAgICAgNiozMisgMykgLyogICBQcm90ZWN0aW9uIEtleXMg Zm9yIFVzZXJzcGFjZSAqLworWEVOX0NQVUZFQVRVUkUoUFJFRkVUQ0hXVDEsICAgNiozMisgMCkg LypBICBQUkVGRVRDSFdUMSBpbnN0cnVjdGlvbiAqLworWEVOX0NQVUZFQVRVUkUoUEtVLCAgICAg ICAgICAgNiozMisgMykgLypIICBQcm90ZWN0aW9uIEtleXMgZm9yIFVzZXJzcGFjZSAqLwogWEVO X0NQVUZFQVRVUkUoT1NQS0UsICAgICAgICAgNiozMisgNCkgLyohICBPUyBQcm90ZWN0aW9uIEtl eXMgRW5hYmxlICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwg MHg4MDAwMDAwNy5lZHgsIHdvcmQgNyAqLwpAQCAtMjI3LDcgKzIzMiw3IEBAIFhFTl9DUFVGRUFU VVJFKElUU0MsICAgICAgICAgIDcqMzIrIDgpIC8qICAgSW52YXJpYW50IFRTQyAqLwogWEVOX0NQ VUZFQVRVUkUoRUZSTywgICAgICAgICAgNyozMisxMCkgLyogICBBUEVSRi9NUEVSRiBSZWFkIE9u bHkgaW50ZXJmYWNlICovCiAKIC8qIEFNRC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2 ZWwgMHg4MDAwMDAwOC5lYngsIHdvcmQgOCAqLwotWEVOX0NQVUZFQVRVUkUoQ0xaRVJPLCAgICAg ICAgOCozMisgMCkgLyogICBDTFpFUk8gaW5zdHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKENM WkVSTywgICAgICAgIDgqMzIrIDApIC8qQSAgQ0xaRVJPIGluc3RydWN0aW9uICovCiAKICNlbmRp ZiAvKiBYRU5fQ1BVRkVBVFVSRSAqLwogCmRpZmYgLS1naXQgYS94ZW4vdG9vbHMvZ2VuLWNwdWlk LnB5IGIveGVuL3Rvb2xzL2dlbi1jcHVpZC5weQppbmRleCA1MTcxYzZlLi40NTJjMjZhIDEwMDc1 NQotLS0gYS94ZW4vdG9vbHMvZ2VuLWNwdWlkLnB5CisrKyBiL3hlbi90b29scy9nZW4tY3B1aWQu cHkKQEAgLTE3LDEyICsxNywxOCBAQCBjbGFzcyBTdGF0ZShvYmplY3QpOgogICAgICAgICAjIFN0 YXRlIHBhcnNlZCBmcm9tIGlucHV0CiAgICAgICAgIHNlbGYubmFtZXMgPSB7fSAjIE5hbWUgPT4g dmFsdWUgbWFwcGluZwogICAgICAgICBzZWxmLnJhd19zcGVjaWFsID0gc2V0KCkKKyAgICAgICAg c2VsZi5yYXdfcHYgPSBzZXQoKQorICAgICAgICBzZWxmLnJhd19odm1fc2hhZG93ID0gc2V0KCkK KyAgICAgICAgc2VsZi5yYXdfaHZtX2hhcCA9IHNldCgpCiAKICAgICAgICAgIyBTdGF0ZSBjYWxj dWxhdGVkCiAgICAgICAgIHNlbGYubnJfZW50cmllcyA9IDAgIyBOdW1iZXIgb2Ygd29yZHMgaW4g YSBmZWF0dXJlc2V0CiAgICAgICAgIHNlbGYuY29tbW9uXzFkID0gMCAjIENvbW1vbiBmZWF0dXJl cyBiZXR3ZWVuIDFkIGFuZCBlMWQKICAgICAgICAgc2VsZi5rbm93biA9IFtdICMgQWxsIGtub3du IGZlYXR1cmVzCiAgICAgICAgIHNlbGYuc3BlY2lhbCA9IFtdICMgRmVhdHVyZXMgd2l0aCBzcGVj aWFsIHNlbWFudGljcworICAgICAgICBzZWxmLnB2ID0gW10KKyAgICAgICAgc2VsZi5odm1fc2hh ZG93ID0gW10KKyAgICAgICAgc2VsZi5odm1faGFwID0gW10KIAogZGVmIHBhcnNlX2RlZmluaXRp b25zKHN0YXRlKToKICAgICAiIiIKQEAgLTMyLDcgKzM4LDcgQEAgZGVmIHBhcnNlX2RlZmluaXRp b25zKHN0YXRlKToKICAgICBmZWF0X3JlZ2V4ID0gcmUuY29tcGlsZSgKICAgICAgICAgciJeWEVO X0NQVUZFQVRVUkVcKChbQS1aMC05X10rKSwiCiAgICAgICAgICJccysoW1xzXGRdK1wqW1xzXGRd K1wrW1xzXGRdKylcKSIKLSAgICAgICAgIlxzKy9cKihbIV0qKSAuKiQiKQorICAgICAgICAiXHMr L1wqKFtcdyFdKikgLiokIikKIAogICAgIHRoaXMgPSBzeXMubW9kdWxlc1tfX25hbWVfX10KIApA QCAtNzIsNiArNzgsMTYgQEAgZGVmIHBhcnNlX2RlZmluaXRpb25zKHN0YXRlKToKIAogICAgICAg ICAgICAgaWYgYSA9PSAiISI6CiAgICAgICAgICAgICAgICAgc3RhdGUucmF3X3NwZWNpYWwuYWRk KHZhbCkKKyAgICAgICAgICAgIGVsaWYgYSBpbiAiQVNIIjoKKyAgICAgICAgICAgICAgICBpZiBh ID09ICJBIjoKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X3B2LmFkZCh2YWwpCisgICAg ICAgICAgICAgICAgICAgIHN0YXRlLnJhd19odm1fc2hhZG93LmFkZCh2YWwpCisgICAgICAgICAg ICAgICAgICAgIHN0YXRlLnJhd19odm1faGFwLmFkZCh2YWwpCisgICAgICAgICAgICAgICAgZWxp ZiBhdHRyID09ICJTIjoKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X2h2bV9zaGFkb3cu YWRkKHZhbCkKKyAgICAgICAgICAgICAgICAgICAgc3RhdGUucmF3X2h2bV9oYXAuYWRkKHZhbCkK KyAgICAgICAgICAgICAgICBlbGlmIGF0dHIgPT0gIkgiOgorICAgICAgICAgICAgICAgICAgICBz dGF0ZS5yYXdfaHZtX2hhcC5hZGQodmFsKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAg ICAgICByYWlzZSBGYWlsKCJVbnJlY29nbmlzZWQgYXR0cmlidXRlICclcycgZm9yICVzIiAlIChh LCBuYW1lKSkKIApAQCAtMTI0LDYgKzE0MCw5IEBAIGRlZiBjcnVuY2hfbnVtYmVycyhzdGF0ZSk6 CiAKICAgICBzdGF0ZS5jb21tb25fMWQgPSBmZWF0dXJlc2V0X3RvX3VpbnQzMnMoY29tbW9uXzFk LCAxKVswXQogICAgIHN0YXRlLnNwZWNpYWwgPSBmZWF0dXJlc2V0X3RvX3VpbnQzMnMoc3RhdGUu cmF3X3NwZWNpYWwsIG5yX2VudHJpZXMpCisgICAgc3RhdGUucHYgPSBmZWF0dXJlc2V0X3RvX3Vp bnQzMnMoc3RhdGUucmF3X3B2LCBucl9lbnRyaWVzKQorICAgIHN0YXRlLmh2bV9zaGFkb3cgPSBm ZWF0dXJlc2V0X3RvX3VpbnQzMnMoc3RhdGUucmF3X2h2bV9zaGFkb3csIG5yX2VudHJpZXMpCisg ICAgc3RhdGUuaHZtX2hhcCA9IGZlYXR1cmVzZXRfdG9fdWludDMycyhzdGF0ZS5yYXdfaHZtX2hh cCwgbnJfZW50cmllcykKIAogCiBkZWYgd3JpdGVfcmVzdWx0cyhzdGF0ZSk6CkBAIC0xNDUsMTAg KzE2NCwxOSBAQCBkZWYgd3JpdGVfcmVzdWx0cyhzdGF0ZSk6CiAjZGVmaW5lIElOSVRfS05PV05f RkVBVFVSRVMgeyBcXFxuJXNcbn0KIAogI2RlZmluZSBJTklUX1NQRUNJQUxfRkVBVFVSRVMgeyBc XFxuJXNcbn0KKworI2RlZmluZSBJTklUX1BWX0ZFQVRVUkVTIHsgXFxcbiVzXG59CisKKyNkZWZp bmUgSU5JVF9IVk1fU0hBRE9XX0ZFQVRVUkVTIHsgXFxcbiVzXG59CisKKyNkZWZpbmUgSU5JVF9I Vk1fSEFQX0ZFQVRVUkVTIHsgXFxcbiVzXG59CiAiIiIgJSAoc3RhdGUubnJfZW50cmllcywKICAg ICAgICBzdGF0ZS5jb21tb25fMWQsCiAgICAgICAgZm9ybWF0X3VpbnQzMnMoc3RhdGUua25vd24s IDQpLAogICAgICAgIGZvcm1hdF91aW50MzJzKHN0YXRlLnNwZWNpYWwsIDQpLAorICAgICAgIGZv cm1hdF91aW50MzJzKHN0YXRlLnB2LCA0KSwKKyAgICAgICBmb3JtYXRfdWludDMycyhzdGF0ZS5o dm1fc2hhZG93LCA0KSwKKyAgICAgICBmb3JtYXRfdWludDMycyhzdGF0ZS5odm1faGFwLCA0KSwK ICAgICAgICApKQogCiAgICAgc3RhdGUub3V0cHV0LndyaXRlKAotLSAKMi4xLjQKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGlu ZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=