From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hongyang Yang Subject: Re: [PATCH v18 00/11] Remus/Libxl: Remus network buffering and drbd disk Date: Thu, 7 Aug 2014 09:17:09 +0800 Message-ID: <53E2D395.20403@cn.fujitsu.com> References: <1406539445-12708-1-git-send-email-yanghy@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1406539445-12708-1-git-send-email-yanghy@cn.fujitsu.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: ian.campbell@citrix.com, wency@cn.fujitsu.com, andrew.cooper3@citrix.com, yunhong.jiang@intel.com, eddie.dong@intel.com, rshriram@cs.ubc.ca, ian.jackson@eu.citrix.com, laijs@cn.fujitsu.com List-Id: xen-devel@lists.xenproject.org UGluZyEKCuWcqCAwNy8yOC8yMDE0IDA1OjIzIFBNLCBZYW5nIEhvbmd5YW5nIOWGmemBkzoKPiBU aGlzIHBhdGNoIHNlcmllcyBhZGRzIHN1cHBvcnQgZm9yIG5ldHdvcmsgYnVmZmVyaW5nIGFuZCBk cmJkIGRpc2sKPiBpbiB0aGUgUmVtdXMgY29kZWJhc2UgaW4gbGlieGwuCj4KPiB0aGUgY29kZSBp cyBhbHNvIGhvc3RlZCBvbiBnaXRodWI6Cj4gdXJsOiBodHRwczovL2dpdGh1Yi5jb20vbWFjcm9z aGVlcC94ZW4vdHJlZS9yZW11cy12MTgKPgo+IENoYW5nZXMgaW4gdjE4Ogo+ICAgIE1lcmdlIG1h dGNoKCkgYW5kIHNldHVwKCkgYXBpLgo+ICAgIFJldXNlIGxpYnhsX19tdWx0aWRldiBhbmQgbGli eGxfX2FvX2RldmljZS4KPiAgICBDb21taXQgbWVzc2FnZXMgYW5kIGNvZGUgY29tbWVudHMgaW1w cm92ZWQuIFRoYW5rcyB0byBTaHJpcmFtLgo+ICAgIFJlYmFzZWQuCj4KPiBDaGFuZ2VzIGluIHYx NzoKPiAgICBNYWtlIHJlbXVzIGRldmljZSBhYnN0cmFjdCBsYXllciBtb3JlIGdlbmVyaWMuCj4g ICAgQWRkcmVzc2VkIElhbiBKJ3MgY29tbWVudHMuCj4KPiBDaGFuZ2VzIGluIHYxNjoKPiAgICBN ZXJnZSBsaWJ4bF9fcmVtdXNfc3RhdGUgYW5kIGxpYnhsX19yZW11c19kZXZpY2Vfc3RhdGUuCj4g ICAgUGFzcyB0aGUgb3BzIHRvIGRldmljZSBhYnN0cmFjdCBsYXllciBpbnN0ZWFkIG9mIGRlZmlu ZWQgaXQgaW4gdGhlIGxheWVyLgo+ICAgIE9wdGltaXplZCBzdWJraW5kIG9wcyBBUElzLgo+ICAg IEFkZHJlc3NlZCBJYW4gSidzIGNvbW1lbnRzLgo+ICAgIFJlYmFzZWQuCj4KPiBDaGFuZ2VzIGlu IHYxNToKPiAgICBUaGUgZmlyc3QgcGF0Y2ggaW4gdjE0IGhhcyBiZWVuIHRha2VuLCBzbyByZW1v dmUgaXQgZnJvbSB0aGUgcGF0Y2hzZXQuCj4gICAgQWRkIGEgcGF0Y2ggdG8gVXBkYXRlIG1haW50 YWluZWQgZmlsZXMgb2YgUkVNVVMuCj4gICAgUmViYXNlZC4KPgo+IENoYW5nZXMgaW4gdjE0Ogo+ ICAgIEFkZHJlc3NlZCBJYW5KJ3MgY29tbWVudHMuCj4gICAgUmViYXNlZC4KPgo+IENoYW5nZXMg aW4gdjEzOgo+ICAgIEFkZHJlc3NlZCBLb25yYWQncyBjb21tZW50cy4KPiAgICBSZWJhc2VkLgo+ Cj4gQ2hhbmdlcyBpbiB2MTI6Cj4gICAgQWRkIGRpc2sgYnVmZmVyaW5nIGNtZGxpbmUgc3dpdGNo Lgo+Cj4gQ2hhbmdlcyBpbiB2MTE6Cj4gICAgQWRkcmVzc2VkIGNvbW1lbnRzIGZyb20gSWFuIEog YW5kIFNocmlyYW0uCj4gICAgQWRkIGRyYmQgZGlzayBpbXBsZW1lbnQgaW50byB0aGlzIHBhdGNo IHNlcmllcy4KPgo+IENoYW5nZXMgaW4gVjEwOgo+ICAgIFJlc3RydWN0dXJlZCB0aGUgd2hvbGUg cGF0Y2ggc2VyaWVzLgo+ICAgIEludHJvZHVjZSB0aGUgcmVtdXMgZGV2aWNlIGFic3RyYWN0IGxh eWVyLgo+ICAgIE1ha2UgcmVtdXMgY2hlY2twb2ludCBhc3luY2hyb25vdXMuCj4KPiBDaGFuZ2Vz IGluIFY5Ogo+ICAgIFVzZSBhc3luYyBleGVjIHNjcmlwdCBhcGkgdG8gZXhlYyBzY3JpcHRzLgo+ Cj4gQ2hhbmdlcyBpbiBWODoKPiAgICBBcHBsaWVkIHNvbWUgY29tbWVudHMoYnkgSWFuSikuCj4g ICAgTWVyZ2Ugc29tZSBzdHJ1Y3QgZGVmaW5pdGlvbnMgdG8gaXQncyBpbXBsZW1lbnRhdGlvbi4K PiAgICAoMi8zLzUgaW4gVjcgPT4gMyBpbiBWOCkKPgo+IENoYW5nZXMgaW4gVjc6Cj4gICAgQXBw bGllZCBtaXNzaW5nIGNvbW1lbnRzKGJ5IElhbkopLgo+ICAgIEFwcGxpZWQgU2hyaXJhbSBjb21t ZW50cy4KPgo+ICAgIG1lcmdlIG5ldGJ1ZmVyaW5nIHRhbmdsZWQgc2V0dXAvdGVhcmRvd24gY29k ZSBpbnRvIG9uZSBwYXRjaC4KPiAgICAoMi82LzggaW4gVjYgPT4gNSBpbiBWNy4gOS8xMCBpbiBW NiA9PiA3IGluIFY3KQo+Cj4gQ2hhbmdlcyBpbiBWNjoKPiAgICBBcHBsaWVkIElhbiBKYWNrc29u J3MgY29tbWVudHMgb2YgVjUgc2VyaWVzLgo+ICAgIHRoZSBbUEFUQ0ggMi80IFY1XSBpcyBzcGxp dCBieSBzbWFsbCBmdW5jdGlvbmFsaXRpZXMuCj4KPiAgICBbUEFUQ0ggNC80IFY1XSAtLT4gW1BB VENIIDEzLzEzXSBuZXRidWZmZXIgaXMgZGVmYXVsdCBlbmFibGVkLgo+Cj4gQ2hhbmdlcyBpbiBW NToKPgo+IE1lcmdlIGhvdHBsdWcgc2NyaXB0IHBhdGNoICgyLzUpIGFuZCBob3RwbHVnIHNjcmlw dCBzZXR1cC90ZWFyZG93bgo+IHBhdGNoICgzLzUpIGludG8gYSBzaW5nbGUgcGF0Y2guCj4KPiBD aGFuZ2VzIGluIFY0Ogo+Cj4gWzEvNV0gUmVtb3ZlIGNoZWNrIGZvciBsaWJubCBjb21tYW5kIGxp bmUgdXRpbHMgaW4gYXV0b2NvbmYgY2hlY2tzCj4KPiBbMi81XSBtaW5vciBuaXRzCj4KPiBbMy81 XSBkZWZpbmUgTElCWExfSEFWRV9SRU1VU19ORVRCVUYgaW4gbGlieGwuaAo+Cj4gWzQvNV0gY2xl YW4gdXBzLiBNYWtlIHRoZSB1c2xlZXAgaW4gY2hlY2twb2ludCBjYWxsYmFjayBhc3luY2hyb25v dXMKPgo+IFs1LzVdIG1pbm9yIG5pdHMKPgo+IENoYW5nZXMgaW4gVjM6Cj4gWzEvNV0gRml4IHJl ZHVuZGFudCBjaGVja3MgaW4gY29uZmlndXJlIHNjcmlwdHMKPiAgICAgICAgKGJhc2VkIG9uIElh biBDYW1wYmVsbCdzIHN1Z2dlc3Rpb25zKQo+Cj4gWzIvNV0gSW50cm9kdWNlIGxvY2tpbmcgaW4g dGhlIHNjcmlwdCwgZHVyaW5nIElGQiBzZXR1cC4KPiAgICAgICAgQWRkIHhlbnN0b3JlIHBhdGhz IHVzZWQgYnkgbmV0YnVmIHNjcmlwdHMKPiAgICAgICAgdG8geGVuc3RvcmUtcGF0aHMubWFya2Rv d24KPgo+IFszLzVdIEhvdHBsdWcgc2NyaXB0cyBzZXR1cC90ZWFyZG93biBpbnZvY2F0aW9ucyBh cmUgbm93IGFzeW5jaHJvbm91cwo+ICAgICAgICBmb2xsb3dpbmcgSWFuSidzIGZlZWRiYWNrLiAg SG93ZXZlciwgdGhlIGludm9jYXRpb25zIGFyZSBzdGlsbAo+ICAgICAgICBzZXF1ZW50aWFsLgo+ Cj4gWzUvNV0gQWxsb3cgcGVyLWRvbWFpbiBzcGVjaWZpY2F0aW9uIG9mIG5ldGJ1ZmZlciBzY3Jp cHRzIGluIHhsIHJlbXVzCj4gICAgICAgIGNvbW1tYW5kLgo+Cj4gQW5kIG1pbm9yIG5pdHMgdGhy b3VnaG91dCB0aGUgc2VyaWVzIGJhc2VkIG9uIGZlZWRiYWNrIGZyb20KPiB0aGUgbGFzdCB2ZXJz aW9uCj4KPiBDaGFuZ2VzIGluIFYyOgo+IFsxLzVdIENvbmZpZ3VyZSBzY3JpcHQgd2lsbCBhdXRv bWF0aWNhbGx5IGVuYWJsZS9kaXNhYmxlIG5ldHdvcmsKPiAgICAgICAgYnVmZmVyIHN1cHBvcnQg ZGVwZW5kaW5nIG9uIHRoZSBhdmFpbGFiaWxpdHkgb2YgdGhlIGFwcHJvcHJpYXRlCj4gICAgICAg IGxpYm5sMyB2ZXJzaW9uLiBbSWYgbGlibmwzIGlzIHVuYXZhaWxhYmxlLCBhIHdhcm5pbmcgbWVz c2FnZSB3aWxsIGJlCj4gICAgICAgIHByaW50ZWQgdG8gbGV0IHRoZSB1c2VyIGtub3cgdGhhdCB0 aGUgZmVhdHVyZSBoYXMgYmVlbiBkaXNhYmxlZC5dCj4KPiAgICAgICAgdXNlIG1hY3JvcyBmcm9t IHBrZy5tNCBpbnN0ZWFkIG9mIHBrZy1jb25maWcgY29tbWFuZHMKPiAgICAgICAgcmVtb3ZlZCBy ZWR1bmRhbnQgY2hlY2tzIGZvciBsaWJubDMgbGlicmFyaWVzLgo+Cj4gWzMsNC81XSAtIE1pbm9y IG5pdHMuCj4KPiBWZXJzaW9uIDE6Cj4KPiBbMS81XSBDaGFuZ2VzIHRvIGF1dG9jb25mIHNjcmlw dHMgdG8gY2hlY2sgZm9yIGxpYm5sMy4gQWRkIGxpbmtlciBmbGFncwo+ICAgICAgICB0byBsaWJ4 bCBNYWtlZmlsZS4KPgo+IFsyLzVdIEV4dGVybmFsIHNjcmlwdCB0byBzZXR1cC90ZWFyZG93biBu ZXR3b3JrIGJ1ZmZlcmluZyB1c2luZyBsaWJubDMncwo+ICAgICAgICBDTEkuIFRoaXMgc2NyaXB0 IHdpbGwgYmUgaW52b2tlZCBieSBsaWJ4bCBiZWZvcmUgc3RhcnRpbmcgUmVtdXMuCj4gICAgICAg IFRoZSBzY3JpcHQncyBtYWluIGpvYiBpcyB0byBicmluZyB1cCBhbiBJRkIgZGV2aWNlIHdpdGgg cGx1ZyBxZGlzYwo+ICAgICAgICBhdHRhY2hlZCB0byBpdC4gIEl0IHRoZW4gcmUtcm91dGVzIGVn cmVzcyB0cmFmZmljIGZyb20gdGhlIGd1ZXN0J3MKPiAgICAgICAgdmlmIHRvIHRoZSBJRkIgZGV2 aWNlLgo+Cj4gWzMvNV0gTGlieGwgY29kZSB0byBpbnZva2UgdGhlIGV4dGVybmFsIHNldHVwIHNj cmlwdCwgZm9sbG93ZWQgYnkgbmV0bGluawo+ICAgICAgICByZWxhdGVkIHNldHVwIHRvIG9idGFp biBhIGhhbmRsZSBvbiB0aGUgb3V0cHV0IGJ1ZmZlcnMgYXR0YWNoZWQKPiAgICAgICAgdG8gZWFj aCB2aWYuCj4KPiBbNC81XSBMaWJ4bCBpbnRlcmFjdGlvbiB3aXRoIG5ldHdvcmsgYnVmZmVyIG1v ZHVsZSBpbiB0aGUga2VybmVsIHZpYQo+ICAgICAgICBsaWJubDMgQVBJLgo+Cj4gWzUvNV0geGwg Y21kbGluZSBzd2l0Y2ggdG8gZXhwbGljaXRseSBlbmFibGUgbmV0d29yayBidWZmZXJpbmcgd2hl bgo+ICAgICAgICBzdGFydGluZyByZW11cy4KPgo+Cj4gICAgRmV3IHRoaW5ncyB0byBub3RlKGJ5 IHNocmlyYW0pOgo+Cj4gICAgICBhKSBCYXNlZCBvbiBwcmV2aW91cyBlbWFpbCBkaXNjdXNzaW9u cywgdGhlIHNldHVwL3RlYXJkb3duIHRhc2sgaGFzCj4gICAgICBiZWVuIG1vdmVkIHRvIGEgaG90 cGx1ZyBzdHlsZSBzaGVsbCBzY3JpcHQgd2hpY2ggY2FuIGJlIGN1c3RvbWl6ZWQgYXMKPiAgICAg IGRlc2lyZWQsIGluc3RlYWQgb2YgaW1wbGVtZW50aW5nIGl0IGFzIEMgY29kZSBpbnNpZGUgbGli eGwuCj4KPiAgICAgIGIpIExpYm5sMyBpcyBub3QgYXZhaWxhYmxlIG9uIE5ldEJTRC4gTm9yIGlz IGl0IGF2YWlsYWJsZSBvbiBDZW50T1MKPiAgICAgKExpbnV4KS4gIFNvIEkgaGF2ZSBtYWRlIG5l dHdvcmsgYnVmZmVyaW5nIHN1cHBvcnQgYW4gb3B0aW9uYWwgZmVhdHVyZQo+ICAgICBzbyB0aGF0 IGl0IGNhbiBiZSBkaXNhYmxlZCBpZiBkZXNpcmVkLgo+Cj4gICAgIGMpIE5ldEJTRCBkb2VzIG5v dCBoYXZlIGxpYm5sMy4gU28gSSBoYXZlIHB1dCB0aGUgc2V0dXAgc2NyaXB0IHVuZGVyCj4gICAg IHRvb2xzL2hvdHBsdWcvTGludXggZm9sZGVyLgo+Cj4gdGhhbmtzCj4KPiBMZWdlbmQ6Cj4gICAg QSAtIGFja2VkCj4gICAgRCAtIHByZXZpb3VzIGFja2VkLCBidXQgbmV3IGNoYW5nZSBpbnRyb2R1 Y2VkIHNvIGFja2VkLWJ5IGRyb3BwZWQKPiAgICBNIC0gTW9kaWZpZWQKPiAgICBTIC0gdGhlIHNh bWUgdmVyc2lvbiBhcyBsYXN0IHJvdW5kCj4gICAgTm8gbWFya2VyIC0gbmV3IHBhdGNoCj4KPiBZ YW5nIEhvbmd5YW5nICgxMSk6Cj4gICAgICBsaWJ4bDogaW50cm9kdWNlIGxpYnhsX19tdWx0aWRl dl9wcmVwYXJlX3dpdGhfYW9kZXYKPiAgICAgIGxpYnhsOiBhZGQgc3VwcG9ydCBmb3IgYXN5bmMu IGZ1bmN0aW9uIGNhbGxzIHdoZW4gdXNpbmcKPiAgICAgICAgbGlieGxfX2FvX2RldmljZQo+ICAg IEEgYXV0b2NvbmY6IGFkZCBsaWJubDMgZGVwZW5kZW5jeSBmb3IgUmVtdXMgbmV0d29yayBidWZm ZXJpbmcgc3VwcG9ydAo+ICAgIE0gbGlieGwvcmVtdXM6IGludHJvZHVjZSBhbiBhYnN0cmFjdCBS ZW11cyBkZXZpY2UgbGF5ZXIKPiAgICBNIGxpYnhsL3JlbXVzOiBzZXR1cCBhbmQgY29udHJvbCBu ZXR3b3JrIG91dHB1dCBidWZmZXJpbmcKPiAgICBNIGxpYnhsL3JlbXVzOiBzZXR1cCBhbmQgY29u dHJvbCBkaXNrIHJlcGxpY2F0aW9uIGZvciBEUkJEIGJhY2tlbmRzCj4gICAgICB4bC9yZW11czog Y21kbGluZSBzd2l0Y2ggdG8gZXhwbGljaXRseSBlbmFibGUgdW5zYWZlIGNvbmZpZ3VyYXRpb25z Cj4gICAgTSB4bC9yZW11czogY21kbGluZSBzd2l0Y2hlcyBhbmQgY29uZmlnIHZhcnMgdG8gY29u dHJvbCBuZXR3b3JrCj4gICAgICAgIGJ1ZmZlcmluZwo+ICAgIE0geGwvcmVtdXM6IGFkZCBhIGNt ZGxpbmUgc3dpdGNoIHRvIGRpc2FibGUgZGlzayByZXBsaWNhdGlvbgo+ICAgIFMgbGlieGwvcmVt dXM6IGFkZCBMSUJYTF9IQVZFX1JFTVVTIHRvIGluZGljYXRlIFJlbXVzIHN1cHBvcnQgaW4gbGli eGwKPiAgICBNIE1BSU5UQUlORVJTOiB1cGRhdGUgbWFpbnRhaW5lZCBmaWxlcyBvZiBSZW11cwo+ Cj4gICBNQUlOVEFJTkVSUyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNyArCj4gICBS RUFETUUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArCj4gICBjb25maWcv VG9vbHMubWsuaW4gICAgICAgICAgICAgICAgICAgICB8ICAgNCArCj4gICBkb2NzL1JFQURNRS5y ZW11cyAgICAgICAgICAgICAgICAgICAgICB8ICAgNiArCj4gICBkb2NzL21hbi94bC5jb25mLnBv ZC41ICAgICAgICAgICAgICAgICB8ICAgNiArCj4gICBkb2NzL21hbi94bC5wb2QuMSAgICAgICAg ICAgICAgICAgICAgICB8ICAzMCArLQo+ICAgZG9jcy9taXNjL3hlbnN0b3JlLXBhdGhzLm1hcmtk b3duICAgICAgfCAgIDQgKwo+ICAgdG9vbHMvY29uZmlndXJlLmFjICAgICAgICAgICAgICAgICAg ICAgfCAgMTYgKwo+ICAgdG9vbHMvaG90cGx1Zy9MaW51eC9NYWtlZmlsZSAgICAgICAgICAgfCAg IDIgKwo+ICAgdG9vbHMvaG90cGx1Zy9MaW51eC9ibG9jay1kcmJkLXByb2JlICAgfCAgODUgKysr KysrCj4gICB0b29scy9ob3RwbHVnL0xpbnV4L3JlbXVzLW5ldGJ1Zi1zZXR1cCB8IDIzNyArKysr KysrKysrKysrKysKPiAgIHRvb2xzL2xpYnhsL01ha2VmaWxlICAgICAgICAgICAgICAgICAgIHwg IDE1ICsKPiAgIHRvb2xzL2xpYnhsL2xpYnhsLmMgICAgICAgICAgICAgICAgICAgIHwgIDY1ICsr Ky0KPiAgIHRvb2xzL2xpYnhsL2xpYnhsLmggICAgICAgICAgICAgICAgICAgIHwgICA2ICsKPiAg IHRvb2xzL2xpYnhsL2xpYnhsX2RldmljZS5jICAgICAgICAgICAgIHwgIDE0ICstCj4gICB0b29s cy9saWJ4bC9saWJ4bF9kb20uYyAgICAgICAgICAgICAgICB8IDE3MiArKysrKysrKysrLQo+ICAg dG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCAgICAgICAgICAgfCAyMDQgKysrKysrKysrKysr LQo+ICAgdG9vbHMvbGlieGwvbGlieGxfbmV0YnVmZmVyLmMgICAgICAgICAgfCA1MjEgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gICB0b29scy9saWJ4bC9saWJ4bF9ub25ldGJ1 ZmZlci5jICAgICAgICB8ICA1NiArKysrCj4gICB0b29scy9saWJ4bC9saWJ4bF9yZW11c19kZXZp Y2UuYyAgICAgICB8IDMwMiArKysrKysrKysrKysrKysrKysrCj4gICB0b29scy9saWJ4bC9saWJ4 bF9yZW11c19kaXNrX2RyYmQuYyAgICB8IDI2MCArKysrKysrKysrKysrKysrCj4gICB0b29scy9s aWJ4bC9saWJ4bF90eXBlcy5pZGwgICAgICAgICAgICB8ICAgNiArCj4gICB0b29scy9saWJ4bC94 bC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArCj4gICB0b29scy9saWJ4bC94bC5oICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMSArCj4gICB0b29scy9saWJ4bC94bF9jbWRpbXBsLmMg ICAgICAgICAgICAgICB8ICA0MyArKy0KPiAgIHRvb2xzL2xpYnhsL3hsX2NtZHRhYmxlLmMgICAg ICAgICAgICAgIHwgIDExICstCj4gICAyNiBmaWxlcyBjaGFuZ2VkLCAyMDQyIGluc2VydGlvbnMo KyksIDM5IGRlbGV0aW9ucygtKQo+ICAgY3JlYXRlIG1vZGUgMTAwNzU1IHRvb2xzL2hvdHBsdWcv TGludXgvYmxvY2stZHJiZC1wcm9iZQo+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHRvb2xzL2hvdHBs dWcvTGludXgvcmVtdXMtbmV0YnVmLXNldHVwCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgdG9vbHMv bGlieGwvbGlieGxfbmV0YnVmZmVyLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB0b29scy9saWJ4 bC9saWJ4bF9ub25ldGJ1ZmZlci5jCj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgdG9vbHMvbGlieGwv bGlieGxfcmVtdXNfZGV2aWNlLmMKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB0b29scy9saWJ4bC9s aWJ4bF9yZW11c19kaXNrX2RyYmQuYwo+CgotLSAKVGhhbmtzLApZYW5nLgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK