From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: netif.h clarifications Date: Fri, 20 May 2016 12:49:32 +0000 Message-ID: References: <20160519162750.qfdns6uzhcg5v3ts@mac> <3d18e0cafe0648bfa8f8cbd1673e1031@AMSPEX02CL03.citrite.net> <20160520104622.atvre5augztj7gmg@mac> <20160520123425.34mvostatb4i4lgk@mac> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([85.158.143.247]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3jsa-0002qN-Qz for xen-devel@lists.xenproject.org; Fri, 20 May 2016 12:50:12 +0000 In-Reply-To: <20160520123425.34mvostatb4i4lgk@mac> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Roger Pau Monne Cc: "xen-devel@lists.xenproject.org" , Wei Liu , David Vrabel List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IFJvZ2VyIFBhdSBNb25uZSBbbWFp bHRvOnJvZ2VyLnBhdUBjaXRyaXguY29tXQo+IFNlbnQ6IDIwIE1heSAyMDE2IDEzOjM0Cj4gVG86 IFBhdWwgRHVycmFudAo+IENjOiB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmc7IFdlaSBM aXU7IERhdmlkIFZyYWJlbAo+IFN1YmplY3Q6IFJlOiBuZXRpZi5oIGNsYXJpZmljYXRpb25zCj4g Cj4gT24gRnJpLCBNYXkgMjAsIDIwMTYgYXQgMTI6NTU6MTZQTSArMDEwMCwgUGF1bCBEdXJyYW50 IHdyb3RlOgo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+ID4gW3NuaXBdCj4gPiA+ ID4gPiBBbmQgdGhlbiBJJ3ZlIGFsc28gc2VlbiBzb21lIGlzc3VlcyB3aXRoIFRTTy9MUk8gKEdT TyBpbiBMaW51eAo+ID4gPiA+ID4gdGVybWlub2xvZ3kpCj4gPiA+ID4gPiB3aGVuIHVzaW5nIHBh Y2tldCBmb3J3YXJkaW5nIGluc2lkZSBvZiBhIEZyZWVCU0QgRG9tVS4gRm9yCj4gZXhhbXBsZSBp bgo+ID4gPiB0aGUKPiA+ID4gPiA+IGZvbGxvd2luZyBzY2VuYXJpbzoKPiA+ID4gPiA+Cj4gPiA+ ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKPiA+ID4gPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAo+ID4gPiA+ID4gICAgKy0tLS0tLS0tLSsg ICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSsgICAgICAgICAgICstLS0tLS0tLS0tKwo+ ID4gPiA+ID4gICAgfCAgICAgICAgIHxBICAgICAgICAgQnwgICAgICAgcm91dGVyICAgICAgIHxD ICAgICAgICAgRHwgICAgICAgICAgfAo+ID4gPiA+ID4gICAgfCBHdWVzdCAxICstLS0tLS0tLS0t LSsgICAgICAgICArICAgICAgICAgICstLS0tLS0tLS0tLSsgR3Vlc3QgMiAgfAo+ID4gPiA+ID4g ICAgfCAgICAgICAgIHwgIGJyaWRnZTAgIHwgICAgICAgICB8ICAgICAgICAgIHwgIGJyaWRnZTEg IHwgICAgICAgICAgfAo+ID4gPiA+ID4gICAgKy0tLS0tLS0tLSsgICAgICAgICAgICstLS0tLS0t LS0tLS0tLS0tLS0tLSsgICAgICAgICAgICstLS0tLS0tLS0tKwo+ID4gPiA+ID4gICAgMTcyLjE2 LjEuNjcgICAgICAgICAgMTcyLjE2LjEuNjZ8ICAgMTAuMC4xLjEgICAgICAgICAgIDEwLjAuMS4y Cj4gPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKPiA+ID4gPiA+ ICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tPgo+ID4gPiA+ID4gICAgICAgICAgICAgICBzc2ggMTAuMC4xLjIgICAgICAgICB8Cj4gPiA+ ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKPiA+ID4gPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAo+ID4gPiA+ID4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8Cj4gPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICsKPiA+ID4gPiA+Cj4gPiA+ID4gPiBBbGwgdGhvc2UgVk1zIGFyZSBpbnNpZGUg b2YgdGhlIHNhbWUgaG9zdCwgYW5kIG9uZSBvZiB0aGVtIGFjdHMgYXMgYQo+ID4gPiBnYXRld2F5 Cj4gPiA+ID4gPiBiZXR3ZWVuIHRoZW0gYmVjYXVzZSB0aGV5IGFyZSBvbiB0d28gZGlmZmVyZW50 IHN1Ym5ldHMuIEluIHRoaXMKPiBjYXNlCj4gPiA+IEknbQo+ID4gPiA+ID4gc2VlaW5nIGlzc3Vl cyBiZWNhdXNlIGV2ZW4gdGhvdWdoIEkgZGlzYWJsZSBUU08vTFJPIG9uIHRoZSAicm91dGVyIgo+ IGF0Cj4gPiA+ID4gPiBydW50aW1lLCB0aGUgYmFja2VuZCBkb2Vzbid0IHdhdGNoIHRoZSB4ZW5z dG9yZSBmZWF0dXJlIGZsYWcsIGFuZAo+IG5ldmVyCj4gPiA+ID4gPiBkaXNhYmxlcyBpdCBmcm9t IHRoZSB2aWYgb24gdGhlIERvbTAgYnJpZGdlLiBUaGlzIGNhdXNlcyBMUk8gcGFja2V0cwo+ID4g PiA+ID4gKG5vbi1mcmFnbWVudGVkKSB0byBiZSByZWNlaXZlZCBhdCBwb2ludCAnQycsIGFuZCB0 aGVuIHdoZW4gdGhlCj4gPiA+IGdhdGV3YXkKPiA+ID4gPiA+IHRyaWVzIHRvIGluamVjdCB0aGVt IGludG8gdGhlIG90aGVyIE5JQyBpdCBmYWlscyBiZWNhdXNlIHRoZSBzaXplIGlzCj4gZ3JlYXRl cgo+ID4gPiA+ID4gdGhhbiB0aGUgTVRVLCBhbmQgdGhlICJubyBmcmFnbWVudCIgYml0IGlzIHNl dC4KPiA+ID4gPiA+Cj4gPiA+ID4KPiA+ID4gPiBZZXMsIEdTTyBjYW5ub3QgYmUgZGlzYWJsZWQv ZW5hYmxlZCBkeW5hbWljYWxseSBvbiB0aGUgbmV0YmFjayB0eAo+IHNpZGUKPiA+ID4gKGkuZS4g Z3Vlc3Qgcnggc2lkZSkgc28geW91IGNhbid0IHR1cm4gaXQgb2ZmLiBUaGUgV2luZG93cyBQViBk cml2ZXIgbGVhdmUgc2l0Cj4gb24KPiA+ID4gYWxsIHRoZSB0aW1lIGFuZCBkb2VzIHRoZSBmcmFn bWVudGF0aW9uIGl0c2VsZiBpZiB0aGUgc3RhY2sgZG9lc24ndCB3YW50Cj4gR1JPLgo+ID4gPiBE b2luZyB0aGUgZnJhZ21lbnRhdGlvbiBpbiB0aGUgZnJvbnRlbmQgbWFrZXMgbW9yZSBzZW5zZSBh bnl3YXkgc2luY2UKPiA+ID4gdGhlIGNwdSBjeWNsZXMgYXJlIGJ1cm5lZCBieSB0aGUgVk0gcmF0 aGVyIHRoYW4gZG9tMCBhbmQgc28gaXQgc2NhbGVzCj4gPiA+IGJldHRlci4KPiA+ID4KPiA+ID4g VGhlIHdlaXJkIHRoaW5nIGlzIHRoYXQgR1NPIGNhbiB1c3VhbGx5IGJlIGRpbmFtaWNhbGx5IGVu YWJsZWQvZGlzYWJsZWQKPiBvbgo+ID4gPiBhbGwgbmV0d29yayBjYXJkcywgc28gaXQgd291bGQg bWFrZSBzZW5zZSB0byBhbGxvdyBuZXRmcm9udCB0byBkbyB0aGUKPiBzYW1lLgo+ID4gPiBJIGd1 ZXNzIHRoZSBvbmx5IHdheSBpcyB0byByZXNldCB0aGUgbmV0ZnJvbnQvbmV0YmFjayBjb25uZWN0 aW9uIHdoZW4KPiA+ID4gY2hhbmdpbmcgdGhpcyBwcm9wZXJ0eS4KPiA+Cj4gPiBPciBpbXBsZW1l bnQgR1NPIGZyYWdtZW50YXRpb24gaW4gbmV0ZnJvbnQsIGFzIEkgZGlkIGZvciBXaW5kb3dzLgo+ ID4KPiA+ID4KPiA+ID4gPiA+IEhvdyBkb2VzIExpbnV4IGRlYWwgd2l0aCB0aGlzIHNpdHVhdGlv bj8gRG9lcyBpdCBzaW1wbHkgaWdub3JlIHRoZSBubwo+ID4gPiA+ID4gZnJhZ21lbnQgZmxhZyBh bmQgZnJhZ21lbnRzIHRoZSBwYWNrZXQ/IERvZXMgaXQgc2ltcGx5IGluamVjdCB0aGUKPiBwYWNr ZXQKPiA+ID4gdG8KPiA+ID4gPiA+IHRoZSBvdGhlciBlbmQgaWdub3JpbmcgdGhlIE1UVSBhbmQg cHJvcGFnYXRpbmcgdGhlIEdTTyBmbGFnPwo+ID4gPiA+ID4KPiA+ID4gPgo+ID4gPiA+IEkndmUg bm90IGxvb2tlZCBhdCB0aGUgbmV0ZnJvbnQgcnggY29kZSBidXQgSSBhc3N1bWUgdGhhdCB0aGUg bGFyZ2UKPiBwYWNrZXQKPiA+ID4gdGhhdCBpcyBwYXNzZWQgZnJvbSBuZXRiYWNrIGlzIGp1c3Qg bWFya2VkIGFzIEdTTyBhbmQgbWFrZXMgaXRzIHdheSB0bwo+ID4gPiB3aGVyZXZlciBpdCdzIGdv aW5nIChiZWluZyBmcmFnbWVudGVkIGJ5IHRoZSBzdGFjayBpZiBpdCdzIGZvcndhcmRlZCB0byBh bgo+ID4gPiBpbnRlcmZhY2UgdGhhdCBkb2Vzbid0IGhhdmUgdGhlIFRTTyBmbGFnIHNldCkuCj4g PiA+Cj4gPiA+IEJ1dCBpdCBjYW5ub3QgYmUgZnJhZ21lbnRlZCBpZiBpdCBoYXMgdGhlIElQICJk b24ndCBmcmFnbWVudCIgZmxhZyBzZXQuCj4gPiA+Cj4gPgo+ID4gSHVoPyBUaGlzIGlzIEdTTyB3 ZSdyZSB0YWxraW5nIGFib3V0IGhlcmUsIG5vdCBJUCBmcmFnbWVudGF0aW9uLiBUaGV5IGFyZQo+ IG5vdCB0aGUgc2FtZSB0aGluZy4KPiAKPiBXZWxsLCBhcyBJIHVuZGVyc3RhbmQgaXQgR1NPIHdv cmtzIGJ5IG9mZmxvYWRpbmcgdGhlIGZyYWdtZW50YXRpb24gdG8gdGhlCj4gTklDLCBzbyB0aGUg TklDIHBlcmZvcm1zIHRoZSBUQ1AvSVAgZnJhZ21lbnRhdGlvbiBpdHNlbGYuIEluIHdoaWNoIGNh c2UgSQo+IHRoaW5rIGl0J3MgcmVsZXZhbnQsIGJlY2F1c2UgaWYgeW91IHJlY2VpdmUgYSA2NEtC IEdTTyBwYWNrZXQgd2l0aCB0aGUKPiAiZG9uJ3QgZnJhZ21lbnQiIElQIGZsYWdzIHNldCwgeW91 IHNob3VsZCBub3QgZnJhZ21lbnQgaXQgQUZBSUssIGV2ZW4gaWYKPiBpdCdzIGEgR1NPIHBhY2tl dC4KCkkgZG9uJ3QgYmVsaWV2ZSB0aGF0IGlzIHRoZSBjYXNlLiBUaGUgREYgYml0IGlzIG5vdCBy ZWxldmFudCBiZWNhdXNlIHlvdSBhcmUgbm90IGZyYWdtZW50aW5nIGFuIElQIHBhY2tldCwgeW91 IGFyZSB0YWtpbmcgYSBsYXJnZSBUQ1Agc2VnbWVudCBhbmQgc3BsaXR0aW5nIGl0IGludG8gTVNT IHNpemVkIHNlZ21lbnRzLgoKPiAKPiBJIHRoaW5rIHRoaXMgaXMgYWxsIGNhdXNlZCBiZWNhdXNl IHRoZXJlJ3Mgbm8gcmVhbCBtZWRpYSBoZXJlLCBpdCdzIGFsbAo+IGJyaWRnZXMgYW5kIHZpcnR1 YWwgbmV0d29yayBpbnRlcmZhY2VzIG9uIHRoZSBzYW1lIGhvc3QuIFRoZSBicmlkZ2UgaGFzIG5v Cj4gcmVhbCBNVFUsIGJ1dCBvbiB0aGUgcmVhbCB3b3JsZCB0aGUgcGFja2V0IHdvdWxkIGJlIGZy YWdtZW50ZWQgdGhlCj4gbW9tZW50IGl0Cj4gaGl0cyB0aGUgd2lyZS4KPiAKClllcy4gTVRVIGlz IG5vdCByZWFsbHkgcmVsZXZhbnQgdW50aWwgYSBiaXQgb2Ygd2lyZSBnZXRzIGludm9sdmVkLgoK PiBPVE9ILCB3aGVuIHVzaW5nIHRoZSBQViBuZXQgcHJvdG9jb2wgd2UgYXJlIGJhc2ljYWxseSBw YXNzaW5nIG1idWZzIChvcgo+IHNrYnMKPiBpbiBMaW51eCB3b3JsZCkgYXJvdW5kLCBzbyBpcyBp dCBleHBlY3RlZCB0aGF0IHRoZSBmcmFnbWVudGF0aW9uIGlzIGdvaW5nIHRvCj4gYmUgcGVyZm9y bWVkIHdoZW4gdGhlIHBhY2tldCBpcyBwdXQgb24gYSByZWFsIHdpcmUgdGhhdCBoYXMgYSByZWFs IE1UVSwgc28KPiB0aGUgbGFzdCBlbnRpdHkgdGhhdCB0b3VjaGVzIGl0IG11c3QgZG8gdGhlIGZy YWdtZW50YXRpb24/Cj4gCgpMZXQncyBjYWxsIGl0ICdzZWdtZW50YXRpb24nIHRvIGF2b2lkIGdl dHRpbmcgY29uZnVzZWQgYWdhaW4uLi4gWWVzLCBpZiBzb21ldGhpbmcgYWxvbmcgdGhlIHBhdGgg ZG9lcyBub3Qga25vdyBhYm91dCBsYXJnZSBUQ1Agc2VnbWVudHMgKGEuay5hLiBHU08gcGFja2V0 cykgdGhlbiB0aGUgc2VnbWVudGF0aW9uIG11c3QgYmUgZG9uZSBhdCB0aGF0IGJvdW5kYXJ5LiBT bywgZm9yIFZNIDwtPiBWTSB0cmFmZmljIG9uIHRoZSBzYW1lIGhvc3QgeW91IHJlYWxseSB3YW50 IGV2ZXJ5dGhpbmcgdG8ga25vdyBhYm91dCBHU08gcGFja2V0cyBzbyB0aGF0IHRoZSBwYXlsb2Fk IG5ldmVyIGhhcyB0byBiZSBzZWdtZW50ZWQuCgo+IElNSE8sIHRoaXMgYXBwb3JhY2ggc2VlbXMg dmVyeSBkYW5nZXJvdXMsIGFuZCB3ZSBhcmUgYnJlYWtpbmcgdGhlIGVuZC0KPiB0by1lbmQKPiBw cmluY2lwbGUuCgpXaHk/IFdoYXQgcHJpbmNpcGxlIGFyZSB3ZSBicmVha2luZz8gQXMgbG9uZyBh cyB0aGUgTVNTIGluZm9ybWF0aW9uIGlzIGNhcnJpZWQgaW4gdGhlIHBhY2tldCBtZXRhZGF0YSB0 aGVuIGl0IGNhbiBhbHdheXMgYmUgc2VnbWVudGVkIGF0IHRoZSBwb2ludCB3aGVyZSB0aGUgcGFj a2V0IGlzIGhhbmRlZCBzbyBzb21ldGhpbmcgdGhhdCBlaXRoZXIgZG9lc24ndCBrbm93IGhvdyB0 byBoYW5kbGUgdGhhdCBtZXRhZGF0YSwgb3Igd2hlbiBpdCBuZWVkcyB0byBnbyBvbiBhIGJpdCBv ZiB3aXJlLgoKPiAKPiA+ID4gV2hhdCBJJ20gc2VlaW5nIGhlcmUgaXMgdGhhdCBhdCBwb2ludCBD IG5ldGJhY2sgcGFzc2VzIEdTTyBwYWNrZXRzIHRvIHRoZQo+ID4gPiAicm91dGVyIiBWTSwgdGhp cyBwYWNrZXRzIGhhdmUgbm90IGJlZW4gZnJhZ21lbnRlZCwgYW5kIHRoZW4gd2hlbiB0aGUKPiA+ ID4gcm91dGVyCj4gPiA+IFZNIHRyaWVzIHRvIGZvcndhcmQgdGhlbSB0byBwb2ludCBCIGl0IGhh cyB0byBpc3N1ZSBhICJuZWVkCj4gZnJhZ21lbnRhdGlvbiIKPiA+ID4gaWNtcCBtZXNzYWdlIGJl Y2F1c2UgdGhlIE1UVSBvZiB0aGUgaW50ZXJmYWNlIGlzIDE1MDAgYW5kIHRoZSBJUAo+IGhlYWRl cgo+ID4gPiBoYXMKPiA+ID4gdGhlICJkb24ndCBmcmFnbWVudCIgc2V0IChhbmQgb2YgY291cnNl IHRoZSBHU08gY2hhaW4gaXMgYmlnZ2VyIHRoYW4KPiAxNTAwKS4KPiA+ID4KPiA+Cj4gPiBUaGF0 J3MgcHJlc3VtYWJseSBiZWNhdXNlIHRoZXkndmUgbG9zdCB0aGUgR1NPIGluZm9ybWF0aW9uIHNv bWV3aGVyZQo+IChpLmUuIHRoZSBmbGFnIHNheWluZyBpdCdzIEdTTyBhbmQgdGhlIE1TUykuCj4g Cj4gQUZBSUNULCBJJ20gY29ycmVjdGx5IHBhc3NpbmcgdGhlIEdTTyBpbmZvcm1hdGlvbiBhcm91 bmQuCj4gCj4gPiA+IElzIExpbnV4IGlnbm9yaW5nIHRoZSAiZG9uJ3QgZnJhZ21lbnQiIElQIGZs YWcgaGVyZSBhbmQgc2ltcGx5IGZyYWdtZW50aW5nCj4gPiA+IGl0Pwo+ID4KPiA+IFllcy4gQXMg SSBzYWlkIEdTTyAhPSBJUCBmcmFnbWVudGF0aW9uOyB0aGUgREYgYml0IGhhcyBubyBiZWFyaW5n IG9uIGl0LiBZb3UKPiBkbyBuZWVkIHRoZSBHU08gaW5mb3JtYXRpb24gdGhvdWdoLgo+IAo+IEkn bSBzb3JyeSBidXQgSSBkb24ndCB0aGluayBJJ20gZm9sbG93aW5nIGhlcmUuIEdTTyBiYXNpY2Fs bHkgb2ZmbG9hZHMKPiBJUC9UQ1AgZnJhZ21lbnRhdGlvbiB0byB0aGUgTklDLCBzbyBJIGRvbid0 IHNlZSB3aHkgdGhlIERGIGJpdCBpcyBub3QKPiByZWxldmFudCBoZXJlLiBUaGUgREYgYml0IGlz IGNsZWFybHkgbm90IHJlbGV2YW50IGlmIGl0J3MgYSBsb2NhbGx5Cj4gZ2VuZXJhdGVkIHBhY2tl dCwgYnV0IGl0IG1hdHRlcnMgaWYgaXQncyBhIHBhY2tldCBjb21taW5nIGZyb20gYW5vdGhlcgo+ IGVudGl0eS4KPiAKClRoZSBERiBiaXQgc2F5cyB3aGV0aGVyIHRoZSAqSVAgcGFja2V0KiBpcyBi ZWluZyBmcmFnbWVudGVkLiBJUCBwYWNrZXRzIGFyZSBub3QgZnJhZ21lbnRlZCB0aGVuIFRDUCBz ZWdtZW50YXRpb24gb2ZmbG9hZCBpcyBkb25lLgoKPiBJbiB0aGUgZGlhZ3JhbSB0aGF0IEkndmUg cG9zdGVkIGFib3ZlIGZvciBleGFtcGxlLCBpZiB5b3UgY2hhbmdlIGJyaWRnZTAKPiB3aXRoIGEg cGh5c2ljYWwgbWVkaWEsIGFuZCB0aGUgZ3Vlc3RzIGF0IGJvdGggZW5kcyB3YW50IHRvIHN0YWJs aXNoIGEgU1NICj4gY29ubmVjdGlvbiB0aGUgZnJhZ21lbnRhdGlvbiB3b3VsZCB0aGVuIGJlIGRv bmUgYXQgcG9pbnQgQiAoZm9yIHBhY2tldHMKPiBnb2luZyBmcm9tIGd1ZXN0IDIgdG8gMSksIHdo aWNoIHNlZW1zIGNvbXBsZXRlbHkgd3JvbmcgdG8gbWUgZm9yIHBhY2tldHMKPiB0aGF0IGhhdmUg dGhlIERGIGJpdCBzZXQsIGJlY2F1c2UgdGhlIGZyYWdtZW50YXRpb24gd291bGQgYmUgZG9uZSBi eSB0aGUKPiBfcm91dGVyXywgbm90IHRoZSBzZW5kZXIgKHdoaWNoIEFGQUlDVCBpcyB3aGF0IHRo ZSBERiBmbGFnIGlzIHRyeWluZyB0bwo+IGF2b2lkKS4KPiAKCkl0IHdvdWxkIGJlIHdyb25nIGlm IElQIHBhY2tldHMgYXJlIGJlaW5nIGZyYWdtZW50ZWQsIGJ1dCB0aGV5IGFyZSBub3QuCgogIFBh dWwKCj4gUm9nZXIuCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=