From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 10C99959 for ; Wed, 6 Aug 2014 13:36:59 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP; 06 Aug 2014 04:33:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.01,811,1400050800"; d="scan'208";a="584162136" Received: from irsmsx102.ger.corp.intel.com ([163.33.3.155]) by orsmga002.jf.intel.com with ESMTP; 06 Aug 2014 04:39:24 -0700 Received: from irsmsx152.ger.corp.intel.com (163.33.192.66) by IRSMSX102.ger.corp.intel.com (163.33.3.155) with Microsoft SMTP Server (TLS) id 14.3.195.1; Wed, 6 Aug 2014 12:39:23 +0100 Received: from irsmsx105.ger.corp.intel.com ([169.254.7.240]) by IRSMSX152.ger.corp.intel.com ([169.254.6.214]) with mapi id 14.03.0195.001; Wed, 6 Aug 2014 12:39:23 +0100 From: "Ananyev, Konstantin" To: Neil Horman Thread-Topic: [PATCH] acl: If build does not support sse4.2, emulate missing instructions with C code Thread-Index: AQHPr/nfSvxellfhhkCY1e7bjysdIJvCBOJwgAA+TICAASXdMA== Date: Wed, 6 Aug 2014 11:39:22 +0000 Message-ID: <2601191342CEEE43887BDE71AB9772582134FC92@IRSMSX105.ger.corp.intel.com> References: <1407166558-9532-1-git-send-email-nhorman@tuxdriver.com> <2601191342CEEE43887BDE71AB9772582134F98D@IRSMSX105.ger.corp.intel.com> <20140805182035.GB20550@hmsreliant.think-freely.org> In-Reply-To: <20140805182035.GB20550@hmsreliant.think-freely.org> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH] acl: If build does not support sse4.2, emulate missing instructions with C code X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Aug 2014 11:37:01 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTmVpbCBIb3JtYW4gW21h aWx0bzpuaG9ybWFuQHR1eGRyaXZlci5jb21dDQo+IFNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCAwNSwg MjAxNCA3OjIxIFBNDQo+IFRvOiBBbmFueWV2LCBLb25zdGFudGluDQo+IENjOiBkZXZAZHBkay5v cmc7IFRob21hcyBNb25qYWxvbjsgUmljaGFyZHNvbiwgQnJ1Y2UNCj4gU3ViamVjdDogUmU6IFtQ QVRDSF0gYWNsOiBJZiBidWlsZCBkb2VzIG5vdCBzdXBwb3J0IHNzZTQuMiwgZW11bGF0ZSBtaXNz aW5nIGluc3RydWN0aW9ucyB3aXRoIEMgY29kZQ0KPiANCj4gT24gVHVlLCBBdWcgMDUsIDIwMTQg YXQgMDM6MjY6MjdQTSArMDAwMCwgQW5hbnlldiwgS29uc3RhbnRpbiB3cm90ZToNCj4gPiBIaSBO ZWlsLA0KPiA+DQo+ID4gPiBGcm9tOiBOZWlsIEhvcm1hbiBbbWFpbHRvOm5ob3JtYW5AdHV4ZHJp dmVyLmNvbV0NCj4gPiA+IFNlbnQ6IE1vbmRheSwgQXVndXN0IDA0LCAyMDE0IDQ6MzYgUE0NCj4g PiA+IFRvOiBkZXZAZHBkay5vcmcNCj4gPiA+IENjOiBOZWlsIEhvcm1hbjsgVGhvbWFzIE1vbmph bG9uOyBBbmFueWV2LCBLb25zdGFudGluOyBSaWNoYXJkc29uLCBCcnVjZQ0KPiA+ID4gU3ViamVj dDogW1BBVENIXSBhY2w6IElmIGJ1aWxkIGRvZXMgbm90IHN1cHBvcnQgc3NlNC4yLCBlbXVsYXRl IG1pc3NpbmcgaW5zdHJ1Y3Rpb25zIHdpdGggQyBjb2RlDQo+ID4gPg0KPiA+ID4gVGhlIEFDTCBs aWJyYXJ5IG1ha2VzIGV4dGVuc2l2ZSB1c2Ugb2Ygc29tZSBTU0U0LjIgaW5zdHJ1Y3Rpb25zLCB3 aGljaCBtZWFucyB0aGUNCj4gPiA+IGRlZmF1bHQgYnVpbGQgY2FuJ3QgY29tcGlsZSB0aGlzIGxp YnJhcnkuICBXb3JrIGFyb3VuZCB0aGUgcHJvYmxlbSBieSB0ZXN0aW5nDQo+ID4gPiB0aGUgX19T U0U0Ml9fIGRlZmluaXRpb24gaW4gdGhlIGFjbF92ZWN0cy5oIGZpbGUgYW5kIGRlZmluaW5nIHRo ZSBtYWNyb3MgdGhlcmUNCj4gPiA+IGFzIGludHJpbnNpY3Mgb3IgYy1sZXZlbCBlcXVpdmFsYW50 cy4gIE5vdGUgdGhpcyBpcyBhIG1pbmltYWwgcGF0Y2gsIGFkanVzdGluZw0KPiA+ID4gb25seSB0 aGUgZGVmaW5pdGlvbnMgdGhhdCBhcmUgY3VycmVudGx5IHVzZWQgaW4gdGhlIEFDTCBsaWJyYXJ5 Lg0KPiA+ID4NCj4gPg0KPiA+IE15IGNvbW1lbnRzIGFib3V0IGFjdHVhbCBpbXBsZW1lbnRhdGlv bnMgb2YgYy1sZXZlbCBlcXVpdmFsZW50cyBiZWxvdy4NCj4gPiBOb25lIG9mIHRoZW0gbG9vayBj b3JyZWN0IHRvIG1lLg0KPiA+IE9mIGNvdXJzZSBpdCBjb3VsZCBiZSBmaXhlZC4NCj4gPiBUaG91 Z2ggSSBhbSBub3Qgc3VyZSB0aGF0IGlzIGEgcmlnaHQgd2F5IHRvIHByb2NlZWQ6DQo+ID4gQXQg Zmlyc3QgSSByZWFsbHkgZG91YnQgdGhhdCB0aGVzZSBlcXVpdmFsZW50cyB3aWxsIHByb3ZpZGUg c2ltaWxhciBwZXJmb3JtYW5jZS4NCj4gPiBBcyB5b3UgcHJvYmFibHkgbm90ZSAtIHdlIGRvIGhh dmUgYSBzY2FsYXIgdmVyc2lvbiBvZiAgcnRlX2FjbF9jbGFzc2lmeSgpOiAgcnRlX2FjbF9jbGFz c2lmeV9zY2FsYXIoKS4NCj4gPiBTbyBJIHRoaW5rIGl0IG1pZ2h0IGJlIGZhc3RlciB0aGFuIHZl Y3RvciBvbmUgd2l0aCAnZW11bGF0ZWQnIGluc3RyaW5jdHMuDQo+ID4gVW5mb3J0dW5hdGVseSBp dCBpcyBhbGwgbWl4ZWQgcmlnaHQgbm93IGludG8gb25lIGZpbGUgYW5kICdzY2FsYXInIHZlcnNp b24gY291bGQgdXNlIGZldyBzc2U0IGluc3RyaW5jdHMgdGhyb3VnaCByZXNvbHZlX3ByaW9yaXR5 KCkuDQo+ID4gQW5vdGhlciB0aGluZyAtIHdlIGNvbnNpZGVyIHRvIGFkZCBhbm90aGVyIHZlcnNp b24gb2YgcnRlX2FjbF9jbGFzc2lmeSgpIHRoYXQgd2lsbCB1c2UgYXZ4MiBpbnN0cmluY3RzLg0K PiA+IElmIHdlIGdvIHRoZSB3YXkgeW91IHN1Z2dlc3QgLSBJIGFtIGFmcmFpZCB3aWxsIHNvb24g aGF2ZSB0byBwcm92aWRlIHNjYWxhciBlcXVpdmFsZW50cyBmb3Igc2V2ZXJhbCBBVlgyIGluc3Ry aW5jdHMgdG9vLg0KPiA+IFNvIGluIHN1bW1hcnkgdGhhdCB3YXkgKHByb3ZpZGluZyBvdXIgb3du IHNjYWxhciBlcXVpdmFsZW50cyBvZiBTSU1EIGluc3RyaW5jdHMpIHNlZW1zIHRvIG1lIHNsb3cs IGhhcmQgdG8gbWFpbnRhaW4gYW5kIGVycm9yDQo+IHByb25lLg0KPiA+DQo+ID4gV2hhdCBwb3Ji YWJseSBjYW4gYmUgZG9uZSBpbnN0ZWFkOiByZXdvcmsgYWNsX3J1bi5jIGEgYml0LCBzbyBpdCBw cm92aWRlOg0KPiA+IHJ0ZV9hY2xfY2xhc3NpZnlfc2NhbGFyKCkgLSBjb3VsZCBiZSBidWlsZCBh bmQgdXNlZCBvbiBhbGwgc3lzdGVtcy4NCj4gPiBydGVfYWNsX2NsYXNzaWZ5X3NzZSgpIC0gY291 bGQgYmUgYnVpbGQgYW5kIHVzZWQgb25seSBvbiBzeXN0ZW1zIHdpdGggc3NlNC4yIGFuZCB1cHBl ciwgcmV0dXJuIEVOT1RTVVAgb24gbG93ZXIgYXJjaC4NCj4gPiBJbiBmdXR1cmU6IHJ0ZV9hY2xf Y2xhc3NpZnlfYXZ4MiAtIGNvdWxkIGJlIGJ1aWxkIGFuZCB1c2VkIG9ubHkgb24gc3lzdGVtcyB3 aXRoIGF2eDIgYW5kIHVwcGVyLCByZXR1cm4gRU5PVFNVUCBvbiBsb3dlciBhcmNoLg0KPiA+DQo+ ID4gSSBhbSBsb29raW5nIGF0IHJ0ZV9hY2wgcmlnaHQgbm93IGFueXdheS4NCj4gPiBTbyB3aWxs IHRyeSB0byBjb21lIHVwIHdpdGggc29tZXRoaW5nIHdvcmthYmxlLg0KPiA+DQo+IFNvLCB0aGlz IGlzIGV4YWN0bHkgdGhlIG9wcG9zaXRlIG9mIHdoYXQgQnJ1Y2UgYW5kIEkganVzdCBzcGVudCBz ZXZlcmFsIGRheXMgYW5kDQo+IGEgaHVnZSBlbWFpbCB0aHJlYWQgdGhhdCB5b3UgY2xlYXJseSBh cmUgYXdhcmUgb2YgZGlzY3Vzc2luZyBydW4gdGltZSB2ZXJzdXMNCj4gY29tcGlsZSB0aW1lIHNl bGVjdGlvbiBvZiBwYXRocy4gIEF0IHRoaXMgcG9pbnQgSSdtIGRvbmUgcGluZyBwb25naW5nIGJl dHdlZW4NCj4geW91ciBvcHBvc2luZyB2aWV3cG9pbnRzLiAgSWYgeW91IHdhbnQgdG8gaW1wbGVt ZW50IHNvbWV0aGluZyB0aGF0IGRvZXMgcnVuIHRpbWUNCj4gY2hlY2tpbmcsIEknbSBmaW5lIHdp dGggaXQsIGJ1dCBJJ20gbm90IGdvaW5nIGJhY2sgYW5kIGZvcnRoIHVudGlsIHlvdSB0d28gY29t ZQ0KPiB0byBhbiBhZ3JlZW1lbnQgb24gdGhpcy4NCg0KUmlnaHQgbm93LCBJIGFtIG5vdCB0YWxr aW5nIGFib3V0ICdydW4gdGltZSB2cyBjb21waWxlIHRpbWUgc2VsZWN0aW9uJy4NCldoYXRldmVy IHdheSB3ZSBjaG9vc2UsIEkgdGhpbmsgdGhlIGltcGxlbWVudGF0aW9uIG5lZWQgdG8gYmU6DQox KSBjb3JyZWN0DQoyKSBhbGxvdyBlYXNpbHkgYWRkKC9tb2RpZnkpIGNvZGUgcGF0aCBvcHRpbWlz ZWQgZm9yIHBhcnRpY3VsYXIgYXJjaGl0ZWN0dXJlLg0KV2l0aG91dCBuZWVkIHRvIG1vZGlmeS9y ZS10ZXN0IHdoYXQgeW91IGNhbGwgICdsZWFzdCBjb21tb24gZGVub21pbmF0b3InIGNvZGUgcGF0 aC4NCkFuZCB2aXNhLXZlcnNhLCBpZiBzb21lb25lIGZpbmQgYSB3YXkgdG8gb3B0aW1pc2UgY29t bW9uIGNvZGUgcGF0aCAtIG5vIG5lZWQgdG8NCnRvdWNoL3JldGVzdCBhcmNoaXRlY3R1cmUgc3Bl Y2lmaWMgb25lcy4NCg0KPiANCj4gPiA+IE9ubHkgY29tcGlsZSB0ZXN0ZWQgc28gZmFyLCBidXQg SSB3YW50ZWQgdG8gcG9zdCBpdCBmb3IgZWFybHkgcmV2aWV3IHNvIHRoYXQNCj4gPiA+IG90aGVy cyBjb3VsZCBhaWQgaW4gdW5pdCB0ZXN0aW5nLg0KPiA+DQo+ID4gQ291bGQgeW91IHBsZWFzZSBz dG9wIHN1Ym1pdHRpbmcgdW50ZXN0ZWQgcGF0Y2hlcy4NCj4gV2hhdCBwYXJ0IG9mICJDb21waWxl IHRlc3RlZCBvbmx5IiB3YXMgaGFyZCB0byB1bmRlcnN0YW5kPyBJIHBvc3RlZCBpdCBlYXJseQ0K PiBzcGVjZmljaWFsbHkgYmVjYXVzZSBJIGV4cGVjdGVkIGNvbW1lbnRzIGxpa2UgeW91J3ZlIHBy b3ZpZGVkIGFib3ZlLiAgQWZ0ZXIgSQ0KPiBwb3N0ZWQgbXkgZmlyc3QgaWRlYSwgeW91IG5ha2Vk IGl0LCBhbmQgYWZ0ZXIgSSBzdGFydGVkIGZpeGluZyBpdCB1cCB0byBtYWtlDQo+IHJ1bi10aW1l IHNlbGVjdGlvbnMsIEJydWNlIGNhbWUgZG93biBpbiBmYXZvciBvZiBjb21tb24gY29tcGlsZSB0 aW1lDQo+IGZ1bmN0aW9uYWxpdHkuICBHaXZlbiBvdXIgcHJldmlvdXMgY29udmVyc2F0aW9uLCBJ IGZpZ3VyZWQgeW91IHdvdWxkIGJlIG9wcG9zZWQNCj4gdG8gdGhpcyBhcHByb2FjaCwgc28gd2hh dHMgdGhlIHBvaW50IGluIHRlc3RpbmcgdGhpcyBpZiB5b3UncmUganVzdCBnb2luZyB0bw0KPiBr aWxsIHRoZSBpZGVhPw0KPiANCj4gPiBJdCBpcyBjb21tb24gKGFuZCBnb29kKSBwcmFjdGljZSB0 byBkbyBhdCBsZWFzdCBzb21lIG1pbmltYWwgdGVzdGluZyBiZWZvcmUgc3VibWl0dGluZyB5b3Vy IGNvZGUgY2hhbmdlcy4NCj4gTmV2ZXIgaW50ZW5kZWQgaXQgdG8gYmUgYWNjZXB0ZWQganVzdCB0 ZXN0ZWQvcmV2aWV3ZWQuICBIZW5jZSBteSBjb21tZW50DQo+ICJjb21waWxlIHRlc3RlZCBvbmx5 Ii4gIEkgYWRtaXQgSSB3YXMgdW5hd2FyZSBvZiB0aGUgdW5pdCB0ZXN0IGJlbG93DQo+ID4gQXQg dGhlIGVuZCwgaXQgd2lsbCBzYXZlIHlvdXIgb3duIGFuZCBvdGhlciBwZW9wbGUgdGltZS4NCj4g PiBGb3IgQUNMIHRoZXJlIGlzIGEgc2ltcGxlIFVULCB0aGF0IGNvdWxkIGJlIHJ1biBhczoNCj4g PiAuL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2FwcC90ZXN0IC4uLg0KPiA+IFJURT4+YWNs X2F1dG90ZXN0DQo+ID4gSXQgdGFrZXMganVzdCBmZXcgc2Vjb25kcyB0byBydW4uDQo+IA0KPiBJ dCBkb2Vzbid0IHNlZW0gdG8gd29yayBwcm9wZXJseSwgYXQgbGVhc3Qgbm90IG9uIGFueSBvZiBt eSBzeXN0ZW1zLiAgV2l0aCBhDQo+IHN5c3RlbSBhbGxvY2F0aW9uIDEwMCBwYWdlcyB0byBodWdl cGFnZSBtZW1vcnk6DQo+IA0KPiBbcm9vdEBobXNyZWxpYW50IGFwcF0jIC4vdGVzdCAtYyAweDMg LW4gMg0KPiBFQUw6IERldGVjdGVkIGxjb3JlIDAgYXMgY29yZSAwIG9uIHNvY2tldCAwDQo+IEVB TDogRGV0ZWN0ZWQgbGNvcmUgMSBhcyBjb3JlIDEgb24gc29ja2V0IDANCj4gRUFMOiBEZXRlY3Rl ZCBsY29yZSAyIGFzIGNvcmUgMiBvbiBzb2NrZXQgMA0KPiBFQUw6IERldGVjdGVkIGxjb3JlIDMg YXMgY29yZSAzIG9uIHNvY2tldCAwDQo+IEVBTDogRGV0ZWN0ZWQgbGNvcmUgNCBhcyBjb3JlIDAg b24gc29ja2V0IDANCj4gRUFMOiBEZXRlY3RlZCBsY29yZSA1IGFzIGNvcmUgMSBvbiBzb2NrZXQg MA0KPiBFQUw6IERldGVjdGVkIGxjb3JlIDYgYXMgY29yZSAyIG9uIHNvY2tldCAwDQo+IEVBTDog RGV0ZWN0ZWQgbGNvcmUgNyBhcyBjb3JlIDMgb24gc29ja2V0IDANCj4gRUFMOiBTdXBwb3J0IG1h eGltdW0gNjQgbG9naWNhbCBjb3JlKHMpIGJ5IGNvbmZpZ3VyYXRpb24uDQo+IEVBTDogRGV0ZWN0 ZWQgOCBsY29yZShzKQ0KPiBFQUw6ICAgY2Fubm90IG9wZW4gVkZJTyBjb250YWluZXIsIGVycm9y IDIgKE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkpDQo+IEVBTDogVkZJTyBzdXBwb3J0IGNvdWxk IG5vdCBiZSBpbml0aWFsaXplZA0KPiBFQUw6IFNldHRpbmcgdXAgbWVtb3J5Li4uDQo+IEVBTDog QXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4MjAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVh IGZvdW5kIGF0IDB4N2ZlZjA3MDAwMDAwIChzaXplID0gMHgyMDAwMDApDQo+IEVBTDogQXNrIGEg dmlydHVhbCBhcmVhIG9mIDB4MjAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5k IGF0IDB4N2ZlZjA2YzAwMDAwIChzaXplID0gMHgyMDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVh bCBhcmVhIG9mIDB4NDAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4 N2ZlZjA2NjAwMDAwIChzaXplID0gMHg0MDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVh IG9mIDB4MjAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjA2 MjAwMDAwIChzaXplID0gMHgyMDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4 MjAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjA1ZTAwMDAw IChzaXplID0gMHgyMDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4NjAwMDAw IGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjA1NjAwMDAwIChzaXpl ID0gMHg2MDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4NjAwMDAwIGJ5dGVz DQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjA0ZTAwMDAwIChzaXplID0gMHg2 MDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4ODAwMDAwIGJ5dGVzDQo+IEVB TDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjA0NDAwMDAwIChzaXplID0gMHg4MDAwMDAp DQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4NDAwMDAwIGJ5dGVzDQo+IEVBTDogVmly dHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZjAzZTAwMDAwIChzaXplID0gMHg0MDAwMDApDQo+IEVB TDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4YTAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBh cmVhIGZvdW5kIGF0IDB4N2ZlZjAzMjAwMDAwIChzaXplID0gMHhhMDAwMDApDQo+IEVBTDogQXNr IGEgdmlydHVhbCBhcmVhIG9mIDB4NDAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZv dW5kIGF0IDB4N2ZlZjAyYzAwMDAwIChzaXplID0gMHg0MDAwMDApDQo+IEVBTDogQXNrIGEgdmly dHVhbCBhcmVhIG9mIDB4NDAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0 IDB4N2ZlZjAyNjAwMDAwIChzaXplID0gMHg0MDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBh cmVhIG9mIDB4MTgwMDAwMCBieXRlcw0KPiBFQUw6IFZpcnR1YWwgYXJlYSBmb3VuZCBhdCAweDdm ZWYwMGMwMDAwMCAoc2l6ZSA9IDB4MTgwMDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEg b2YgMHgxMjAwMDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZWZm ODAwMDAwIChzaXplID0gMHgxMjAwMDAwKQ0KPiBFQUw6IEFzayBhIHZpcnR1YWwgYXJlYSBvZiAw eDI2MDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVlZmQwMDAw MDAgKHNpemUgPSAweDI2MDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4YzAw MDAwIGJ5dGVzDQo+IEVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0IDB4N2ZlZWZjMjAwMDAwIChz aXplID0gMHhjMDAwMDApDQo+IEVBTDogQXNrIGEgdmlydHVhbCBhcmVhIG9mIDB4MjIwMDAwMCBi eXRlcw0KPiBFQUw6IFZpcnR1YWwgYXJlYSBmb3VuZCBhdCAweDdmZWVmOWUwMDAwMCAoc2l6ZSA9 IDB4MjIwMDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMN Cj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVlZjlhMDAwMDAgKHNpemUgPSAweDIw MDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFM OiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVlZjk2MDAwMDAgKHNpemUgPSAweDIwMDAwMCkN Cj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0 dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVlZjkyMDAwMDAgKHNpemUgPSAweDIwMDAwMCkNCj4gRUFM OiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFy ZWEgZm91bmQgYXQgMHg3ZmVlZjhlMDAwMDAgKHNpemUgPSAweDIwMDAwMCkNCj4gRUFMOiBBc2sg YSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91 bmQgYXQgMHg3ZmVlZjhhMDAwMDAgKHNpemUgPSAweDIwMDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0 dWFsIGFyZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQg MHg3ZmVlZjg2MDAwMDAgKHNpemUgPSAweDIwMDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFy ZWEgb2YgMHgyMDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVl ZjgyMDAwMDAgKHNpemUgPSAweDIwMDAwMCkNCj4gRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2Yg MHg2MDAwMDAgYnl0ZXMNCj4gRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZmVlZjdhMDAw MDAgKHNpemUgPSAweDYwMDAwMCkNCj4gRUFMOiBSZXF1ZXN0aW5nIDEwMCBwYWdlcyBvZiBzaXpl IDJNQiBmcm9tIHNvY2tldCAwDQo+IEVBTDogVFNDIGZyZXF1ZW5jeSBpcyB+MzM5MjI5NyBLSHoN Cj4gRUFMOiBNYXN0ZXIgY29yZSAwIGlzIHJlYWR5ICh0aWQ9NzNjZjg4MCkNCj4gRUFMOiBDb3Jl IDEgaXMgcmVhZHkgKHRpZD1mNzFmZTcwMCkNCj4gQVBQOiBIUEVUIGlzIG5vdCBlbmFibGVkLCB1 c2luZyBUU0MgYXMgZGVmYXVsdCB0aW1lcg0KPiBSVEU+PmFjbF9hdXRvdGVzdA0KPiBBQ0w6IGFs bG9jYXRpb24gb2YgMjUxNjY3MjAgYnl0ZXMgb24gc29ja2V0IDkgZm9yIEFDTF9hY2xfY3R4IGZh aWxlZA0KPiANCj4gVGhpcyBoYW5ncyBmb3JldmVyICh3ZWxsLCBhdCBsZWFzdCAzMCBtaW51dGVz LCBidXQgdGhhdHMgc3VmZmljaWVudGx5DQo+IGNsb3NlIHRvIGZvcmV2ZXIgZm9yIG1lIHRvIHdh aXQpLg0KPiANCj4gPiBBbHNvIGlmIHlvdSBwbGFuIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgZm9yIEFD TCwgd2UgcHJvYmFibHkgY2FuIHByb3ZpZGUgeW91IHdpdGggZXh0cmEgdGVzdC1jYXNlcyB0aGF0 IHdlIHVzZSBmb3IgZnVuY3Rpb25hbCB0ZXN0aW5nLg0KPiBUaGF0IHdvdWxkIGJlIGdvb2QgcGxl YXNlLg0KPiANCj4gVGhhbmtzDQo+IE5laWwNCj4gDQo=