From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web12.1742.1579056250407566159 for ; Tue, 14 Jan 2020 18:44:10 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: jiewen.yao@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Jan 2020 18:44:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,321,1574150400"; d="scan'208,217";a="217966954" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga008.jf.intel.com with ESMTP; 14 Jan 2020 18:44:09 -0800 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 14 Jan 2020 18:44:09 -0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.202]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.197]) with mapi id 14.03.0439.000; Wed, 15 Jan 2020 10:44:07 +0800 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "bret.barkelew@microsoft.com" Subject: Re: UnitTests + Rust = <3 Thread-Topic: UnitTests + Rust = <3 Thread-Index: AQHVy0Xs2JdSnQc2UUSp+0wt18hk66fq+dRw Date: Wed, 15 Jan 2020 02:44:06 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C503F8DFFAE@shsmsx102.ccr.corp.intel.com> References: In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiM2FlMzA3ZTMtODdiZS00YmVmLWEwYTUtN2E2NThhMjU4OWRkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiNTQ2bXhIOFhzbDhDZ01JaXBpaTBKSUFcLzJlM2pNaHM5dG9vWWVnbGdFWGdGRjAxSjMxWXhcL3VCSWFBQUdFWklSIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-01-15T01:47:45.3654952Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Privileged x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: jiewen.yao@intel.com Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_74D8A39837DF1E4DA445A8C0B3885C503F8DFFAEshsmsx102ccrcor_" --_000_74D8A39837DF1E4DA445A8C0B3885C503F8DFFAEshsmsx102ccrcor_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SEkgQnJldA0KVGhhdCBpcyBhd2Vzb21lLg0KSSBhbSBhbHNvIGV4Y2l0ZWQgdG8gc2VlIHRoYXQu DQoNCkkgcmVhbGx5IGxpa2UgdGhlIHJ1c3QgdW5pdCB0ZXN0IGlkZWEgYmVjYXVzZSB0aGUgZnJh bWV3b3JrIGlzIGVtYmVkZGVkIGluIHRoZSBsYW5ndWFnZSBhbmQgY29tcGlsZXIuDQpUaGF0IGlz IHBlcmZlY3QgZXhhbXBsZSB0byBkZW1vbnN0cmF0ZSB0aGUgdmFsdWUgb2YgcnVzdCBmb3IgRURL SUkuIOKYug0KDQpJIGhhdmUgYSBxdWljayBsb29rIGF0IHRoZSBjb2RlLiBIZXJlIGlzIG15IHRo b3VnaHQ6DQoxKSBhYm91dCB0aGUgIndpbjY0IiB1c2FnZS4NCkkgdGhpbmsgdGhpcyBtYXkgYnJl YWsgdGhlIGNvbXBpbGF0aW9uIHdpdGggb3RoZXIgYXJjaGl0ZWN0dXJlIHN1Y2ggYXMgSUEzMiwg YW5kIExpbnV4IGVudmlyb25tZW50Lg0KSSBhbSBub3Qgc3VyZSB3aGljaCB0YXJnZXQgeW91IHVz ZS4gSWYgeW91IHVzZSB4ODZfNjQtdW5rbm93bi11ZWZpLCB5b3UgbWF5IHJlbW92ZSB0aGlzIGZs YWcuDQoNCjIpIGFib3V0IGludGVncmF0aW9uIHRlc3QuDQpCZXNpZGVzIHVuaXQgdGVzdCwgd2Ug Y2FuIGFsc28gY3JlYXRlIHRoZSDigJx0ZXN0c+KAnSBkaXIgZm9yIGludGVncmF0aW9uIHRlc3Qg Zm9yIG1vcmUgY29tcGxpY2F0ZWQgZnVuY3Rpb24gY2FsbC4NClRoYXQgaXMgYWxzbyBzdXBwb3J0 ZWQgYnkgcnVzdCBsYW5ndWFnZS4NCg0KVGhhbmsgeW91DQpZYW8gSmlld2VuDQoNCkZyb206IGRl dmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEJy ZXQgQmFya2VsZXcgdmlhIEdyb3Vwcy5Jbw0KU2VudDogV2VkbmVzZGF5LCBKYW51YXJ5IDE1LCAy MDIwIDk6NTYgQU0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KU3ViamVjdDogW2VkazItZGV2 ZWxdIFVuaXRUZXN0cyArIFJ1c3QgPSA8Mw0KDQpXaGF04oCZcyBiZXR0ZXIgdGhhbiBVbml0VGVz dHMgYWxtb3N0IGJlaW5nIHJlYWR5IGZvciBkZXBsb3ltZW50IGluIFRpYW5vQ29yZT8NCkhvdyBh Ym91dCB1c2luZyB0aG9zZSBVbml0VGVzdHMgdG8gdmFsaWRhdGUgYSBuYXRpdmUgUnVzdCBwb3J0 IG9mIG9uZSBvZiBvdXIgVmFyQ2hlY2sgbGlicz8NCg0KQnVpbGRpbmcgdXBvbiBKaWV3ZW7igJlz IHdvcmsgKGFtb25nIG90aGVycykgSeKAmXZlIGZpbmFsbHkgbWFuYWdlZCB0byBwcm90b3R5cGUg YSBwb3J0IG9mIHRoZSBVZWZpVmFyaWFibGVQb2xpY3lMaWIgdG8gUnVzdCwgYW5kIGhhdmUgc2hv d24gdGhhdCBpdCBjYW4gYnVpbGQgYXMgcGFydCBvZiBvdXIgbm9ybWFsIENJIHByb2Nlc3MgYW5k IHJ1biB0aGUgc2FtZSBVbml0VGVzdHMgdGhhdCBhcmUgdXNlZCBmb3IgdGhlIEMgdmVyc2lvbuKA pg0KaHR0cHM6Ly9naXRodWIuY29tL2NvcnRob24vZWRrMi1zdGFnaW5nL3RyZWUvcnVzdF9hbmRf dGVzdHMNCg0KVGhlcmUgaXMgYSBSZWFkbWUubWQgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IHdpdGgg YSDigJxOb3RlcyBmb3IgdGhpcyBicmFuY2jigJ0gc2VjdGlvbi4gQWxsIG9mIHRob3NlIHN0ZXBz IGFyZSBpbXBvcnRhbnQgdG8gZ2V0IFJ1c3Qgc2V0IHVwIGNvcnJlY3RseS4NCllvdSBjYW4gcnVu IGEgQ0kgYnVpbGQgb2YgTWRlTW9kdWxlUGtnIHdpdGggdGhlIOKAnC10IE5PT1BU4oCdIHRhcmdl dCBhbmQgaXQgd2lsbCBidWlsZCB0aGUgVW5pdFRlc3RzLiBJdCB3aWxsIGJ1aWxkIG9uZSB2ZXJz aW9uIGFnYWluc3QgdGhlIEMgbGlicmFyeSwgYW5kIGFub3RoZXIgYWdhaW5zdCB0aGUgUnVzdCBs aWJyYXJ5Lg0KDQpZb3UgY2FuIGFsc28gcnVuIG5hdGl2ZSBSdXN0IHRlc3QgY2FzZXMgYnkgZ29p bmcgdG8gaHR0cHM6Ly9naXRodWIuY29tL2NvcnRob24vZWRrMi1zdGFnaW5nL3RyZWUvcnVzdF9h bmRfdGVzdHMvTWRlTW9kdWxlUGtnL0xpYnJhcnkvVWVmaVZhcmlhYmxlUG9saWN5TGliUnVzdA0K QW5kIHJ1bm5pbmcg4oCcY2FyZ28gdGVzdOKAnS4NCg0KSSBhY2tub3dsZWRnZSB0aGF0IHRoaXMg Y29kZSBpcyBhIGxpdHRsZSByb3VnaC4gSXTigJlzIGRlZmluaXRlbHkgYSBwcm90b3R5cGUsIGJ1 dCBvbmUgdGhhdCBJ4oCZbSBleGNpdGVkIGFib3V0IGFuZCB0aGluZyB0aGF0IGl0IGNhbiBiZSB1 c2VkIGFzIGEgcGF0dGVybiBmb3IgaW50ZXJvcCB3aXRoIG90aGVyIGNvcmUgbGlicmFyaWVzLg0K SSBldmVuIGZvdW5kIGEgY291cGxlIHNtYWxsIGJ1Z3MgaW4gdGhlIG9yaWdpbmFsIGxpYnJhcnkg dGhyb3VnaCB0aGUgcHJvY2VzcyBvZiBwb3J0aW5nIHRvIFJ1c3QsIHNpbmNlIFJ1c3QgaXMgc28g cGVkYW50aWMgYWJvdXQgY292ZXJpbmcgYWxsIHBvc3NpYmxlIGNhc2VzLg0KDQpBbnl3YXksIHN1 cGVyIGludGVyZXN0ZWQgaW4gYW55IGZlZWRiYWNrIG9yIGFkdmljZSBmb3IgaW1wcm92ZW1lbnQu IPCfmIoNCg0KLSBCcmV0DQoNClBTLiBUaGFua3MgYWdhaW4sIEppZXdlbiwgZm9yIGxheWluZyB0 aGUgZ3JvdW5kd29yay4gSeKAmXZlIHNlZW4gc2V2ZXJhbCBvZiB5b3VyIGNvbnRyaWJ1dGlvbnMg dG8gUnVzdCBhbmQgdGhlIFVFRkkgcHJvdG90eXBlIHdoaWxlIHdvcmtpbmcgb24gdGhpcy4NCg0K --_000_74D8A39837DF1E4DA445A8C0B3885C503F8DFFAEshsmsx102ccrcor_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6eD0idXJuOnNjaGVtYXMtbWljcm9z b2Z0LWNvbTpvZmZpY2U6ZXhjZWwiIHhtbG5zOm09Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5j b20vb2ZmaWNlLzIwMDQvMTIvb21tbCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1o dG1sNDAiPg0KPGhlYWQ+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9 InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0b3IiIGNvbnRl bnQ9Ik1pY3Jvc29mdCBXb3JkIDE1IChmaWx0ZXJlZCBtZWRpdW0pIj4NCjwhLS1baWYgIW1zb10+ PHN0eWxlPnZcOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30NCm9cOioge2JlaGF2aW9y OnVybCgjZGVmYXVsdCNWTUwpO30NCndcOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30N Ci5zaGFwZSB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0KPC9zdHlsZT48IVtlbmRpZl0t LT48c3R5bGU+PCEtLQ0KLyogRm9udCBEZWZpbml0aW9ucyAqLw0KQGZvbnQtZmFjZQ0KCXtmb250 LWZhbWlseTpXaW5nZGluZ3M7DQoJcGFub3NlLTE6NSAwIDAgMCAwIDAgMCAwIDAgMDt9DQpAZm9u dC1mYWNlDQoJe2ZvbnQtZmFtaWx5OlNpbVN1bjsNCglwYW5vc2UtMToyIDEgNiAwIDMgMSAxIDEg MSAxO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7DQoJcGFub3Nl LTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGli cmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250 LWZhbWlseToiXEBTaW1TdW4iOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KQGZv bnQtZmFjZQ0KCXtmb250LWZhbWlseToiU2Vnb2UgVUkiOw0KCXBhbm9zZS0xOjIgMTEgNSAyIDQg MiA0IDIgMiAzO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q29uc29sYXM7DQoJcGFub3Nl LTE6MiAxMSA2IDkgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiU2Vn b2UgVUkgRW1vamkiOw0KCXBhbm9zZS0xOjIgMTEgNSAyIDQgMiA0IDIgMiAzO30NCi8qIFN0eWxl IERlZmluaXRpb25zICovDQpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFs DQoJe21hcmdpbjowaW47DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMS4w cHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7fQ0KYTpsaW5rLCBzcGFuLk1z b0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0 LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xs b3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Izk1NEY3MjsNCgl0ZXh0LWRl Y29yYXRpb246dW5kZXJsaW5lO30NCnAubXNvbm9ybWFsMCwgbGkubXNvbm9ybWFsMCwgZGl2Lm1z b25vcm1hbDANCgl7bXNvLXN0eWxlLW5hbWU6bXNvbm9ybWFsOw0KCW1zby1tYXJnaW4tdG9wLWFs dDphdXRvOw0KCW1hcmdpbi1yaWdodDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87 DQoJbWFyZ2luLWxlZnQ6MGluOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNh bGlicmkiLHNhbnMtc2VyaWY7fQ0Kc3Bhbi5FbWFpbFN0eWxlMTkNCgl7bXNvLXN0eWxlLXR5cGU6 cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJY29s b3I6d2luZG93dGV4dDt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQt b25seTsNCglmb250LXNpemU6MTAuMHB0O30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXplOjgu NWluIDExLjBpbjsNCgltYXJnaW46MS4waW4gMS4waW4gMS4waW4gMS4waW47fQ0KZGl2LldvcmRT ZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1z byA5XT48eG1sPg0KPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIg Lz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVs YXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8 L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5nPSJF Ti1VUyIgbGluaz0iYmx1ZSIgdmxpbms9IiM5NTRGNzIiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rp b24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkhJIEJyZXQ8bzpwPjwvbzpwPjwvcD4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPlRoYXQgaXMgYXdlc29tZS48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPkkgYW0gYWxzbyBleGNpdGVkIHRvIHNlZSB0aGF0LjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj5JIHJlYWxseSBsaWtlIHRoZSBydXN0IHVuaXQgdGVzdCBpZGVhIGJlY2F1c2Ug dGhlIGZyYW1ld29yayBpcyBlbWJlZGRlZCBpbiB0aGUgbGFuZ3VhZ2UgYW5kIGNvbXBpbGVyLjxv OnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhhdCBpcyBwZXJmZWN0IGV4YW1w bGUgdG8gZGVtb25zdHJhdGUgdGhlIHZhbHVlIG9mIHJ1c3QgZm9yIEVES0lJLg0KPHNwYW4gc3R5 bGU9ImZvbnQtZmFtaWx5OldpbmdkaW5ncyI+Sjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h bCI+SSBoYXZlIGEgcXVpY2sgbG9vayBhdCB0aGUgY29kZS4gSGVyZSBpcyBteSB0aG91Z2h0Ojxv OnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+MSkgYWJvdXQgdGhlICZxdW90O3dp bjY0JnF1b3Q7IHVzYWdlLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+SSB0 aGluayB0aGlzIG1heSBicmVhayB0aGUgY29tcGlsYXRpb24gd2l0aCBvdGhlciBhcmNoaXRlY3R1 cmUgc3VjaCBhcyBJQTMyLCBhbmQgTGludXggZW52aXJvbm1lbnQuPG86cD48L286cD48L3A+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj5JIGFtIG5vdCBzdXJlIHdoaWNoIHRhcmdldCB5b3UgdXNlLiBJ ZiB5b3UgdXNlIDxzcGFuIHN0eWxlPSJmb250LXNpemU6OS41cHQ7Zm9udC1mYW1pbHk6Q29uc29s YXM7Y29sb3I6YmxhY2siPg0KeDg2XzY0LXVua25vd24tdWVmaTwvc3Bhbj4sIHlvdSBtYXkgcmVt b3ZlIHRoaXMgZmxhZy48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+ Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+MikgYWJvdXQgaW50ZWdyYXRp b24gdGVzdC48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkJlc2lkZXMgdW5p dCB0ZXN0LCB3ZSBjYW4gYWxzbyBjcmVhdGUgdGhlIOKAnHRlc3Rz4oCdIGRpciBmb3IgaW50ZWdy YXRpb24gdGVzdCBmb3IgbW9yZSBjb21wbGljYXRlZCBmdW5jdGlvbiBjYWxsLjxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhhdCBpcyBhbHNvIHN1cHBvcnRlZCBieSBydXN0 IGxhbmd1YWdlLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJz cDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5UaGFuayB5b3U8bzpwPjwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPllhbyBKaWV3ZW48bzpwPjwvbzpwPjwvcD4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXYgc3R5bGU9 ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0 IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxhIG5hbWU9Il9fX19fcmVwbHlz ZXBhcmF0b3IiPjwvYT48Yj5Gcm9tOjwvYj4gZGV2ZWxAZWRrMi5ncm91cHMuaW8gJmx0O2RldmVs QGVkazIuZ3JvdXBzLmlvJmd0Ow0KPGI+T24gQmVoYWxmIE9mIDwvYj5CcmV0IEJhcmtlbGV3IHZp YSBHcm91cHMuSW88YnI+DQo8Yj5TZW50OjwvYj4gV2VkbmVzZGF5LCBKYW51YXJ5IDE1LCAyMDIw IDk6NTYgQU08YnI+DQo8Yj5Ubzo8L2I+IGRldmVsQGVkazIuZ3JvdXBzLmlvPGJyPg0KPGI+U3Vi amVjdDo8L2I+IFtlZGsyLWRldmVsXSBVbml0VGVzdHMgJiM0MzsgUnVzdCA9ICZsdDszPG86cD48 L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJz cDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5XaGF04oCZcyBiZXR0ZXIgdGhhbiBV bml0VGVzdHMgYWxtb3N0IGJlaW5nIHJlYWR5IGZvciBkZXBsb3ltZW50IGluIFRpYW5vQ29yZT88 bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkhvdyBhYm91dCB1c2luZyB0aG9z ZSBVbml0VGVzdHMgdG8gdmFsaWRhdGUgYSBuYXRpdmUgUnVzdCBwb3J0IG9mIG9uZSBvZiBvdXIg VmFyQ2hlY2sgbGlicz88bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+ Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QnVpbGRpbmcgdXBvbiBKaWV3 ZW7igJlzIHdvcmsgKGFtb25nIG90aGVycykgSeKAmXZlIGZpbmFsbHkgbWFuYWdlZCB0byBwcm90 b3R5cGUgYSBwb3J0IG9mIHRoZSBVZWZpVmFyaWFibGVQb2xpY3lMaWIgdG8gUnVzdCwgYW5kIGhh dmUgc2hvd24gdGhhdCBpdCBjYW4gYnVpbGQgYXMgcGFydCBvZiBvdXIgbm9ybWFsIENJIHByb2Nl c3MgYW5kIHJ1biB0aGUgc2FtZSBVbml0VGVzdHMgdGhhdCBhcmUgdXNlZCBmb3IgdGhlDQogQyB2 ZXJzaW9u4oCmPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls ZT0iZm9udC1zaXplOjEwLjVwdDtmb250LWZhbWlseTomcXVvdDtTZWdvZSBVSSZxdW90OyxzYW5z LXNlcmlmIj48YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vY29ydGhvbi9lZGsyLXN0YWdpbmcv dHJlZS9ydXN0X2FuZF90ZXN0cyIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJodHRwczovL2dpdGh1 Yi5jb20vY29ydGhvbi9lZGsyLXN0YWdpbmcvdHJlZS9ydXN0X2FuZF90ZXN0cyI+aHR0cHM6Ly9n aXRodWIuY29tL2NvcnRob24vZWRrMi1zdGFnaW5nL3RyZWUvcnVzdF9hbmRfdGVzdHM8L2E+PG86 cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286 cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5UaGVyZSBpcyBhIFJlYWRtZS5tZCBpbiB0aGUg cm9vdCBkaXJlY3Rvcnkgd2l0aCBhIOKAnE5vdGVzIGZvciB0aGlzIGJyYW5jaOKAnSBzZWN0aW9u LiBBbGwgb2YgdGhvc2Ugc3RlcHMgYXJlIGltcG9ydGFudCB0byBnZXQgUnVzdCBzZXQgdXAgY29y cmVjdGx5LjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+WW91IGNhbiBydW4g YSBDSSBidWlsZCBvZiBNZGVNb2R1bGVQa2cgd2l0aCB0aGUg4oCcLXQgTk9PUFTigJ0gdGFyZ2V0 IGFuZCBpdCB3aWxsIGJ1aWxkIHRoZSBVbml0VGVzdHMuIEl0IHdpbGwgYnVpbGQgb25lIHZlcnNp b24gYWdhaW5zdCB0aGUgQyBsaWJyYXJ5LCBhbmQgYW5vdGhlciBhZ2FpbnN0IHRoZSBSdXN0IGxp YnJhcnkuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwv bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPllvdSBjYW4gYWxzbyBydW4gbmF0aXZlIFJ1 c3QgdGVzdCBjYXNlcyBieSBnb2luZyB0byA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vY29y dGhvbi9lZGsyLXN0YWdpbmcvdHJlZS9ydXN0X2FuZF90ZXN0cy9NZGVNb2R1bGVQa2cvTGlicmFy eS9VZWZpVmFyaWFibGVQb2xpY3lMaWJSdXN0Ij4NCmh0dHBzOi8vZ2l0aHViLmNvbS9jb3J0aG9u L2VkazItc3RhZ2luZy90cmVlL3J1c3RfYW5kX3Rlc3RzL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1Vl ZmlWYXJpYWJsZVBvbGljeUxpYlJ1c3Q8L2E+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj5BbmQgcnVubmluZyDigJxjYXJnbyB0ZXN04oCdLjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9y bWFsIj5JIGFja25vd2xlZGdlIHRoYXQgdGhpcyBjb2RlIGlzIGEgbGl0dGxlIHJvdWdoLiBJdOKA mXMgZGVmaW5pdGVseSBhIHByb3RvdHlwZSwgYnV0IG9uZSB0aGF0IEnigJltIGV4Y2l0ZWQgYWJv dXQgYW5kIHRoaW5nIHRoYXQgaXQgY2FuIGJlIHVzZWQgYXMgYSBwYXR0ZXJuIGZvciBpbnRlcm9w IHdpdGggb3RoZXIgY29yZSBsaWJyYXJpZXMuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj5JIGV2ZW4gZm91bmQgYSBjb3VwbGUgc21hbGwgYnVncyBpbiB0aGUgb3JpZ2luYWwg bGlicmFyeSB0aHJvdWdoIHRoZSBwcm9jZXNzIG9mIHBvcnRpbmcgdG8gUnVzdCwgc2luY2UgUnVz dCBpcyBzbyBwZWRhbnRpYyBhYm91dCBjb3ZlcmluZyBhbGwgcG9zc2libGUgY2FzZXMuPG86cD48 L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPkFueXdheSwgc3VwZXIgaW50ZXJlc3RlZCBpbiBhbnkgZmVlZGJh Y2sgb3IgYWR2aWNlIGZvciBpbXByb3ZlbWVudC4NCjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTom cXVvdDtTZWdvZSBVSSBFbW9qaSZxdW90OyxzYW5zLXNlcmlmIj7wn5iKPC9zcGFuPjxvOnA+PC9v OnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIj4tIEJyZXQ8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt YWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+UFMuIFRoYW5r cyBhZ2FpbiwgSmlld2VuLCBmb3IgbGF5aW5nIHRoZSBncm91bmR3b3JrLiBJ4oCZdmUgc2VlbiBz ZXZlcmFsIG9mIHlvdXIgY29udHJpYnV0aW9ucyB0byBSdXN0IGFuZCB0aGUgVUVGSSBwcm90b3R5 cGUgd2hpbGUgd29ya2luZyBvbiB0aGlzLjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0K PC9odG1sPg0K --_000_74D8A39837DF1E4DA445A8C0B3885C503F8DFFAEshsmsx102ccrcor_--