From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chunming Zhou Subject: Re: [PATCH 7/7] drm/syncobj: use the timeline point in drm_syncobj_find_fence Date: Sat, 24 Nov 2018 08:28:59 +0000 Message-ID: References: <20181115111245.30161-1-christian.koenig@amd.com> <20181115111245.30161-8-christian.koenig@amd.com> <7857f8af-7046-66a4-e679-3e788b5750c1@amd.com> <3a57870c-75ee-e706-1967-870f4757d6ff@gmail.com> <1c8fb095-2a82-12f3-d8e2-6b437a795d0f@amd.com> <7b04004c-4a6a-8c25-cb2a-5995027f16ee@gmail.com> <659c8ab4-2d30-be1b-2b96-62f33e2e4460@amd.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1737852588==" Return-path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-eopbgr740071.outbound.protection.outlook.com [40.107.74.71]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8C63B6E5CA for ; Sat, 24 Nov 2018 08:29:05 +0000 (UTC) In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Koenig, Christian" , "Zhou, David(ChunMing)" , "dri-devel@lists.freedesktop.org" Cc: "daniel.vetter@ffwll.ch" List-Id: dri-devel@lists.freedesktop.org --===============1737852588== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_c602becd8c65bdff119b41bce93964e3amdcom_" --_000_c602becd8c65bdff119b41bce93964e3amdcom_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCuWcqCAyMDE4LzExLzI0IDI6MTYsIENocmlzdGlhbiBLw7ZuaWcg5YaZ6YGTOg0KQW0gMjMu MTEuMTggdW0gMTQ6NDIgc2NocmllYiBDaHVubWluZyBaaG91Og0KDQoNCkJ1dCBJJ3ZlIGNhbWUg dXAgd2l0aCBzb21ldGhpbmcgd2hpY2ggc2hvdWxkIHdvcmsuIEFzc3VtZSB0aGUgb3JpZ2luYWwN CmNoYWluIGlzOg0KDQoxLS0tLTMtLS0tNi0tLS05LS0tLTEyLS0tMTgNCg0KQW5kIHdlIGdhcmJh Z2UgY29sbGVjdCBldmVyeXRoaW5nIGJ1dCA2IGFuZCAxOCB0aGVuIGFsbCB3ZSBuZWVkIHRvIGtu b3cNCnRvIHJldHVybiB0aGUgY29ycmVjdCBub2RlIGlzIHdoYXQgdGhlIG9yaWdpbmFsIHByZXZp b3VzIHNlcXVlbmNlIG51bWJlcg0Kd2FzLg0KDQo2ICgzKS0tLS0xOCAoMTIpDQoNCldoZW4gdGhl biBzb21lYm9keSBhc2tzIGZvciAxNyB3ZSBjYW4gc3RpbGwgcmV0dXJuIDE4IGFuZCBpZiBzb21l Ym9keQ0KYXNrcyBmb3IgOSB3ZSB3b3VsZCByZXR1cm4gNi4NCg0KdGhlbiB3aGF0IHBvaW50IHdl IHJldHVybiB3aGVuIHNvbWVib2R5IGFza3MgZm9yIDExPw0KDQpJbiB0aGlzIGNhc2UgNi4gSWYg OSBvciAxMiB3b3VsZG4ndCBiZSBzaWduYWxlZCB5ZXQgdGhhbiB0aG9zZS4NCg0KDQoNCkFub3Ro ZXIgdXNlIGNhc2UsIEknbSBub3Qgc3VyZSBpZiB5b3UgY29uc2lkZXJlZDoNCmlmIGNoYWluIGlz ICAxLS0tLTMtLS0tNi0tLS05LS0tLTEyLS0tMTgsIGEgd2FpdCBvcGVyYXRpb24gaXMgb24gcG9p bnQNCjE3LCB0aGVuIHdlIHJldHVybiAxOCwgYW5vdGhlciBzaWduYWwgcG9pbnQgMTcgY29tZXMs IHRoZW4gd2Ugc3RpbGwgd2FpdA0Kb24gMTgoYXNzdW1lIDE4IHRha2VzIHZlcnkgbG9uZyB0aW1l KSwgdGhhdCBsb29rcyBub3QgcmVzZW9uYWJsZSwgYnV0DQp0aGlzIGlzIGp1c3QgcGVyZm9ybWFu Y2UgcHJvYmxlbSBwb3RpZW50aWFsbHkuIFNlZW1zIHRoZSB3YXkgb2YgdGltZWxpbmUNCnN3X3N5 bmMuYyB3aXRoIGNvbXBhcmluZyBwb2ludCBmb3Igc2lnbmFsIHN0YXR1cyBjYW4gc292bGUgaXQu DQoNCg0KV2VsbCBJIHRob3VnaHQgdGhhdCB3ZSBkZWNsYXJlZCB0aGF0IHNpZ25hbGluZyBsb3dl ciBudW1iZXJzIGlzIGlsbGVnYWw/DQoNClNvcnJ5LCBJIGZvcmdvdCBpdCwgcXVvdGUgZnJvbSBz cGVjOiAiDQoqUkVTT0xWRUQqOiBBIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIHRoYXQgY2FuIG9u bHkgYmUgc2V0IHRvIG1vbm90b25pY2FsbHkNCmluY3JlYXNpbmcgdmFsdWVzIGJ5IHNpZ25hbCBv cGVyYXRpb25zIGFuZCBpcyBub3QgY2hhbmdlZCBieSB3YWl0IG9wZXJhdGlvbnMuIg0KDQpDYW4g d2UgdGhpbmsgc2lnbmFsaW5nIGxvd2VyIG51bWJlcnMgaXMgZm9yYmlkZGVuPw0KDQpJZiB0aGF0 J3MgdHJ1ZSwgd2UgY2FuIGRpcmVjdGx5IGlnbm9yZSBsb3dlciBudW1iZXIgYW5kIHJldHVybiB3 aXRob3V0IGVycm9yLCBrZWVwIHRoZSBsYXJnZXIgc2lnbmFsIHBvaW50Lg0KDQpJJ3ZlIGNvbnNp ZGVyZWQgdGhpcyBhcyB3ZWxsLCBidXQgY2FtZSB0byB0aGUgY29uY2x1c2lvbiB0aGF0IHdlIHRo ZW4gd291bGQgbG9zZSBzb21lIHN5bmMgZmVuY2UuDQoNClN0YXJ0aW5nIGEgbmV3IHNlcXVlbmNl IHdoZW4gdXNlcnNwYWNlIGRvZXMgdGhhdCBpcyB0aGUgYmV0dGVyIGFsdGVybmF0aXZlLCBjYXVz ZSB0aGVuIHdlIGFnYWluIGFsd2F5cyBzeW5jIHRvIG11Y2ggYnV0IG5ldmVyIHRvIGxlc3MuDQpC dXQgdGhhdCB3aWxsIGxlYWQgdGltZWxpbmUgbm90IG1vbm90b25pY2FsbHkgaW5jcmVhc2luZywg d29uJ3QgaXQ/IFNlZW1zIGl0J3Mgbm90IGdvb2QuDQpXaGljaCBjb3VsZCByZXN1bHQgaW4gc29t ZSBwcm9ibGVtcywgZS5nLiBpZiB0aW1lbGluZSBpcyBhbHJlYWR5IHVwIHRvIDE4LCB0aGVuIHVz ZXJBIHRoaW5rIGhlIGNhbiB3YWl0IG9uIDE4LCBhbm90aGVyIHNpZ25hbCBwb2ludDE3IGNvbWVz LCB0aGUgbmV3IHNlcXVlbmNlIGlzIGNoYW5nZWQgdG8gMTcsIGJ1dCB1c2VyQSBzdGlsbCBzZW5k IGl0cyBjb21tYW5kIGJ5IGFwcGVuZGluZyB3YWl0IG9uIHBvaW50MTgsIHdoaWNoIHdvdWxkIG5l dmVyIGJlIHNpZ25hbGVkIGlmIG5vIG1vcmUgc2lnbmFsIGNvbWVzLCByaWdodD8NCg0KLURhdmlk DQoNCkNocmlzdGlhbi4NCg0KDQpUaGFua3MsDQpEYXZpZA0KDQpNeSBjdXJyZW50IHNvbHV0aW9u IHRvIHRoYXQgaXMgd2hlbiB1c2Vyc3BhY2UgbWVzc2VzIHVwIHRoZSBzZXF1ZW5jZQ0KbnVtYmVy cyBhbmQgc3VibWl0IDEtMy02LTktMTItMTgtMTcgd2Ugc3RhcnQgYSBuZXcgY2hhaW4gd2l0aCAx NyBhbmQNCm5ldmVyIGxvb2sgYmFjay4NCg0KRS5nLiB3aGVuIHNvbWVib2R5IHRoZW4gYXNrcyBm b3IgYW55dGhpbmcgYmVsb3cgMTcgd2UgYWx3YXlzIHJldHVybiAxNw0KYW5kIGlmIHNvbWVib2R5 IGFza3MgZm9yIDE4IHdlIHJldHVybiBhbiBlcnJvciBiZWNhdXNlIHRoYXQgaXMgaGFuZGxlZA0K YXMgbm90IHNpZ25hbGVkIHlldC4NCg0KUmVnYXJkcywNCkNocmlzdGlhbi4NCg0KDQoNCi1EYXZp ZA0KDQoNCg0KVGhhbmtzLA0KQ2hyaXN0aWFuLg0KDQoNCg0KUmVnYXJkcywNCkNocmlzdGlhbi4N Cg0KDQoNCllvdSBjYW4gYWxzbyBjaGVjayBzd19zeW5jLmMgZm9yIHRpbWVsaW5lIG1lYW5pbmcu DQoNCi1EYXZpZA0KDQoNCkNocmlzdGlhbi4NCg0KDQoNCi1EYXZpZA0KDQoNCmIuIGdhcmJhZ2Ug Y29sbGVjdGlvbiBoYXBwZW5zIG9uIHBvaW50NiwgY2hhaW4gd291bGQgYmUgdXBkYXRlZCB0bw0K MS0tLTMtLS05LS0tMTItLS0xOC0tLTIwLCBpZiB1c2VyIHdhbnRzIHRvIGdldCBwb2ludDUsIHRo ZW4gd2UNCnNob3VsZCByZXR1cm4gbm9kZSAzLCBidXQgaWYgdXNlciB3YW50cyB0byBnZXQgcG9p bnQgNywgdGhlbiB3ZQ0Kc2hvdWxkIHJldHVybiBub2RlIDkuDQoNCg0KV2h5PyBUaGF0IGRvZXNu J3Qgc2VlbSB0byBtYWtlIGFueSBzZW5zZSB0byBtZS4NCg0KDQoNCkkgc3RpbGwgaGF2ZSBubyBp ZGVhIGhvdyB0byBzYXRpc2Z5IGFsbCB0aGVzZSByZXF1aXJlbWVudHMgd2l0aCB5b3VyDQpjdXJy ZW50IGNoYWluLWZlbmNlLiBBbGwgdGhlc2UgbG9naWMganVzdCBhcmUgc2FtZSB3ZSBlbmNvdW50 ZXJlZA0KYmVmb3JlLCB3ZSdyZSB3YWxraW5nIHRoZW0gYWdhaW4uIEFmdGVyIHNvbHZpbmcgdGhl c2UgcHJvYmxlbXMsIEkNCmd1ZXNzIGFsbCBkZXNpZ24gaXMgc2ltaWxhciBhcyBiZWZvcmUuDQoN CkluIGZhY3QsIEkgZG9uJ3Qga25vdyB3aGF0IHByb2JsZW0gcHJldmlvdXMgZGVzaWduIGhhcywg bWF5YmUgdGhlcmUNCmFyZSBzb21lIGJ1Z3MsIGNhbid0IHdlIGZpeCB0aGVzZSBidWdzIGJ5IHRp bWUgZ29pbmc/IFdobyBjYW4gbWFrZQ0Kc3VyZSBoaXMgaW1wbGVtZW50YXRpb24gbmV2ZXIgaGF2 ZSBidWdzPw0KDQoNCldlbGwgdGhlcmUgd2hlcmUgbnVtZXJvdXMgcHJvYmxlbXMgd2l0aCB0aGUg b3JpZ2luYWwgZGVzaWduLiBGb3INCmV4YW1wbGUgd2UgbmVlZCB0byByZWplY3QgdGhlIHJlcXVp cmVtZW50IHRoYXQgdGltZWxpbmUgZmVuY2VzIGFyZSBpbg0Kb3JkZXIgYmVjYXVzZSB0aGF0IGRv ZXNuJ3QgbWFrZSBzZW5zZSBpbiB0aGUga2VybmVsLg0KDQpXaGVuIHVzZXJzcGFjZSBkb2VzIHNv bWV0aGluZyBsaWtlIHN1Ym1pdHRpbmcgZmVuY2VzIGluIHRoZSBvcmRlciAxLA0KNSwgMyB0aGVu IGl0IGlzIGJyb2tlbiBhbmQgY2FuIGtlZXAgdGhlIHBpZWNlcy4gSW4gb3RoZXIgd29yZHMgdGhl DQprZXJuZWwgc2hvdWxkIG5vdCBjYXJlIGFib3V0IHRoYXQsIGJ1dCByYXRoZXIgbWFrZSBzdXJl IHRoYXQgaXQgbmV2ZXINCmxvb3NlcyBhbnkgc3luY2hyb25pemF0aW9uIG5vIG1hdHRlciB3aGF0 Lg0KDQpSZWdhcmRzLA0KQ2hyaXN0aWFuLg0KDQoNCg0KLURhdmlkDQoNCg0KKyAgICAgICAgfQ0K ICAgICAgICAgfQ0KKw0KICAgICAgICAgZHJtX3N5bmNvYmpfcHV0KHN5bmNvYmopOw0KICAgICAg ICAgcmV0dXJuIHJldDsNCiAgICAgfQ0KDQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fDQpkcmktZGV2ZWwgbWFpbGluZyBsaXN0DQpkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnPG1haWx0bzpkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Pg0KaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwNCg0KDQoNCg0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXw0KZHJpLWRldmVsIG1haWxpbmcgbGlzdA0KZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZzxtYWlsdG86ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZz4NCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsDQoNCg0KDQo= --_000_c602becd8c65bdff119b41bce93964e3amdcom_ Content-Type: text/html; charset="utf-8" Content-ID: <0351254CB4DE4148BACBC69053CF5B7D@namprd12.prod.outlook.com> Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHRleHQ9IiMwMDAwMDAi IGJnY29sb3I9IiNGRkZGRkYiPg0KPHA+PGJyPg0KPC9wPg0KPGJyPg0KPGRpdiBjbGFzcz0ibW96 LWNpdGUtcHJlZml4Ij7lnKggMjAxOC8xMS8yNCAyOjE2LCBDaHJpc3RpYW4gS8O2bmlnIOWGmemB kzo8YnI+DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNpdGU9Im1pZDplYzQwNWQ0 OC1jZGU3LTkwN2MtMWVlYy1kZjRhYzRlM2ExZTVAZ21haWwuY29tIj4NCjxkaXYgY2xhc3M9Im1v ei1jaXRlLXByZWZpeCI+QW0gMjMuMTEuMTggdW0gMTQ6NDIgc2NocmllYiBDaHVubWluZyBaaG91 Ojxicj4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2l0ZT0ibWlkOjY1OWM4YWI0 LTJkMzAtYmUxYi0yYjk2LTYyZjMzZTJlNDQ2MEBhbWQuY29tIj48YnI+DQo8YmxvY2txdW90ZSB0 eXBlPSJjaXRlIiBjaXRlPSJtaWQ6ZGZkOTQ3NmEtYjRjMS05NTFiLTZjZDktNjJiZmNlM2Y2MmUw QGFtZC5jb20iPg0KPHByZSB3cmFwPSIiPkJ1dCBJJ3ZlIGNhbWUgdXAgd2l0aCBzb21ldGhpbmcg d2hpY2ggc2hvdWxkIHdvcmsuIEFzc3VtZSB0aGUgb3JpZ2luYWwgDQpjaGFpbiBpczoNCg0KMS0t LS0zLS0tLTYtLS0tOS0tLS0xMi0tLTE4DQoNCkFuZCB3ZSBnYXJiYWdlIGNvbGxlY3QgZXZlcnl0 aGluZyBidXQgNiBhbmQgMTggdGhlbiBhbGwgd2UgbmVlZCB0byBrbm93IA0KdG8gcmV0dXJuIHRo ZSBjb3JyZWN0IG5vZGUgaXMgd2hhdCB0aGUgb3JpZ2luYWwgcHJldmlvdXMgc2VxdWVuY2UgbnVt YmVyIA0Kd2FzLg0KDQo2ICgzKS0tLS0xOCAoMTIpDQoNCldoZW4gdGhlbiBzb21lYm9keSBhc2tz IGZvciAxNyB3ZSBjYW4gc3RpbGwgcmV0dXJuIDE4IGFuZCBpZiBzb21lYm9keSANCmFza3MgZm9y IDkgd2Ugd291bGQgcmV0dXJuIDYuPC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQp0aGVuIHdoYXQgcG9p bnQgd2UgcmV0dXJuIHdoZW4gc29tZWJvZHkgYXNrcyBmb3IgMTE/PGJyPg0KPC9ibG9ja3F1b3Rl Pg0KPGJyPg0KSW4gdGhpcyBjYXNlIDYuIElmIDkgb3IgMTIgd291bGRuJ3QgYmUgc2lnbmFsZWQg eWV0IHRoYW4gdGhvc2UuPGJyPg0KPGJyPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2l0ZT0i bWlkOjY1OWM4YWI0LTJkMzAtYmUxYi0yYjk2LTYyZjMzZTJlNDQ2MEBhbWQuY29tIj48YnI+DQo8 YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjaXRlPSJtaWQ6ZGZkOTQ3NmEtYjRjMS05NTFiLTZjZDkt NjJiZmNlM2Y2MmUwQGFtZC5jb20iPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+DQo8cHJlIHdy YXA9IiI+QW5vdGhlciB1c2UgY2FzZSwgSSdtIG5vdCBzdXJlIGlmIHlvdSBjb25zaWRlcmVkOg0K aWYgY2hhaW4gaXMmbmJzcDsgMS0tLS0zLS0tLTYtLS0tOS0tLS0xMi0tLTE4LCBhIHdhaXQgb3Bl cmF0aW9uIGlzIG9uIHBvaW50DQoxNywgdGhlbiB3ZSByZXR1cm4gMTgsIGFub3RoZXIgc2lnbmFs IHBvaW50IDE3IGNvbWVzLCB0aGVuIHdlIHN0aWxsIHdhaXQNCm9uIDE4KGFzc3VtZSAxOCB0YWtl cyB2ZXJ5IGxvbmcgdGltZSksIHRoYXQgbG9va3Mgbm90IHJlc2VvbmFibGUsIGJ1dA0KdGhpcyBp cyBqdXN0IHBlcmZvcm1hbmNlIHByb2JsZW0gcG90aWVudGlhbGx5LiBTZWVtcyB0aGUgd2F5IG9m IHRpbWVsaW5lDQpzd19zeW5jLmMgd2l0aCBjb21wYXJpbmcgcG9pbnQgZm9yIHNpZ25hbCBzdGF0 dXMgY2FuIHNvdmxlIGl0Lg0KPC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8cHJlIHdyYXA9IiI+V2Vs bCBJIHRob3VnaHQgdGhhdCB3ZSBkZWNsYXJlZCB0aGF0IHNpZ25hbGluZyBsb3dlciBudW1iZXJz IGlzIGlsbGVnYWw/PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQpTb3JyeSwgSSBmb3Jnb3QgaXQsIHF1 b3RlIGZyb20gc3BlYzogJnF1b3Q7DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3Bhbj4qUkVTT0xW RUQqOiBBIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIHRoYXQgY2FuIG9ubHkgYmUgc2V0IHRvIG1v bm90b25pY2FsbHk8L3NwYW4+PC9wPg0KPHNwYW4+aW5jcmVhc2luZyB2YWx1ZXMgYnkgc2lnbmFs IG9wZXJhdGlvbnMgYW5kIGlzIG5vdCBjaGFuZ2VkIGJ5IHdhaXQgb3BlcmF0aW9ucy48L3NwYW4+ JnF1b3Q7PGJyPg0KPGJyPg0KQ2FuIHdlIHRoaW5rIHNpZ25hbGluZyBsb3dlciBudW1iZXJzIGlz IGZvcmJpZGRlbj88YnI+DQo8YnI+DQpJZiB0aGF0J3MgdHJ1ZSwgd2UgY2FuIGRpcmVjdGx5IGln bm9yZSBsb3dlciBudW1iZXIgYW5kIHJldHVybiB3aXRob3V0IGVycm9yLCBrZWVwIHRoZSBsYXJn ZXIgc2lnbmFsIHBvaW50Ljxicj4NCjwvYmxvY2txdW90ZT4NCjxicj4NCkkndmUgY29uc2lkZXJl ZCB0aGlzIGFzIHdlbGwsIGJ1dCBjYW1lIHRvIHRoZSBjb25jbHVzaW9uIHRoYXQgd2UgdGhlbiB3 b3VsZCBsb3NlIHNvbWUgc3luYyBmZW5jZS48YnI+DQo8YnI+DQpTdGFydGluZyBhIG5ldyBzZXF1 ZW5jZSB3aGVuIHVzZXJzcGFjZSBkb2VzIHRoYXQgaXMgdGhlIGJldHRlciBhbHRlcm5hdGl2ZSwg Y2F1c2UgdGhlbiB3ZSBhZ2FpbiBhbHdheXMgc3luYyB0byBtdWNoIGJ1dCBuZXZlciB0byBsZXNz Ljxicj4NCjwvYmxvY2txdW90ZT4NCkJ1dCB0aGF0IHdpbGwgbGVhZCB0aW1lbGluZSBub3QgbW9u b3RvbmljYWxseSBpbmNyZWFzaW5nLCB3b24ndCBpdD8gU2VlbXMgaXQncyBub3QgZ29vZC48YnI+ DQpXaGljaCBjb3VsZCByZXN1bHQgaW4gc29tZSBwcm9ibGVtcywgZS5nLiBpZiB0aW1lbGluZSBp cyBhbHJlYWR5IHVwIHRvIDE4LCB0aGVuIHVzZXJBIHRoaW5rIGhlIGNhbiB3YWl0IG9uIDE4LCBh bm90aGVyIHNpZ25hbCBwb2ludDE3IGNvbWVzLCB0aGUgbmV3IHNlcXVlbmNlIGlzIGNoYW5nZWQg dG8gMTcsIGJ1dCB1c2VyQSBzdGlsbCBzZW5kIGl0cyBjb21tYW5kIGJ5IGFwcGVuZGluZyB3YWl0 IG9uIHBvaW50MTgsIHdoaWNoIHdvdWxkIG5ldmVyDQogYmUgc2lnbmFsZWQgaWYgbm8gbW9yZSBz aWduYWwgY29tZXMsIHJpZ2h0Pzxicj4NCjxicj4NCi1EYXZpZDxicj4NCjxibG9ja3F1b3RlIHR5 cGU9ImNpdGUiIGNpdGU9Im1pZDplYzQwNWQ0OC1jZGU3LTkwN2MtMWVlYy1kZjRhYzRlM2ExZTVA Z21haWwuY29tIj4NCjxicj4NCkNocmlzdGlhbi48YnI+DQo8YnI+DQo8YmxvY2txdW90ZSB0eXBl PSJjaXRlIiBjaXRlPSJtaWQ6NjU5YzhhYjQtMmQzMC1iZTFiLTJiOTYtNjJmMzNlMmU0NDYwQGFt ZC5jb20iPjxicj4NClRoYW5rcyw8YnI+DQpEYXZpZDxicj4NCjxibG9ja3F1b3RlIHR5cGU9ImNp dGUiIGNpdGU9Im1pZDpkZmQ5NDc2YS1iNGMxLTk1MWItNmNkOS02MmJmY2UzZjYyZTBAYW1kLmNv bSI+DQo8cHJlIHdyYXA9IiI+TXkgY3VycmVudCBzb2x1dGlvbiB0byB0aGF0IGlzIHdoZW4gdXNl cnNwYWNlIG1lc3NlcyB1cCB0aGUgc2VxdWVuY2UgDQpudW1iZXJzIGFuZCBzdWJtaXQgMS0zLTYt OS0xMi0xOC0xNyB3ZSBzdGFydCBhIG5ldyBjaGFpbiB3aXRoIDE3IGFuZCANCm5ldmVyIGxvb2sg YmFjay4NCg0KRS5nLiB3aGVuIHNvbWVib2R5IHRoZW4gYXNrcyBmb3IgYW55dGhpbmcgYmVsb3cg MTcgd2UgYWx3YXlzIHJldHVybiAxNyANCmFuZCBpZiBzb21lYm9keSBhc2tzIGZvciAxOCB3ZSBy ZXR1cm4gYW4gZXJyb3IgYmVjYXVzZSB0aGF0IGlzIGhhbmRsZWQgDQphcyBub3Qgc2lnbmFsZWQg eWV0Lg0KDQpSZWdhcmRzLA0KQ2hyaXN0aWFuLg0KDQo8L3ByZT4NCjxibG9ja3F1b3RlIHR5cGU9 ImNpdGUiPg0KPHByZSB3cmFwPSIiPi1EYXZpZA0KDQo8L3ByZT4NCjxibG9ja3F1b3RlIHR5cGU9 ImNpdGUiPg0KPHByZSB3cmFwPSIiPlRoYW5rcywNCkNocmlzdGlhbi4NCg0KPC9wcmU+DQo8Ymxv Y2txdW90ZSB0eXBlPSJjaXRlIj4NCjxwcmUgd3JhcD0iIj5SZWdhcmRzLA0KQ2hyaXN0aWFuLg0K DQo8L3ByZT4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiPg0KPHByZSB3cmFwPSIiPllvdSBjYW4g YWxzbyBjaGVjayBzd19zeW5jLmMgZm9yIHRpbWVsaW5lIG1lYW5pbmcuDQoNCi1EYXZpZA0KPC9w cmU+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIj4NCjxwcmUgd3JhcD0iIj5DaHJpc3RpYW4uDQoN CjwvcHJlPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+DQo8cHJlIHdyYXA9IiI+LURhdmlkDQo8 L3ByZT4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+ DQo8cHJlIHdyYXA9IiI+Yi4gZ2FyYmFnZSBjb2xsZWN0aW9uIGhhcHBlbnMgb24gcG9pbnQ2LCBj aGFpbiB3b3VsZCBiZSB1cGRhdGVkIHRvDQoxLS0tMy0tLTktLS0xMi0tLTE4LS0tMjAsIGlmIHVz ZXIgd2FudHMgdG8gZ2V0IHBvaW50NSwgdGhlbiB3ZQ0Kc2hvdWxkIHJldHVybiBub2RlIDMsIGJ1 dCBpZiB1c2VyIHdhbnRzIHRvIGdldCBwb2ludCA3LCB0aGVuIHdlDQpzaG91bGQgcmV0dXJuIG5v ZGUgOS4NCjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0KPHByZSB3cmFwPSIiPldoeT8gVGhhdCBkb2Vz bid0IHNlZW0gdG8gbWFrZSBhbnkgc2Vuc2UgdG8gbWUuDQoNCjwvcHJlPg0KPGJsb2NrcXVvdGUg dHlwZT0iY2l0ZSI+DQo8cHJlIHdyYXA9IiI+SSBzdGlsbCBoYXZlIG5vIGlkZWEgaG93IHRvIHNh dGlzZnkgYWxsIHRoZXNlIHJlcXVpcmVtZW50cyB3aXRoIHlvdXINCmN1cnJlbnQgY2hhaW4tZmVu Y2UuIEFsbCB0aGVzZSBsb2dpYyBqdXN0IGFyZSBzYW1lIHdlIGVuY291bnRlcmVkDQpiZWZvcmUs IHdlJ3JlIHdhbGtpbmcgdGhlbSBhZ2Fpbi4gQWZ0ZXIgc29sdmluZyB0aGVzZSBwcm9ibGVtcywg SQ0KZ3Vlc3MgYWxsIGRlc2lnbiBpcyBzaW1pbGFyIGFzIGJlZm9yZS4NCg0KSW4gZmFjdCwgSSBk b24ndCBrbm93IHdoYXQgcHJvYmxlbSBwcmV2aW91cyBkZXNpZ24gaGFzLCBtYXliZSB0aGVyZQ0K YXJlIHNvbWUgYnVncywgY2FuJ3Qgd2UgZml4IHRoZXNlIGJ1Z3MgYnkgdGltZSBnb2luZz8gV2hv IGNhbiBtYWtlDQpzdXJlIGhpcyBpbXBsZW1lbnRhdGlvbiBuZXZlciBoYXZlIGJ1Z3M/DQo8L3By ZT4NCjwvYmxvY2txdW90ZT4NCjxwcmUgd3JhcD0iIj5XZWxsIHRoZXJlIHdoZXJlIG51bWVyb3Vz IHByb2JsZW1zIHdpdGggdGhlIG9yaWdpbmFsIGRlc2lnbi4gRm9yDQpleGFtcGxlIHdlIG5lZWQg dG8gcmVqZWN0IHRoZSByZXF1aXJlbWVudCB0aGF0IHRpbWVsaW5lIGZlbmNlcyBhcmUgaW4NCm9y ZGVyIGJlY2F1c2UgdGhhdCBkb2Vzbid0IG1ha2Ugc2Vuc2UgaW4gdGhlIGtlcm5lbC4NCg0KV2hl biB1c2Vyc3BhY2UgZG9lcyBzb21ldGhpbmcgbGlrZSBzdWJtaXR0aW5nIGZlbmNlcyBpbiB0aGUg b3JkZXIgMSwNCjUsIDMgdGhlbiBpdCBpcyBicm9rZW4gYW5kIGNhbiBrZWVwIHRoZSBwaWVjZXMu IEluIG90aGVyIHdvcmRzIHRoZQ0Ka2VybmVsIHNob3VsZCBub3QgY2FyZSBhYm91dCB0aGF0LCBi dXQgcmF0aGVyIG1ha2Ugc3VyZSB0aGF0IGl0IG5ldmVyDQpsb29zZXMgYW55IHN5bmNocm9uaXph dGlvbiBubyBtYXR0ZXIgd2hhdC4NCg0KUmVnYXJkcywNCkNocmlzdGlhbi4NCg0KPC9wcmU+DQo8 YmxvY2txdW90ZSB0eXBlPSJjaXRlIj4NCjxwcmUgd3JhcD0iIj4tRGF2aWQNCjwvcHJlPg0KPGJs b2NrcXVvdGUgdHlwZT0iY2l0ZSI+DQo8cHJlIHdyYXA9IiI+JiM0MzsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfQ0KICAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgfQ0KJiM0MzsNCiAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGRybV9zeW5jb2JqX3B1dChzeW5jb2JqKTsNCiAgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IHJldHVybiByZXQ7DQogICZuYnNwOyZuYnNwOyB9DQo8L3ByZT4NCjwvYmxv Y2txdW90ZT4NCjwvYmxvY2txdW90ZT4NCjwvYmxvY2txdW90ZT4NCjwvYmxvY2txdW90ZT4NCjwv YmxvY2txdW90ZT4NCjxwcmUgd3JhcD0iIj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXw0KZHJpLWRldmVsIG1haWxpbmcgbGlzdA0KPGEgY2xhc3M9Im1vei10 eHQtbGluay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmciIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSI+ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNr dG9wLm9yZzwvYT4NCjxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhyZWY9Imh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsIiBtb3ot ZG8tbm90LXNlbmQ9InRydWUiPmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsPC9hPg0KPC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8L2Jsb2NrcXVv dGU+DQo8L2Jsb2NrcXVvdGU+DQo8L2Jsb2NrcXVvdGU+DQo8L2Jsb2NrcXVvdGU+DQo8YnI+DQo8 YnI+DQo8ZmllbGRzZXQgY2xhc3M9Im1pbWVBdHRhY2htZW50SGVhZGVyIj48L2ZpZWxkc2V0Pg0K PHByZSBjbGFzcz0ibW96LXF1b3RlLXByZSIgd3JhcD0iIj5fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXw0KZHJpLWRldmVsIG1haWxpbmcgbGlzdA0KPGEgY2xh c3M9Im1vei10eHQtbGluay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOmRyaS1kZXZlbEBsaXN0 cy5mcmVlZGVza3RvcC5vcmciIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSI+ZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZzwvYT4NCjxhIGNsYXNzPSJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhy ZWY9Imh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRl dmVsIiBtb3otZG8tbm90LXNlbmQ9InRydWUiPmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsPC9hPg0KPC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8 YnI+DQo8L2Jsb2NrcXVvdGU+DQo8YnI+DQo8L2JvZHk+DQo8L2h0bWw+DQo= --_000_c602becd8c65bdff119b41bce93964e3amdcom_-- --===============1737852588== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1737852588==--