Return-Path: From: Trond Myklebust To: Coddington Benjamin CC: Schumaker Anna , List Linux NFS Mailing , Oleg Drokin Subject: Re: [PATCH v7 13/31] NFSv4.1: Ensure we always run TEST/FREE_STATEID on locks Date: Mon, 7 Nov 2016 14:59:39 +0000 Message-ID: <6ABCDB9B-997E-49C1-9363-D59AF9BEC0E9@primarydata.com> References: <1474565961-21303-1-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-2-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-3-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-4-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-5-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-6-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-7-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-8-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-9-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-10-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-11-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-12-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-13-git-send-email-trond.myklebust@primarydata.com> <1474565961-21303-14-git-send-email-trond.myklebust@primarydata.com> <599EE56B-46DD-411B-805D-11C2FB5E30A4@redhat.com> <34B1D68A-1A1C-4B59-A19E-467D48F7A9D0@redhat.com> In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="_000_6ABCDB9B997E49C19363D59AF9BEC0E9primarydatacom_" List-ID: --_000_6ABCDB9B997E49C19363D59AF9BEC0E9primarydatacom_ Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 DQpPbiBOb3YgNywgMjAxNiwgYXQgMDk6NTAsIEJlbmphbWluIENvZGRpbmd0b24gPGJjb2RkaW5n QHJlZGhhdC5jb208bWFpbHRvOmJjb2RkaW5nQHJlZGhhdC5jb20+PiB3cm90ZToNCg0KDQoNCk9u IDcgTm92IDIwMTYsIGF0IDg6NDUsIEJlbmphbWluIENvZGRpbmd0b24gd3JvdGU6DQoNCg0KT24g NyBOb3YgMjAxNiwgYXQgODowOSwgQmVuamFtaW4gQ29kZGluZ3RvbiB3cm90ZToNCg0KT24gNCBO b3YgMjAxNiwgYXQgMTI6MDIsIEJlbmphbWluIENvZGRpbmd0b24gd3JvdGU6DQoNCkhpIFRyb25k LA0KDQpPbiAyMiBTZXAgMjAxNiwgYXQgMTM6MzksIFRyb25kIE15a2xlYnVzdCB3cm90ZToNCg0K UmlnaHQgbm93LCB3ZSdyZSBvbmx5IHJ1bm5pbmcgVEVTVC9GUkVFX1NUQVRFSUQgb24gdGhlIGxv Y2tzIGlmDQp0aGUgb3BlbiBzdGF0ZWlkIHJlY292ZXJ5IHN1Y2NlZWRzLiBUaGUgcHJvdG9jb2wg cmVxdWlyZXMgdXMgdG8NCmFsd2F5cyBkbyBzby4NClRoZSBmaXggd291bGQgYmUgdG8gbW92ZSB0 aGUgY2FsbCB0byBURVNUL0ZSRUVfU1RBVEVJRCBhbmQgZG8gaXQNCmJlZm9yZSB3ZSBhdHRlbXB0 IG9wZW4gcmVjb3ZlcnkuDQoNClNpZ25lZC1vZmYtYnk6IFRyb25kIE15a2xlYnVzdCA8dHJvbmQu bXlrbGVidXN0QHByaW1hcnlkYXRhLmNvbTxtYWlsdG86dHJvbmQubXlrbGVidXN0QHByaW1hcnlk YXRhLmNvbT4+DQotLS0NCmZzL25mcy9uZnM0cHJvYy5jIHwgOTIgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KMSBmaWxlIGNoYW5nZWQsIDUy IGluc2VydGlvbnMoKyksIDQwIGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZnMvbmZzL25m czRwcm9jLmMgYi9mcy9uZnMvbmZzNHByb2MuYw0KaW5kZXggM2MxYjhjYjdkZDk1Li4zM2NhNmQ3 NjhiZDIgMTAwNjQ0DQotLS0gYS9mcy9uZnMvbmZzNHByb2MuYw0KKysrIGIvZnMvbmZzL25mczRw cm9jLmMNCkBAIC0yNDg2LDYgKzI0ODYsNDUgQEAgc3RhdGljIHZvaWQgbmZzNDFfY2hlY2tfZGVs ZWdhdGlvbl9zdGF0ZWlkKHN0cnVjdCBuZnM0X3N0YXRlICpzdGF0ZSkNCn0NCg0KLyoqDQorICog bmZzNDFfY2hlY2tfZXhwaXJlZF9sb2NrcyAtIHBvc3NpYmx5IGZyZWUgYSBsb2NrIHN0YXRlaWQN CisgKg0KKyAqIEBzdGF0ZTogTkZTdjQgc3RhdGUgZm9yIGFuIGlub2RlDQorICoNCisgKiBSZXR1 cm5zIE5GU19PSyBpZiByZWNvdmVyeSBmb3IgdGhpcyBzdGF0ZWlkIGlzIG5vdyBmaW5pc2hlZC4N CisgKiBPdGhlcndpc2UgYSBuZWdhdGl2ZSBORlM0RVJSIHZhbHVlIGlzIHJldHVybmVkLg0KKyAq Lw0KK3N0YXRpYyBpbnQgbmZzNDFfY2hlY2tfZXhwaXJlZF9sb2NrcyhzdHJ1Y3QgbmZzNF9zdGF0 ZSAqc3RhdGUpDQorew0KKyBpbnQgc3RhdHVzLCByZXQgPSBORlNfT0s7DQorIHN0cnVjdCBuZnM0 X2xvY2tfc3RhdGUgKmxzcDsNCisgc3RydWN0IG5mc19zZXJ2ZXIgKnNlcnZlciA9IE5GU19TRVJW RVIoc3RhdGUtPmlub2RlKTsNCisNCisgaWYgKCF0ZXN0X2JpdChMS19TVEFURV9JTl9VU0UsICZz dGF0ZS0+ZmxhZ3MpKQ0KKyBnb3RvIG91dDsNCisgbGlzdF9mb3JfZWFjaF9lbnRyeShsc3AsICZz dGF0ZS0+bG9ja19zdGF0ZXMsIGxzX2xvY2tzKSB7DQorIGlmICh0ZXN0X2JpdChORlNfTE9DS19J TklUSUFMSVpFRCwgJmxzcC0+bHNfZmxhZ3MpKSB7DQoNCkkgYmlzZWN0ZWQgYSBjcmFzaCB0byB0 aGlzIHBhdGNoIChjb21taXQgYzU4OTZmYzg2MjJkNTdiMzFlMWU5ODU0NWQ2N2Q3MDg5MDE5ZTQ3 OCkuDQpJIHRob3VnaHQgdGhlIHByb2JsZW0gd2FzIHRoYXQgdGhpcyBwYXRjaCBtb3ZlZCB0aGlz IHBhdGggb3V0IGZyb20gdW5kZXIgdGhlDQpuZnNpLT5yd3NlbSBpbiBuZnM0X3JlY2xhaW1fbG9j a3MoKSBzbyBpdCBlbmRzIHVwIHdpdGggYSBmcmVlZA0KbmZzNF9sb2NrX3N0YXRlIGhlcmUuDQoN CkkgY2FuIHJlcHJvZHVjZSB0aGlzIHdpdGggZ2VuZXJpYy8wODkuICBBbnkgaWRlYXM/DQoNCkhp dCB0aGlzIG9uIHY0LjktcmM0IHRoaXMgbW9ybmluZy4gIFRoaXMgcHJvYmFibHkgbmVlZHMgdG8g dGFrZSB0aGUNCnN0YXRlX2xvY2sgYmVmb3JlIHRyYXZlcnNpbmcgdGhlIGxvY2tfc3RhdGVzIGxp c3QuICBJIGd1ZXNzIHdlJ3ZlIG5ldmVyIGhpdA0KdGhpcyBiZWZvcmUgYmVjYXVzZSB0aGUgb2xk IHBhdGggd291bGQgc2VyaWFsaXplIHRoaW5ncyBzb21laG93IC0gbWF5YmUgdmlhDQp0YWtpbmcg ZmxjX2xvY2sgaW4gbmZzNF9yZWNsYWltX2xvY2tzKCkuLiAgIEknbGwgdGVzdCB0aGF0IGZpeC4N Cg0KV2VsbCwgdGhhdCdzIG5vIGdvb2QgZWl0aGVyIGFzIGl0IGdldHMgc3R1Y2sgaW4gYSBORlM0 RVJSX09MRF9TVEFURUlEIGxvb3ANCmluIHJlY292ZXJ5IHNpbmNlIHdlJ2Qgd2FudCB0byByZXRy eSBpbiB0aGF0IGNhc2UsIGJ1dCB0YWtpbmcgdGhlIHN0YXRlX2xvY2sNCm1lYW5zIHdlIHdvbid0 IHVzZSB0aGUgbmV3IHN0YXRlaWQuICBTbyBtYXliZSB3ZSBuZWVkIGJvdGggdGhlIHN0YXRlX2xv Y2sgdG8NCnByb3RlY3QgdGhlIGxpc3QgYW5kIHRoZSByd3NlbSB0byBzdG9wIG5ldyBsb2NrcyBm cm9tIGJlaW5nIHNlbnQuICBJJ2xsIHRyeQ0KdGhhdCBub3cuDQoNClRoYXQgb25lIGdvdCBtdWNo IGZ1cnRoZXIsIGJ1dCBldmVudHVhbGx5IHNvZnQtbG9ja2VkIHVwIG9uIHRoZSBzdGF0ZV9sb2Nr DQp3aGVuIHdoYXQgbG9va3MgbGlrZSB0aGUgc3RhdGUgbWFuYWdlciBuZWVkZWQgdG8gaGF2ZSBh IFRFU1RfU1RBVEVJRCB3YWl0IG9uDQphbm90aGVyIGxvY2sgdG8gY29tcGxldGUuDQoNClRoZSBv dGhlciBxdWVzdGlvbiBoZXJlIGlzIHdoeSBhcmUgd2UgZG9pbmcgcmVjb3Zlcnkgc28gbXVjaD8g IEl0IHNlZW1zIGxpa2UNCndlJ3JlIHNlbmRpbmcgRlJFRV9TVEFURUlEIHVubmVjZXNzYXJpbHkg b24gc3VjY2Vzc2Z1bCBERUxFR1JFVFVSTiBhbmQNCkxPQ0tVLCBidXQgdGhhdCBzaG91bGRuJ3Qg YmUgdHJpZ2dlcmluZyBzdGF0ZSByZWNvdmVyeS4uDQoNCg0KRlJFRV9TVEFURUlEIGlzIHJlcXVp cmVkIGJ5IHRoZSBwcm90b2NvbCBhZnRlciBMT0NLVSwgc28gdGhhdOKAmXMgaW50ZW50aW9uYWwu IEl0IGlzbuKAmXQgbmVlZGVkIGFmdGVyIERFTEVHUkVUVVJOLCBzbyBJ4oCZbSBub3Qgc3VyZSB3 aHkgdGhhdCBpcyBoYXBwZW5pbmcuDQoNCg== --_000_6ABCDB9B997E49C19363D59AF9BEC0E9primarydatacom_ Content-Type: text/html; charset=UTF-8 Content-ID: Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgLXdlYmtpdC1saW5lLWJy ZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPGRpdj4N CjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj5PbiBOb3Yg NywgMjAxNiwgYXQgMDk6NTAsIEJlbmphbWluIENvZGRpbmd0b24gJmx0OzxhIGhyZWY9Im1haWx0 bzpiY29kZGluZ0ByZWRoYXQuY29tIiBjbGFzcz0iIj5iY29kZGluZ0ByZWRoYXQuY29tPC9hPiZn dDsgd3JvdGU6PC9kaXY+DQo8YnIgY2xhc3M9IkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPg0K PGRpdiBjbGFzcz0iIj48YnIgc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6 ZTogMTJweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBm b250LXdlaWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiBhdXRv OyB0ZXh0LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5v bmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogYXV0bzsgd29yZC1zcGFjaW5nOiAwcHg7 IC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsiIGNsYXNzPSIiPg0KPGJyIHN0eWxlPSJm b250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1h bDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVy LXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQt aW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3 aWRvd3M6IGF1dG87IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRo OiAwcHg7IiBjbGFzcz0iIj4NCjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBm b250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5v cm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFu czogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNm b3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IGF1dG87IHdvcmQtc3BhY2lu ZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IGZsb2F0OiBub25lOyBkaXNw bGF5OiBpbmxpbmUgIWltcG9ydGFudDsiIGNsYXNzPSIiPk9uDQogNyBOb3YgMjAxNiwgYXQgODo0 NSwgQmVuamFtaW4gQ29kZGluZ3RvbiB3cm90ZTo8L3NwYW4+PGJyIHN0eWxlPSJmb250LWZhbWls eTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12 YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6 IG5vcm1hbDsgb3JwaGFuczogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAw cHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IGF1 dG87IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IiBj bGFzcz0iIj4NCjxiciBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAx MnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQt d2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRl eHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsg d2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdl YmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyIgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSB0eXBl PSJjaXRlIiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBm b250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0 OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRleHQtYWxp Z246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUt c3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10 ZXh0LXNpemUtYWRqdXN0OiBhdXRvOyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IiBj bGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCk9uIDcgTm92IDIwMTYsIGF0IDg6MDksIEJlbmphbWlu IENvZGRpbmd0b24gd3JvdGU6PGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPGJsb2NrcXVv dGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+T24gNCBOb3YgMjAxNiwgYXQgMTI6MDIsIEJlbmphbWlu IENvZGRpbmd0b24gd3JvdGU6PGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPGJsb2NrcXVv dGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+SGkgVHJvbmQsPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNz PSIiPg0KT24gMjIgU2VwIDIwMTYsIGF0IDEzOjM5LCBUcm9uZCBNeWtsZWJ1c3Qgd3JvdGU6PGJy IGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2xhc3M9 IiI+UmlnaHQgbm93LCB3ZSdyZSBvbmx5IHJ1bm5pbmcgVEVTVC9GUkVFX1NUQVRFSUQgb24gdGhl IGxvY2tzIGlmPGJyIGNsYXNzPSIiPg0KdGhlIG9wZW4gc3RhdGVpZCByZWNvdmVyeSBzdWNjZWVk cy4gVGhlIHByb3RvY29sIHJlcXVpcmVzIHVzIHRvPGJyIGNsYXNzPSIiPg0KYWx3YXlzIGRvIHNv LjxiciBjbGFzcz0iIj4NClRoZSBmaXggd291bGQgYmUgdG8gbW92ZSB0aGUgY2FsbCB0byBURVNU L0ZSRUVfU1RBVEVJRCBhbmQgZG8gaXQ8YnIgY2xhc3M9IiI+DQpiZWZvcmUgd2UgYXR0ZW1wdCBv cGVuIHJlY292ZXJ5LjxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NClNpZ25lZC1vZmYtYnk6 IFRyb25kIE15a2xlYnVzdCAmbHQ7PGEgaHJlZj0ibWFpbHRvOnRyb25kLm15a2xlYnVzdEBwcmlt YXJ5ZGF0YS5jb20iIGNsYXNzPSIiPnRyb25kLm15a2xlYnVzdEBwcmltYXJ5ZGF0YS5jb208L2E+ Jmd0OzxiciBjbGFzcz0iIj4NCi0tLTxiciBjbGFzcz0iIj4NCmZzL25mcy9uZnM0cHJvYy5jIHwg OTIgJiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQz OyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0Mzsm IzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOyYjNDM7JiM0MzstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS08YnIgY2xhc3M9IiI+DQoxIGZpbGUgY2hhbmdlZCwgNTIgaW5zZXJ0aW9ucygm IzQzOyksIDQwIGRlbGV0aW9ucygtKTxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCmRpZmYg LS1naXQgYS9mcy9uZnMvbmZzNHByb2MuYyBiL2ZzL25mcy9uZnM0cHJvYy5jPGJyIGNsYXNzPSIi Pg0KaW5kZXggM2MxYjhjYjdkZDk1Li4zM2NhNmQ3NjhiZDIgMTAwNjQ0PGJyIGNsYXNzPSIiPg0K LS0tIGEvZnMvbmZzL25mczRwcm9jLmM8YnIgY2xhc3M9IiI+DQomIzQzOyYjNDM7JiM0MzsgYi9m cy9uZnMvbmZzNHByb2MuYzxiciBjbGFzcz0iIj4NCkBAIC0yNDg2LDYgJiM0MzsyNDg2LDQ1IEBA IHN0YXRpYyB2b2lkIG5mczQxX2NoZWNrX2RlbGVnYXRpb25fc3RhdGVpZChzdHJ1Y3QgbmZzNF9z dGF0ZSAqc3RhdGUpPGJyIGNsYXNzPSIiPg0KfTxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4N Ci8qKjxiciBjbGFzcz0iIj4NCiYjNDM7ICogbmZzNDFfY2hlY2tfZXhwaXJlZF9sb2NrcyAtIHBv c3NpYmx5IGZyZWUgYSBsb2NrIHN0YXRlaWQ8YnIgY2xhc3M9IiI+DQomIzQzOyAqPGJyIGNsYXNz PSIiPg0KJiM0MzsgKiBAc3RhdGU6IE5GU3Y0IHN0YXRlIGZvciBhbiBpbm9kZTxiciBjbGFzcz0i Ij4NCiYjNDM7ICo8YnIgY2xhc3M9IiI+DQomIzQzOyAqIFJldHVybnMgTkZTX09LIGlmIHJlY292 ZXJ5IGZvciB0aGlzIHN0YXRlaWQgaXMgbm93IGZpbmlzaGVkLjxiciBjbGFzcz0iIj4NCiYjNDM7 ICogT3RoZXJ3aXNlIGEgbmVnYXRpdmUgTkZTNEVSUiB2YWx1ZSBpcyByZXR1cm5lZC48YnIgY2xh c3M9IiI+DQomIzQzOyAqLzxiciBjbGFzcz0iIj4NCiYjNDM7c3RhdGljIGludCBuZnM0MV9jaGVj a19leHBpcmVkX2xvY2tzKHN0cnVjdCBuZnM0X3N0YXRlICpzdGF0ZSk8YnIgY2xhc3M9IiI+DQom IzQzO3s8YnIgY2xhc3M9IiI+DQomIzQzOzxzcGFuIGNsYXNzPSJBcHBsZS10YWItc3BhbiIgc3R5 bGU9IndoaXRlLXNwYWNlOiBwcmU7Ij4gPC9zcGFuPmludCBzdGF0dXMsIHJldCA9IE5GU19PSzs8 YnIgY2xhc3M9IiI+DQomIzQzOzxzcGFuIGNsYXNzPSJBcHBsZS10YWItc3BhbiIgc3R5bGU9Indo aXRlLXNwYWNlOiBwcmU7Ij4gPC9zcGFuPnN0cnVjdCBuZnM0X2xvY2tfc3RhdGUgKmxzcDs8YnIg Y2xhc3M9IiI+DQomIzQzOzxzcGFuIGNsYXNzPSJBcHBsZS10YWItc3BhbiIgc3R5bGU9IndoaXRl LXNwYWNlOiBwcmU7Ij4gPC9zcGFuPnN0cnVjdCBuZnNfc2VydmVyICpzZXJ2ZXIgPSBORlNfU0VS VkVSKHN0YXRlLSZndDtpbm9kZSk7PGJyIGNsYXNzPSIiPg0KJiM0Mzs8YnIgY2xhc3M9IiI+DQom IzQzOzxzcGFuIGNsYXNzPSJBcHBsZS10YWItc3BhbiIgc3R5bGU9IndoaXRlLXNwYWNlOiBwcmU7 Ij4gPC9zcGFuPmlmICghdGVzdF9iaXQoTEtfU1RBVEVfSU5fVVNFLCAmYW1wO3N0YXRlLSZndDtm bGFncykpPGJyIGNsYXNzPSIiPg0KJiM0Mzs8c3BhbiBjbGFzcz0iQXBwbGUtdGFiLXNwYW4iIHN0 eWxlPSJ3aGl0ZS1zcGFjZTogcHJlOyI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iQXBwbGUtdGFiLXNw YW4iIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlOyI+PC9zcGFuPmdvdG8gb3V0OzxiciBjbGFzcz0i Ij4NCiYjNDM7PHNwYW4gY2xhc3M9IkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0id2hpdGUtc3BhY2U6 IHByZTsiPiA8L3NwYW4+bGlzdF9mb3JfZWFjaF9lbnRyeShsc3AsICZhbXA7c3RhdGUtJmd0O2xv Y2tfc3RhdGVzLCBsc19sb2NrcykgezxiciBjbGFzcz0iIj4NCiYjNDM7PHNwYW4gY2xhc3M9IkFw cGxlLXRhYi1zcGFuIiBzdHlsZT0id2hpdGUtc3BhY2U6IHByZTsiPiA8L3NwYW4+PHNwYW4gY2xh c3M9IkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0id2hpdGUtc3BhY2U6IHByZTsiPjwvc3Bhbj5pZiAo dGVzdF9iaXQoTkZTX0xPQ0tfSU5JVElBTElaRUQsICZhbXA7bHNwLSZndDtsc19mbGFncykpIHs8 YnIgY2xhc3M9IiI+DQo8L2Jsb2NrcXVvdGU+DQo8YnIgY2xhc3M9IiI+DQpJIGJpc2VjdGVkIGEg Y3Jhc2ggdG8gdGhpcyBwYXRjaCAoY29tbWl0IGM1ODk2ZmM4NjIyZDU3YjMxZTFlOTg1NDVkNjdk NzA4OTAxOWU0NzgpLjxiciBjbGFzcz0iIj4NCkkgdGhvdWdodCB0aGUgcHJvYmxlbSB3YXMgdGhh dCB0aGlzIHBhdGNoIG1vdmVkIHRoaXMgcGF0aCBvdXQgZnJvbSB1bmRlciB0aGU8YnIgY2xhc3M9 IiI+DQpuZnNpLSZndDtyd3NlbSBpbiBuZnM0X3JlY2xhaW1fbG9ja3MoKSBzbyBpdCBlbmRzIHVw IHdpdGggYSBmcmVlZDxiciBjbGFzcz0iIj4NCm5mczRfbG9ja19zdGF0ZSBoZXJlLjxiciBjbGFz cz0iIj4NCjxiciBjbGFzcz0iIj4NCkkgY2FuIHJlcHJvZHVjZSB0aGlzIHdpdGggZ2VuZXJpYy8w ODkuICZuYnNwO0FueSBpZGVhcz88YnIgY2xhc3M9IiI+DQo8L2Jsb2NrcXVvdGU+DQo8YnIgY2xh c3M9IiI+DQpIaXQgdGhpcyBvbiB2NC45LXJjNCB0aGlzIG1vcm5pbmcuICZuYnNwO1RoaXMgcHJv YmFibHkgbmVlZHMgdG8gdGFrZSB0aGU8YnIgY2xhc3M9IiI+DQpzdGF0ZV9sb2NrIGJlZm9yZSB0 cmF2ZXJzaW5nIHRoZSBsb2NrX3N0YXRlcyBsaXN0LiAmbmJzcDtJIGd1ZXNzIHdlJ3ZlIG5ldmVy IGhpdDxiciBjbGFzcz0iIj4NCnRoaXMgYmVmb3JlIGJlY2F1c2UgdGhlIG9sZCBwYXRoIHdvdWxk IHNlcmlhbGl6ZSB0aGluZ3Mgc29tZWhvdyAtIG1heWJlIHZpYTxiciBjbGFzcz0iIj4NCnRha2lu ZyBmbGNfbG9jayBpbiBuZnM0X3JlY2xhaW1fbG9ja3MoKS4uICZuYnNwOyZuYnNwO0knbGwgdGVz dCB0aGF0IGZpeC48YnIgY2xhc3M9IiI+DQo8L2Jsb2NrcXVvdGU+DQo8YnIgY2xhc3M9IiI+DQpX ZWxsLCB0aGF0J3Mgbm8gZ29vZCBlaXRoZXIgYXMgaXQgZ2V0cyBzdHVjayBpbiBhIE5GUzRFUlJf T0xEX1NUQVRFSUQgbG9vcDxiciBjbGFzcz0iIj4NCmluIHJlY292ZXJ5IHNpbmNlIHdlJ2Qgd2Fu dCB0byByZXRyeSBpbiB0aGF0IGNhc2UsIGJ1dCB0YWtpbmcgdGhlIHN0YXRlX2xvY2s8YnIgY2xh c3M9IiI+DQptZWFucyB3ZSB3b24ndCB1c2UgdGhlIG5ldyBzdGF0ZWlkLiAmbmJzcDtTbyBtYXli ZSB3ZSBuZWVkIGJvdGggdGhlIHN0YXRlX2xvY2sgdG88YnIgY2xhc3M9IiI+DQpwcm90ZWN0IHRo ZSBsaXN0IGFuZCB0aGUgcndzZW0gdG8gc3RvcCBuZXcgbG9ja3MgZnJvbSBiZWluZyBzZW50LiAm bmJzcDtJJ2xsIHRyeTxiciBjbGFzcz0iIj4NCnRoYXQgbm93LjxiciBjbGFzcz0iIj4NCjwvYmxv Y2txdW90ZT4NCjxiciBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAx MnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQt d2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRl eHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsg d2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdl YmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyIgY2xhc3M9IiI+DQo8c3BhbiBzdHlsZT0iZm9u dC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBmb250LXN0eWxlOiBub3JtYWw7 IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1z cGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWlu ZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lk b3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDog MHB4OyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IiBjbGFzcz0iIj5U aGF0DQogb25lIGdvdCBtdWNoIGZ1cnRoZXIsIGJ1dCBldmVudHVhbGx5IHNvZnQtbG9ja2VkIHVw IG9uIHRoZSBzdGF0ZV9sb2NrPC9zcGFuPjxiciBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGlj YTsgZm9udC1zaXplOiAxMnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBz OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9y cGhhbnM6IGF1dG87IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRy YW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNw YWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyIgY2xhc3M9IiI+DQo8 c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBmb250 LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBu b3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRleHQtYWxpZ246 IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3Bh Y2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0 LXN0cm9rZS13aWR0aDogMHB4OyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRh bnQ7IiBjbGFzcz0iIj53aGVuDQogd2hhdCBsb29rcyBsaWtlIHRoZSBzdGF0ZSBtYW5hZ2VyIG5l ZWRlZCB0byBoYXZlIGEgVEVTVF9TVEFURUlEIHdhaXQgb248L3NwYW4+PGJyIHN0eWxlPSJmb250 LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsg Zm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNw YWNpbmc6IG5vcm1hbDsgb3JwaGFuczogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5k ZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRv d3M6IGF1dG87IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAw cHg7IiBjbGFzcz0iIj4NCjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250 LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1h bDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczog YXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3Jt OiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IGF1dG87IHdvcmQtc3BhY2luZzog MHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IGZsb2F0OiBub25lOyBkaXNwbGF5 OiBpbmxpbmUgIWltcG9ydGFudDsiIGNsYXNzPSIiPmFub3RoZXINCiBsb2NrIHRvIGNvbXBsZXRl Ljwvc3Bhbj48YnIgc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJw eDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsOyBmb250LXdl aWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBvcnBoYW5zOiBhdXRvOyB0ZXh0 LWFsaWduOiBzdGFydDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IHdo aXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogYXV0bzsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJr aXQtdGV4dC1zdHJva2Utd2lkdGg6IDBweDsiIGNsYXNzPSIiPg0KPGJyIHN0eWxlPSJmb250LWZh bWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9u dC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNp bmc6IG5vcm1hbDsgb3JwaGFuczogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50 OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6 IGF1dG87IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7 IiBjbGFzcz0iIj4NCjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNp emU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsg Zm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogYXV0 bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBu b25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IGF1dG87IHdvcmQtc3BhY2luZzogMHB4 OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBp bmxpbmUgIWltcG9ydGFudDsiIGNsYXNzPSIiPlRoZQ0KIG90aGVyIHF1ZXN0aW9uIGhlcmUgaXMg d2h5IGFyZSB3ZSBkb2luZyByZWNvdmVyeSBzbyBtdWNoPyAmbmJzcDtJdCBzZWVtcyBsaWtlPC9z cGFuPjxiciBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBm b250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0 OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRleHQtYWxp Z246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUt c3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBhdXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10 ZXh0LXN0cm9rZS13aWR0aDogMHB4OyIgY2xhc3M9IiI+DQo8c3BhbiBzdHlsZT0iZm9udC1mYW1p bHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQt dmFyaWFudC1jYXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5n OiBub3JtYWw7IG9ycGhhbnM6IGF1dG87IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDog MHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd2lkb3dzOiBh dXRvOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aWR0aDogMHB4OyBm bG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IiBjbGFzcz0iIj53ZSdyZQ0K IHNlbmRpbmcgRlJFRV9TVEFURUlEIHVubmVjZXNzYXJpbHkgb24gc3VjY2Vzc2Z1bCBERUxFR1JF VFVSTiBhbmQ8L3NwYW4+PGJyIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNp emU6IDEycHg7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsg Zm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogYXV0 bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBu b25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IGF1dG87IHdvcmQtc3BhY2luZzogMHB4 OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAwcHg7IiBjbGFzcz0iIj4NCjxzcGFuIHN0eWxl PSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGZvbnQtc3R5bGU6IG5v cm1hbDsgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGV0 dGVyLXNwYWNpbmc6IG5vcm1hbDsgb3JwaGFuczogYXV0bzsgdGV4dC1hbGlnbjogc3RhcnQ7IHRl eHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFs OyB3aWRvd3M6IGF1dG87IHdvcmQtc3BhY2luZzogMHB4OyAtd2Via2l0LXRleHQtc3Ryb2tlLXdp ZHRoOiAwcHg7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsiIGNsYXNz PSIiPkxPQ0tVLA0KIGJ1dCB0aGF0IHNob3VsZG4ndCBiZSB0cmlnZ2VyaW5nIHN0YXRlIHJlY292 ZXJ5Li48L3NwYW4+PC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rpdj4NCjxiciBjbGFzcz0iIj4N CjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPkZSRUVf U1RBVEVJRCBpcyByZXF1aXJlZCBieSB0aGUgcHJvdG9jb2wgYWZ0ZXIgTE9DS1UsIHNvIHRoYXTi gJlzIGludGVudGlvbmFsLiBJdCBpc27igJl0IG5lZWRlZCBhZnRlciBERUxFR1JFVFVSTiwgc28g SeKAmW0gbm90IHN1cmUgd2h5IHRoYXQgaXMgaGFwcGVuaW5nLjwvZGl2Pg0KPGRpdiBjbGFzcz0i Ij48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg== --_000_6ABCDB9B997E49C19363D59AF9BEC0E9primarydatacom_--