From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: References: <454fb88a-2909-acfc-5c63-e139d5fccb34@pengutronix.de> <37101a0d-0faa-e146-4c8a-63eed0cd17f9@pengutronix.de> From: Enrico Joerns Message-ID: <578d1394-d6ca-3098-bbcf-db87badab647@pengutronix.de> Date: Mon, 10 Dec 2018 09:17:35 +0100 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US Subject: Re: [RAUC] Query regarding rauc List-Id: RAUC Project - Discussion List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: rauc-bounces@pengutronix.de Sender: "RAUC" To: Abhishek Kumar Rai Cc: rauc@pengutronix.de SGkgQWJoaXNoZWssCgpPbiAxMi82LzE4IDEwOjI0IEFNLCBBYmhpc2hlayBLdW1hciBSYWkgd3Jv dGU6Cj4gSGkgVGVhbSwKPiAKPiBQbGVhc2UgcHJvdmlkZSB5b3VyIHZhbHVhYmxlIHN1Z2dlc3Rp b24gcmVnYXJkaW5nIHRoZSBhYm92ZSBxdWVyeSAuCgpwbGVhc2UgZG8gbm90IHB1dCB0b28gbXVj aCBwcmVzc3VyZSBvbiBjb21tdW5pdHkgbWFpbGluZyBsaXN0cy4KVGhlcmUgYXJlIGJ1c2luZXNz IHN1cHBvcnQgY2hhbm5lbHMgYXZhaWxhYmxlIGZvciB0aGlzLgoKPiAgICAgID4gPiBFeHRyYWN0 aW5nIHRoZSB0YXIncyBzaG91bGQgbm90IGJlIHJlcXVpcmVkIGluIGFsbCBjYXNlcy4gV2l0aCB0 aGUKPiAgICAgID4gPiBmdWxsLWN1c3RvbSBoYW5kbGVyIHlvdSB3aWxsIGFscmVhZHkgaGF2ZSBp dCBtb3VudGVkLCBvdGhlcndpc2UgeW91Cj4gICAgICA+ID4gY2FuIHNpbXBseSBtb3VudCB0aGUg YnVuZGxlIGFmdGVyIHZlcmlmaWNhdGlvbiBhcyBpdCBpcyBiYXNpY2FsbHkgYQo+ICAgICAgPiA+ IHNxdWFzaGZzLiBTdXJlLi4KPiAgICAgID4gPgo+ICAgICAgPiA+IEZvciByYXVjIHdyaXRlLXNs b3QgeW91IGFsc28gcmVseSBvbiBwYXJ0cyBvZiB0aGUgc3lzdGVtLmNvbmYsIGJ1dAo+ICAgICAg PiA+IG5vdCBpbiB0aGUgZml4ZWQgc2NoZW1lLiBJZiB0aGF0IGlzIHdoZXJlIHlvdXIgaXNzdWUg cmVzaWRlcywgeW91Cj4gICAgICA+ID4gc2hvdWxkIGJlIGZpbmUgd2l0aCB0aGF0LiBTdXJlLiBX ZSB3ZXJlIGFsc28gY29uc2lkZXJpbmcgcmVmZXJyaW5nIHRvCj4gICAgICA+ID4gdGhlIG1hbmlm ZXN0IGZpbGUgd2hlbiB0aGUgYnVuZGxlIGdldHMgbW91bnRlZAo+ICAgICAgPiA+Cj4gICAgICA+ ID4gQ291bGQgeW91IGdpdmUgbWUgYSBoaW50IHdoYXQgZm9yY2VzIHlvdSB0byBkbyB0aGlzIGtp bmQgb2YgbWFudWFsCj4gICAgICA+ID4gaGFuZGxpbmc/IE1heWJlIHRoZW4gd2UgY2FuIHRoaW5r IGFib3V0IGEgcG9zc2libGUgc29sdXRpb24gbW9yZQo+ICAgICAgPiA+IHRhcmdldGVkLgo+ICAg ICAgPiA+Cj4gICAgICA+ID4gKiBGb3Igbm93LCB3ZSBoYXZlIDQgcGFydGl0aW9ucyBjb250YWlu aW5nIHJmcy4wLCByZnMuMSwgYXBwZnMuMCBhbmQKPiAgICAgID4gPiBhcHBmcy4xLiBXZSB3b3Vs ZCBsaWtlIHRvIGhhdmUgYSBzY2hlbWUgd2hlcmUgb25seSB0aGUgcGFydGl0aW9uIHRoYXQKPiAg ICAgID4gPiBoYXMgYmVlbiBmbGFzaGVkIHdpdGggYnVuZGxlIGRhdGEgaXPCoCBjaGFuZ2VkIGku ZSBsZXRzIHNheSBjdXJyZW50bHkKPiAgICAgID4gPiB3ZSBhcmUgdXNpbmcgcmZzLjAgYW5kIGFw cGZzLjAuIE5vdyBpZiB3ZSBmbGFzaCBhIGJ1bmRsZSBjb250YWluaW5nCj4gICAgICA+ID4gYXBw ZnMsIG9uIG5leHQgcmVib290LCBzeXN0ZW0gc2hvdWxkIHVzZSByZnMuMCBhbmQgYXBwZnMuKjEq Lgo+ICAgICAgPiA+IFNpbWlsYXJseSBmb3IgcmZzLgo+ICAgICAgPiA+Cj4gICAgICA+ID4gKiBU byBhY2hpZXZlIHRoaXMgd2Ugc3RhcnRlZCB3aXRob3V0IGEgcGFyZW50IGNoaWxkIHJlbGF0aW9u c2hpcCBpbgo+ICAgICAgPiA+IHN5c3RlbS5jb25mLiBTbyB3aGVuIHdlIGFyZSBleGVjdXRpbmcg ZnJvbSBhcHBmcy4wIGFuZCByZnMuMCBhbmQgd2UKPiAgICAgID4gPiB0cnkgdG8gZmxhc2ggYSBi dW5kbGUgY29udGFpbmluZyBhcHBmcywgaXQgd291bGQgdHJ5IHRvIHdyaXRlIHRvCj4gICAgICA+ ID4gYXBwZnMuMCB3aGljaCB3b3VsZCBhbHJlYWR5IGJlIGluIHVzZSBhbmQgaGVuY2Ugd2Ugd291 bGQgZ2V0IGVycm9ycy4KPiAgICAgID4gPiBTbyB3ZSBpbnRyb2R1Y2VkIHRoZSBwYXJlbnQgY2hp bGQgcmVsYXRpb25zaGlwCj4gICAgICA+ID4KPiAgICAgID4gPiAqIE5vdyBfd2l0aF8gcGFyZW50 IGNoaWxkIHJlbGF0aW9uc2hpcCB0aGUgaXNzdWUgYWJvdmUgd291bGQgYmUKPiAgICAgID4gPiBy ZXNvbHZlZC4gTm93IHdoZW4gd2UgYm9vdCBmcm9tICJyZnMuMCIgYW5kIGV4ZWN1dGUgYXBwcyBm cm9tCj4gICAgICA+ID4gImFwcGZzLjAiIGFuZCBmbGFzaCBhIGFwcGZzIGJ1bmRsZSBpdCB3b3Vs ZCB3cml0ZSB0byBhcHBmcy4xLiBPbgo+ICAgICAgPiA+IHJlYm9vdCwgYXMgcGVyIG91ciBzY2hl bWUgd2Ugd291bGQgYm9vdCBmcm9tICJyZnMuMCIgYW5kIGV4ZWN1dGUgYXBwcwo+ICAgICAgPiA+ IGZyb20gImFwcGZzLjEiLiBOb3cgd2hlbiB3ZSB0cnkgdG8gZG8gYSByYXVjIGluc3RhbGwgaXQg d291bGQgd3JpdGUKPiAgICAgID4gPiB0byAiYXBwZnMuMSIgYXMgaXQgd291bGQgY29uc2lkZXIg YXBwZnMuMCBhcyBhY3RpdmUgcGFydGl0aW9uIGR1ZSB0bwo+ICAgICAgPiA+IHBhcmVudC1jaGls ZCByZWxhdGlvbnNoaXAuCj4gICAgICA+ID4KPiAgICAgID4gPiAqIEhlbmNlIGFzIHdlIHdlcmUg cnVubmluZyBpbnRvIGFsbCB0aGVzZSBpc3N1ZXMgd2UgZmVsdCB0aGF0IGl0Cj4gICAgICA+ID4g d291bGQgaGVscCBvdXIgY2F1c2UgaWYgd2UgaGFkIG91ciBvd24gc2xvdCBzZWxlY3Rpb24gbG9n aWMuIEhlbmNlCj4gICAgICA+ID4gdGhlIGRldmlhdGlvbiB0byByYXVjIGluZm8gKyByYXVjIGV4 dHJhY3QgKyByYXVjIHdyaXRlLXNsb3QuCj4gICAgICA+Cj4gICAgICA+IE9rLCBJIHRoaW5rIEkg Z290IHlvdXIgYmFzZSBtb3RpdmF0aW9uLgo+ICAgICAgPgo+ICAgICAgPiBXaGF0IGRvIHlvdSBk byB0byBhc3N1cmUgdGhhdCB0aGUgcmlnaHQgYXBwZnMgaXMgdXNlZD8KPiAgICAgID4gSXMgdGhh dCBtZWNoYW5pc20gYXRvbWljPyBJLmUuIHdoZW4geW91IGFyZSBpbnRlcnJ1cHRlZCBiZXR3ZWVu IHVwZGF0ZQo+ICAgICAgPiBvZiBhcHBmcywgZG9lcyBpdCBzdGlsbCBib290IHRoZSB2YWxpZCBv bmU/Cj4gICAgICA+Cj4gCj4gICAgIFdlIGhhdmUgeWV0IG5vdCByZWFjaGVkIGEgc3RhZ2Ugd2hl cmUgd2Ugd291bGQgc3RhcnQgcmVsZWFzaW5nIG91dCB0aGUKPiAgICAgYXBwIGJ1bmRsZXMuIFBy b2JhYmx5IHdlIHdvdWxkIGRvIGl0IGluIGEgbW9udGggb3IgdHdvLgo+ICAgICBZZXMgaWYgd2Ug YXJlIGludGVycnVwdGVkIGJldHdlZW4gdXBkYXRlIG9mIGFwcGZzIHdlIHdvdWxkIG5vdCBzd2l0 Y2gKPiAgICAgdG8gdXNpbmcgdGhlIHRhcmdldCBwYXJ0aXRpb24gYW5kIGNvbnRpbnVlIHVzaW5n IHRoZSBzYW1lIGFwcGZzCj4gICAgIHBhcnRpdGlvbgoKV2hlcmUgZG8geW91IHN0b3JlIHRoZSBp bmZvcm1hdGlvbiBhYm91dCB0aGUgYWN0aXZlIHBhcnRpdGlvbj8KQXMgeW91IGNhbm5vdCBwbGFj ZSBpdCBpbiB0aGUgcm9vdGZzLi4uCgo+ICAgICAgPiBJbiBnZW5lcmFsLCBhcyB5b3UgbWlnaHQg aGF2ZSByZWFkLCBvdXIgc3RyaWN0IGRlc2lnbiBjYXNlIGFuZAo+ICAgICAgPiByZWNvbW1lbmRh dGlvbiBpcyB0aGF0IHlvdSBvbmx5IGluc3RhbGwgd2VsbC10ZXN0ZWQgc2V0cyBvZiBhbGwgcGll Y2VzCj4gICAgICA+IG9mIHNvZnR3YXJlLiBJZiB5b3UgdXNlIGl0IGFzIGFuICdhcHAgc3RvcmUn IG1heWJlIHRoYXQgaXMgbm90ZSBhIHRhc2sKPiAgICAgID4gZm9yIFJBVUM/Cj4gICAgICA+Cj4g Cj4gICAgIE9oaC4gQnV0IHdlIGFyZSBhYmxlIHRvIGFjaGlldmUgdGhlIGFwcGZzIHVwZ3JhZGVz IGJ5IG1lbmRpbmcgcmF1YyBhCj4gICAgIGxpdHRsZSBiaXQuIElzbnQgdGhhdCBvaz8gV291bGQg eW91IGJlIGFibGUgdG8gcHJvdmlkZSBtb3JlIGRldGFpbHMgYXMKPiAgICAgdG8gd2h5IGl0IG1p Z2h0IG5vdCBiZSBhIGdvb2QgaWRlYSB0byB1c2UgcmF1YyBmb3IgYXBwLW9ubHkgdXBncmFkZXM/ CgpJdCdzIG5vdCBtYWlubHkgYWJvdXQgdXNpbmcgUkFVQywgaXQncyBtYWlubHkgYWJvdXQgaG93 IHRvIHNldHVwIGEgcmVsaWFibGUgc3lzdGVtCmFuZCBhIHJlbGlhYmxlIHJlZHVuZGFuY3kgYm9v dCEKCkJhc2ljYWxseSwgd2UgaGF2ZSAyIG9wdGlvbnM6CgoxKSBVc2luZyB0aGUgYXBwbGljYXRp b24gdG9nZXRoZXIgd2l0aCB0aGUgcm9vdGZzIGl0IHdhcyB0ZXN0ZWQgZm9yIChoaWdobHkgcmVj b21tZW5kZWQpIQoKRm9yIHRoaXMgeW91IG5lZWQgdG8gYXNzdXJlIHRoYXQgcm9vdGZzIGFuZCBh cHBmcyBjb250YWluIHRoZSBleGFjdCBzYW1lIHN0YXRlCnRoYXQgeW91IHVzZWQgZm9yIHRlc3Rp bmcgYW5kIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGZvciBSQVVDIGlzIHZhbGlkLgoKMikgVXNpbmcg dGhlIGFwcGxpY2F0aW9uIG9uIGFueSByb290ZnMgKE5PVCByZWNvbW1lbmRlZCkKClRoaXMgaXMg d2hhdCB5b3UgcHJvYmFibHkgZG8gb24gY29uc3VtZXIgc3lzdGVtcyBzdWNoIGFzIEFuZHJvaWQg YnV0IHdoYXQgaXMKcmVhbGx5IG5vdCByZWNvbW1lbmRlZCBpZiB5b3Ugd2FudCB0byBkZWxpdmVy IGEgc3lzdGVtIHRoYXQgaXMgcHJvdmVuIHRvIHdvcmsuCgo+ICAgICBUaGlzIHdvdWxkIGhlbHAg dXMgYmV0dGVyIGRlc2lnbiBvdXIgdXBkYXRlIHNjaGVtZS4gVGhlIGNvcmUgaWRlYQo+ICAgICBi ZWhpbmQgYWxsIHRoZSBleHBlcmltZW50cyBpcyB3ZSB3aXNoIHRvIG1haW50YWluIHN5bW1ldHJ5 IGFuZCBhY3Jvc3MKPiAgICAgcmVib290cyBjaGFuZ2Ugb25seSB0aGUgcGFydGl0aW9uIHRoYXQg aGFzIGJlZW4gdXBkYXRlZC4gU28gdGhhdHMgaG93Cj4gICAgIHRoZSBpZGVhIG9mIGhhdmluZyBh IHJmcy4wICsgYXBwZnMuMSBjb21iaW5hdGlvbiBpbiBwbGFjZSBvZiByZnMuMSArCj4gICAgIGFw cGZzLjEgY29tZXMgaW50byB0aGUgcGljdHVyZS4KPiAgICAgRm9yIG5vdywgd2UgaGF2ZSAzIHVz ZS1jYXNlcyAodGhhdCBtaWdodCBpbmNyZWFzZSkKPiAgICAgLSByZnMgb25seSB1cGRhdGVzCj4g ICAgIC0gYXBwZnMgb25seSB1cGRhdGVzCj4gICAgIC0gcmZzICsgYXBwZnMgdXBkYXRlcwoKTm90 ZSB0aGF0IGlmIHRoZXNlIGFyZSBhbGwgc3BlY2lhbCBjYXNlcywgeW91IGFsc28gaGF2ZSB0byB0 ZXN0IGFsbCB0aGVzZSBzcGVjaWFsCmNhc2VzIGFuZCB0aGUgbW9yZSB0aGV5IGJlY29tZSB0aGUg bW9yZSB5b3VyIHRlc3RpbmcgdmVjdG9yIGFuZCB0aHVzIGVmZm9ydCB3aWxsCmdyb3chCgpSQVVD IGlzIGFsc28gZXhwbGljaXRseSBub3QgZGVzaWduZWQgdG8gaGFuZGxlIHRoZXNlIDMgY2FzZXMg ZGlmZmVyZW50bHkuCgpZb3UgY291bGQgaGF2ZSBhcHBmcyBhbmQgcm9vdGZzIGFzIHR3byBpbmRl cGVuZGVudCByZWR1bmRhbmN5IHNsb3RzCih3aXRob3V0IHBhcmVudC1jaGlsZCByZWxhdGlvbikg YnV0IHRoZW4geW91IHdpbGwgbm90IGJlIGFibGUgdG8gdXBkYXRlCnJvb3RzZiBhbmQgYXBwZnMg dG9nZXRoZXIgYXMgdGhpcyB3b3VsZCByZXF1aXJlIHlvdSB0byBzd2l0Y2ggYm90aCBhcHBmcwph bmQgcm9vdGZzIHdoaWNoIGlzIGFsd2F5cyBub24tYXRvbWljIGFuZCB0aHVzIG91dCBvZiBzY29w ZSBmb3IgUkFVQy4KCj4gICAgICA+IEJ1dCwgd2hhdCBzcGVha3MgYWdhaW5zdCBoYXZpbmcgYm90 aCByb290ZnMgYW5kIGFwcGZzIHVwZGF0ZWQgdG9nZXRoZXI/Cj4gICAgICA+IElzIHRoYXQgaW5z dGFsbGF0aW9uIHRpbWUgLyBidW5kbGUgc2l6ZT8KPiAgICAgID4KPiAKPiAgICAgWWVzLiBJdHMg bWFpbmx5IHRoZSBidW5kbGUgc2l6ZS4gV2Ugd291bGQgYmUgdXBkYXRpbmcgb3VyIGFwcHMgbW9y ZQo+ICAgICBmcmVxdWVudGx5IGFzIGNvbXBhcmVkIHRvIHJmcy4gSGVuY2Ugd2Ugd291bGQgd2Fu dCB0byByZWxlYXNlIGFzIHNtYWxsCj4gICAgIGEgYnVuZGxlIGFzIHdlIHBvc3NpYmx5IGNhbi4K ClRoaXMgc291bmRzIG1vcmUgb3IgbGVzcyBsaWtlIGEgcmVxdWlyZW1lbnQgZm9yIChiaW5hcnkg b3IgZmlsZS1iYXNlZCkgZGVsdGEgdXBkYXRlcy4KCkZpbGUtYmFzZWQgZGVsdGEgaXMgb24gb3Vy IHdpc2ggbGlzdCwgYmluYXJ5IGRlbHRhIGlzIHNvbWV0aGluZyB3ZSBhY2hpZXZlIChlc3BlY2lh bGx5CmZvciBidW5kbGUtb3Zlci1uZXR3b3JrIGNhc2VzKSB3aXRoIG91ciBjYXN5bmMgc3VwcG9y dCBbMV0KCj4gICAgICA+IE5vdGUgdGhhdCBSQVVDIHdpbGwgc2tpcCB0aGUgYWN0dWFsIHVwZGF0 ZSBvZiB0aGUgcm9vdGZzIGFueXdheSBpZiB0aGUKPiAgICAgID4gc2xvdCdzIGhhc2ggbWF0Y2hl cyB0aGUgaGFzaCBvZiB0aGUgaW1hZ2UgdG8gaW5zdGFsbC4gVGh1cyBpZiB5b3UgZG8gbm90Cj4g ICAgICA+IGNoYW5nZSB0aGUgcm9vdGZzIGNvbnRlbnQgYWNyb3NzIG11bHRpcGxlIGluc3RhbGF0 aW9ucywgaXQgd2lsbCBza2lwCj4gICAgICA+IHRoZSByb290ZnMgd3JpdGluZywgYW55d2F5Lgo+ ICAgICAgPgo+ICAgICAgPgo+IAo+ICAgICBPay4uCj4gCj4gICAgICA+IEFub3RoZXIgY29uY2Vw dCB0byB0aGlua3MgYWJvdXQgaXMgKGlmIHlvdSBpbnNpc3Qgb24gdXBkYXRpbmcgdGhlCj4gICAg ICA+IGFwcGZzIHNlcGFyYXRlbHkpLCBpZiB5b3UgZG8gbm90IG1vdmUgdGhlIHN3aXRjaGluZyBw b2ludCBlbnRpcmVseSB0bwo+ICAgICAgPiBiZSBpbiB0aGUgcm9vdGZzLiBUaGVuIFJBVUMgd291 bGQgaW5jb3Jwb3JhdGUgd2l0aCB0aGUgYXBwZnMtc2VsZWN0aW9uCj4gICAgICA+IGxvZ2ljIHlv dSBjdXJyZW50bHkgdXNlLiBNaWdodCBuZWVkIHNvbWUgZXh0ZW5zaW9uIGZvciB1c2luZyBjdXN0 b20gYm9vdAo+ICAgICAgPiBzZWxlY3Rpb24gc2NyaXB0cywgYnV0IHRoaXMgaXMgb24gb3VyIGxp c3QgYW55d2F5Lgo+ICAgICAgPgo+IAo+ICAgICBZZXMuIEZvciBub3csIHdlIGFyZSBwbGFubmlu ZyB0byBoYXZlIHRoYXQgaW50ZWxsaWdlbmNlIG9mCj4gICAgIGFwcGZzLXNlbGVjdGlvbiBpbiBv dXIgYm9vdCBzY3JpcHQuCgpNYXliZSB5b3Ugc2hvdWxkIGJlIGNsZWFyIGFib3V0IHRoaXMgaGFu ZGxpbmcgZmlyc3QgYmVmb3JlIHBsYW5uaW5nIHlvdQp1cGRhdGUgc29sdXRpb25zIG9uIGl0LgoK PiAgICAgID4gVGhlIG9wZW4gcXVlc3Rpb24gd291bGQgYmUgaWYgeW91IGFsc28gaW50ZW5kIHRv IHVwZGF0ZSB5b3VyIHJvb3RmcyBhbmQKPiAgICAgID4gaWYgaXQgaXMgb2sgdG8gbmV2ZXIgdXBk YXRlIHRoZSBhcHBmcyBhbmQgcm9vdGZzIHRvZ2V0aGVyLCBhcyB0aGlzIHdvdWxkCj4gICAgICA+ IG5vdCB3b3JrIHdpdGggbXkgYXBwcm9hY2guCj4gICAgICA+Cj4gICAgICA+Cj4gCj4gICAgIFll cy4gRm9yIG5vdyB3ZSBoYXZlIDMgZGlmZmVyZW50IHRhcmdldCB1c2UtY2FzZXMKPiAgICAgLSBy ZnMgb25seSA6IGFuIHVwZGF0ZSBtaWdodCBoYXBwZW4gb25jZSBldmVyeSA2IG1vbnRocyBvciBz bwo+ICAgICAtIGFwcGZzIG9ubHkgOiBhbiB1cGRhdGUgbWlnaHQgaGFwcGVuIG1vbnRobHkgdG8g c3RhcnQgd2l0aCBhbmQgdGhlbgo+ICAgICBvbiBhIG5lZWQgYmFzaXMKPiAgICAgLSByZnMgKyBh cHBmcyA6IHByb2JhYmx5IG9uY2UgZXZlcnkgNiBtb250aHMgb3Igc28KClRoZSBjcnVjaWFsIHF1 ZXN0aW9uIGlzOiBEbyB5b3Ugd2FudCB0byBzdXBwb3J0IHdyaXRpbmcgdGhlIHNhbWUgYXBwZnMg b24gZGlmZmVyZW50IChub24tdGVzdGVkKQp2YXJpYW50cyBvZiB0aGUgcm9vdGZzIT8KCklmIG5v dCwgbWVhbmluZyBpZiB5b3Ugb25seSB3YW50IHRvIGluc3RhbGwgZGlmZmVyZW50IGFwcGZzIHRv IGEgZGVkaWNhdGVkIHJvb3RmcywKSSB3b3VsZCBzdHJvbmdseSByZWNvbW1lbmQgYSBzb2x1dGlv biB0aGF0IGFsc28gcmVmZXJlbmNlcyB0aGUgdGFyZ2V0IHJvb2ZzIFNIQSBpbgp0aGUgbWFuaWZl c3QuCgpJZiBidW5kbGUgc2l6ZSBpcyByZWFsbHkgYSBodWdlIHByb2JsZW0gYW5kIGlmIHRoZSAo Y29tcHJlc3NlZCEpIHJvb3RmcyBpbiB0aGUgYnVuZGxlCmlzIHN0aWxsIHRvbyBsYXJnZSBmb3Ig eW91LCBtYXliZSBoYXZpbmcgc29tZSBraW5kIG9mIGR1bW15IHNsb3QgZGVzY3JpcHRpb24gdGhh dAphc3N1cmVzIGhhdmluZyB0aGUgcmlnaHQgcm9vdGZzIGZvciBpbnN0YWxsYXRpb24gYnV0IG5v IGFjdHVhbCBpbWFnZSBmb3IgaXQgY29udGFpbmVkCmNvdWxkIGJlIGEgc29sdXRpb24uCgpOb3Rl IHRoYXQgdGhpcyBzdGlsbCByZXF1aXJlcyB5b3UgdG8gaGF2ZSB0aGUgZXhhY3Qgc2FtZSByb290 ZnMgb24gYm90aCByZWR1bmRhbnQgcm9vdGZzIHNsb3RzCmFuZCB0aGF0IGFuIHVwZGF0ZSBvZiB0 aGUgYXBwZnMgd2lsbCBhbHdheXMgc3dpdGNoIGJvdGggcm9vdGZzIGFuZCBhcHBmcyEKClRoaXMg d2F5IHlvdSBkbyBhbHNvIGRvIG5vdCBuZWVkIGFuIGV4dHJhIGFwcGZzLXN3aXRjaGluZyBidXQg b25seSB0byBhc3N1cmUgdGhhdCB0aGUKcmlnaHQgYXBwZnMgaXMgbW91bnRlZCBieSB0aGUgY29y cmVzcG9uZGluZyByb290ZnMuCgpTaW1pbGFyIGRpc2N1c3Npb25zIHdlIGFsc28gaGF2ZSBpbiBH aXRIdWI6CgpodHRwczovL2dpdGh1Yi5jb20vcmF1Yy9yYXVjL2lzc3Vlcy8zNjAKaHR0cHM6Ly9n aXRodWIuY29tL3JhdWMvcmF1Yy9wdWxsLzM3MAoKQmVzdCByZWdhcmRzLAoKRW5yaWNvCgoKWzFd IGh0dHBzOi8vcmF1Yy5yZWFkdGhlZG9jcy5pby9lbi9sYXRlc3QvYWR2YW5jZWQuaHRtbCNyYXVj LWNhc3luYy1zdXBwb3J0Cgo+IAo+IFRoZSBpbmZvcm1hdGlvbiBjb250YWluZWQgaW4gdGhpcyBl LW1haWwgbWVzc2FnZSAoaW5jbHVkaW5nIGFueQo+IGF0dGFjaG1lbnRzKSBtYXkgYmUgY29uZmlk ZW50aWFsLCBwcm9wcmlldGFyeSwgcHJpdmlsZWdlZCwgb3Igb3RoZXJ3aXNlCj4gZXhlbXB0IGZy b20gZGlzY2xvc3VyZSB1bmRlciBhcHBsaWNhYmxlIGxhd3MuIEl0IGlzIGludGVuZGVkIHRvIGJl Cj4gY29udmV5ZWQgb25seSB0byB0aGUgZGVzaWduYXRlZCByZWNpcGllbnQocykuIEFueSB1c2Us IGRpc3NlbWluYXRpb24sCj4gZGlzdHJpYnV0aW9uLCBwcmludGluZywgcmV0YWluaW5nIG9yIGNv cHlpbmcgb2YgdGhpcyBlLW1haWwgKGluY2x1ZGluZyBpdHMKPiBhdHRhY2htZW50cykgYnkgdW5p bnRlbmRlZCByZWNpcGllbnQocykgaXMgc3RyaWN0bHkgcHJvaGliaXRlZCBhbmQgbWF5Cj4gYmUg dW5sYXdmdWwuIElmIHlvdSBhcmUgbm90IGFuIGludGVuZGVkIHJlY2lwaWVudCBvZiB0aGlzIGUt bWFpbCwgb3IgYmVsaWV2ZQo+IHRoYXQgeW91IGhhdmUgcmVjZWl2ZWQgdGhpcyBlLW1haWwgaW4g ZXJyb3IsIHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlcgo+IGltbWVkaWF0ZWx5IChieSByZXBseWlu ZyB0byB0aGlzIGUtbWFpbCksIGRlbGV0ZSBhbnkgYW5kIGFsbCBjb3BpZXMgb2YKPiB0aGlzIGUt bWFpbCAoaW5jbHVkaW5nIGFueSBhdHRhY2htZW50cykgZnJvbSB5b3VyIHN5c3RlbSwgYW5kIGRv IG5vdAo+IGRpc2Nsb3NlIHRoZSBjb250ZW50IG9mIHRoaXMgZS1tYWlsIHRvIGFueSBvdGhlciBw ZXJzb24uIFRoYW5rIHlvdSBmb3IgeW91ciBjb29wZXJhdGlvbi4KPgo+IC9UaGlzIGUtbWFpbCBt ZXNzYWdlIChpbmNsdWRpbmcgYW55IGF0dGFjaG1lbnRzKSBtYXkgYmUgY29uZmlkZW50aWFsLCBw cm9wcmlldGFyeSwgcHJpdmlsZWdlZCwgb3Igb3RoZXJ3aXNlwqBleGVtcHQgZnJvbSBkaXNjbG9z dXJlIHVuZGVyIGFwcGxpY2FibGUgbGF3cy4gSWYgeW91IGFyZSBub3QgYW4gaW50ZW5kZWQgcmVj aXBpZW50LCBwbGVhc2UgZGVsZXRlIHRoaXMgbWVzc2FnZS4gVGhhbmsgeW91Li8KCkkgYW0gc3Rp bGwgdW5zdXJlIGlmIEkgYW0gdGhlIGludGVuZGVkIHJlY2lwaWVudCBpZiB5b3Ugc2VuZCBzdWNo IGEgbWFpbAp0byBhIHB1YmxpYyBtYWlsaW5nIGxpc3QuCkkga25vdyB0aGlzIG1pZ2h0IGJlIHN0 YW5kYXJkIG9mIHlvdXIgbWFpbGVyIC8gSVQgYnV0IHJlYWxseSBtYWtlcyBubyBzZW5zZSBvbiBw dWJsaWMKbWFpbGluZyBsaXN0LCBhcGFydCBmcm9tIHRoZSBmYWN0IHRoYXQgcHJvYmFibHkgbm8g b25lIGlzIGFsbG93ZWQgdG8gYW5zd2VyIHlvdS4uLgoKLS0gClBlbmd1dHJvbml4IGUuSy4gICAg ICAgICAgICAgICAgICAgICAgICAgICB8IEVucmljbyBKw7ZybnMgICAgICAgICAgICAgICAgfApJ bmR1c3RyaWFsIExpbnV4IFNvbHV0aW9ucyAgICAgICAgICAgICAgICAgfCBodHRwOi8vd3d3LnBl bmd1dHJvbml4LmRlLyAgfApQZWluZXIgU3RyLiA2LTgsIDMxMTM3IEhpbGRlc2hlaW0sIEdlcm1h bnkgfCBQaG9uZTogKzQ5LTUxMjEtMjA2OTE3LTUwODAgfApBbXRzZ2VyaWNodCBIaWxkZXNoZWlt LCBIUkEgMjY4NiAgICAgICAgICAgfCBGYXg6ICAgKzQ5LTUxMjEtMjA2OTE3LTU1NTUgfAoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClJBVUMgbWFpbGlu ZyBsaXN0