From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Kent Subject: Re: Problem of concurrent mount/umount call Date: Wed, 08 Dec 2010 10:42:00 +0800 Message-ID: <1291776120.17231.0.camel@perseus> References: <4C764463.8000306@cgin.fr> <1284947926.3095.12.camel@localhost> <1284948516.3095.14.camel@localhost> <4CC1AB8F.8010205@cgin.fr> <1288052339.3066.8.camel@localhost> <4CC681D2.5010307@cgin.fr> <1288096606.3066.35.camel@localhost> <4CC6D613.2050502@cgin.fr> <1288145413.3188.7.camel@localhost> <4CFDF63A.2040508@cgin.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <4CFDF63A.2040508@cgin.fr> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: autofs-bounces@linux.kernel.org Errors-To: autofs-bounces@linux.kernel.org To: Erwan =?ISO-8859-1?Q?Loa=EBc?= Cc: autofs@linux.kernel.org T24gVHVlLCAyMDEwLTEyLTA3IGF0IDA5OjU0ICswMTAwLCBFcndhbiBMb2HDq2Mgd3JvdGU6Cj4g SGVsbG8hCj4gCj4gRm9yIGluZm9ybWF0aW9uLCBzaW5jZSBJJ3ZlIHVwZGF0ZWQgb3VyIGF1dG9m cyB3aXRoIHRoZSBzdWdnZXN0ZWQgcGF0Y2gsIAo+IHRoZSBwcm9ibGVtIGhhcyBub3Qgb2NjdXJy ZWQsIGFuZCBJIGRvbid0IHNlZSBhbnkgQ1BVIHVzYWdlIHByb2JsZW0uCgpUaGFua3MgZm9yIGxl dHRpbmcgbWUga25vdy4KSSdsbCBjb21taXQgdGhhdCBjaGFuZ2Ugc29vbiBhcyBJIGdldCBhIGNo YW5jZS4KCj4gCj4gVGhhbmtzISEKPiAKPiBJIGhvcGUgdGhpcyBwcm9ibGVtIGlzIGRlZmluaXRp dmVseSBzb2x2ZWQgOm8pCj4gCj4gLS0KPiBFcndhbiBMb2FlYwo+IAo+IAo+IElhbiBLZW50IHdy b3RlOgo+ID4gT24gVHVlLCAyMDEwLTEwLTI2IGF0IDE1OjIyICswMjAwLCBFcndhbiBMb2HDq2Mg d3JvdGU6Cj4gPj4gSGksCj4gPj4KPiA+PiBGaXJzdCwgdGhhbmsgeW91IGZvciBzcGVuZGluZyB0 aW1lIHRvIGFuYWx5c2UgdGhlIHByb2JsZW0uCj4gPj4KPiA+PiBJJ3ZlIGFwcGx5IHRoZSBwYXRj aCBpbiBvdXIgZGV2IGVudmlyb25uZW1lbnQsIGFuZCBkZWZpbmVkIGEgc2xvdyAKPiA+PiB0aW1l b3V0IGZvciB0aGUgbW91bnQgKDYwcykKPiA+Pgo+ID4+IEZZSSwgaW4gcHJvZHVjdGlvbiwgaW4g b3JkZXIgdG8gbGltaXQgdGhpcyBwcm9ibGVtLCB0aGUgdGltZW91dCBpcyBzZXQgCj4gPj4gdG8g MiBob3Vycy4KPiA+Pgo+ID4+IFdoZW4gaXQgd2lsbCBiZSBwb3NzaWJsZSwgSSdsbCB1cGRhdGUg ZXZlcnkgYXV0b2ZzLiBUaGUgcHJvYmxlbSBpcyBxdWl0ZSAKPiA+PiByYXJlLCBzbyBJIHdvbid0 IGJlIGFibGUgdG8gYXR0ZXN0IHRoYXQgdGhlIHByb2JsZW0gaXMgc29sdmUgb3Igbm90IAo+ID4+ IGltbWVkaWF0bHkuCj4gPiAKPiA+IFJpZ2h0LCB0aGF0IHNvdW5kcyBzZW5zaWJsZSBzaW5jZSBJ IGNhbid0IHdvcmsgb3V0IGhvdyBpdCBnZXRzIHRocm91Z2guCj4gPiAKPiA+IEkgYWxzbyBuZWVk IHRvIGtub3cgdGhhdCB0aGUgY2hhbmdlIGRvZXNuJ3QgY2F1c2UgYW55IHVud2FudGVkIHNpZGUK PiA+IGVmZmVjdHMgc28gbGV0IG1lIGtub3cgaG93IHRoaW5ncyBnby4KPiA+IAo+ID4gQWRkaW5n IGFuIGlzX21vdW50ZWQoKSBjaGVjayBpbiBhIGZyZXF1ZW50bHkgY2FsbGVkIGZ1bmN0aW9uIGxp a2UgdGhpcwo+ID4gY2FuIGhhdmUgYW4gb3ZlcmhlYWQgaWYgeW91ciB1c2luZyB0aGUgb2xkIGlv Y3RsIGludGVyZmFjZSwgd2hpY2ggeW91Cj4gPiBhcmUgYnkgdGhlIGxvb2sgb2YgdGhlIGxvZy4g VGhpcyBzaG91bGQgb25seSBzaG93IHVwIGlmIHlvdSBoYXZlIGEKPiA+IGxhcmdpc2ggbnVtYmVy IG9mIG1vdW50cy4gSG93IG1hbnkgaXMgYSBsYXJnZSBudW1iZXIgaXMgdmVyeSBtdWNoIHNpdGUK PiA+IGRlcGVuZGVudCBidXQgaWYgdGhlIENQVSB1c2FnZSBvZiB0aGUgZGFlbW9uIGlzIGFjY2Vw dGFibGUgdG8geW91IHRoZW4KPiA+IHlvdSBkb24ndCBuZWVkIHRvIHdvcnJ5IGFib3V0IGl0Lgo+ ID4gCj4gPj4gSW4gYWRkaXRpb24sIGNhbiB5b3UgdGVsbCBtZSB3aHkgdGhlIHBhdGNoIGlzICJh dXRvZnMtNS4wLjMgLSBmaXggZXhwaXJlIAo+ID4+IHJhY2UiIGFuZCBub3QgYXV0b2ZzLTUuMC41 ID8KPiA+IAo+ID4gVGhhdCdzIGp1c3QgYSB0eXBvLCBJJ2xsIHJlbmFtZSB0aGUgcGF0Y2ggYmVm b3JlIGNvbW1pdHRpbmcgaXQuCj4gPiAKPiA+PiBUaGFua3MsCj4gPj4KPiA+PiBFcndhbgo+ID4+ Cj4gPj4KPiA+PiBJYW4gS2VudCB3cm90ZToKPiA+Pj4gT24gVHVlLCAyMDEwLTEwLTI2IGF0IDA5 OjIyICswMjAwLCBFcndhbiBMb2HDq2Mgd3JvdGU6Cj4gPj4+PiBTb3JyeSBmb3IgbXkgcHJldmlv dXMgbWFpbCB3aXRoIG1pc3NpbmcgcGFydHMuLi4KPiA+Pj4+Cj4gPj4+Pgo+ID4+Pj4gSWFuIEtl bnQgd3JvdGU6Cj4gPj4+Pj4gT24gRnJpLCAyMDEwLTEwLTIyIGF0IDE3OjE5ICswMjAwLCBFcndh biBMb2HDq2Mgd3JvdGU6Cj4gPj4+Pj4+IEhlbGxvLAo+ID4+Pj4+Pgo+ID4+Pj4+PiBTb3JyeSBm b3IgdGhlIHRpbWUsIGJ1dCBiZWZvcmUgcG9zdGluZyBhZ2FpbiBJJ3ZlIHVwZ3JhZGUgZXZlcnkg Cj4gPj4+Pj4+IHByb2R1Y3Rpb24gc2VydmVycyB3aXRoIG5ld2VzdCBhdXRvZnM0IG1vZHVsZSAo d2l0aCBsYXN0IHBhdGNoKSBhbmQgbGFzdCAKPiA+Pj4+PiBXaGF0IGRvZXMgIm5ld2VzdCBhdXRv ZnM0IG1vZHVsZSIgbWVhbiBleGFjdGx5Pwo+ID4+Pj4gWWVzIGl0IGlzIG5vdCB0aGUgIm5ld2Vz dCBtb2R1bGUiIGJ1dCB0aGUgbW9kdWxlIHJlY29tcGlsZWQgd2l0aCB0aGUgCj4gPj4+PiBwYXRj aCBhdXRvZnM0LTIuNi4yNi12NS11cGRhdGUtMjAwOTA5MDMucGF0Y2gKPiA+Pj4gT0suCj4gPj4+ Cj4gPj4+Pj4+IGF1dG9tb3VudCB3aXRoIGFsbCBwYXRjaCBFWENFUFQgdGhlc2U6Cj4gPj4+Pj4+ Cj4gPj4+Pj4+IGF1dG9mcy01LjAuNS1maXgtcmVzdGFydC5wYXRjaAo+ID4+Pj4+PiBhdXRvZnMt NS4wLjUtZml4LXN0YXR1cy1wcml2aWxlZ2UtZXJyb3IucGF0Y2gKPiA+Pj4+Pj4gYXV0b2ZzLTUu MC40LWFsd2F5cy1yZWFkLWZpbGUtbWFwcy1tb3VudC1sb29rdXAtbWFwLXJlYWQtZml4LnBhdGNo Cj4gPj4+Pj4+IGF1dG9mcy01LjAuNS1maXgtZGlyZWN0LW1hcC1ub3QtdXBkYXRpbmctb24tcmVy ZWFkLnBhdGNoCj4gPj4+Pj4+IGF1dG9mcy01LjAuNS1hZGQtZXh0ZXJuYWwtYmluZC1tZXRob2Qu cGF0Y2gKPiA+Pj4+Pj4gYXV0b2ZzLTUuMC41LWZpeC1hZGQtc2ltcGxlLWJpbmQtYXV0aC5wYXRj aAo+ID4+Pj4+PiBhdXRvZnMtNS4wLjUtYWRkLWR1bXAtbWFwcy1vcHRpb24ucGF0Y2gKPiA+Pj4+ Pj4gYXV0b2ZzLTUuMC41LWZpeC1zdWJtb3VudC1zaHV0ZG93bi13YWl0LnBhdGNoCj4gPj4+Pj4+ Cj4gPj4+Pj4+Cj4gPj4+Pj4+IFRvZGF5IEkgaGFkIHRoZSBzYW1lIGJlaGF2aW91ciB0aGFuIHRo ZSBpc3N1ZSBleHBsYWluZWQgbXkgcHJldmlvdXMgbWFpbC4KPiA+Pj4+Pj4KPiA+Pj4+Pj4gLS0t LS0tLS0tLS0tLS0tLS0tLS0KPiA+Pj4+Pj4gT2N0IDIyIDE2OjQ0OjA2IFNFUlZFUk5BTUUgYXV0 b21vdW50WzI2NjVdOiB1bW91bnRfYXV0b2ZzX29mZnNldDogCj4gPj4+Pj4+IGNvdWxkbid0IGdl dCBpb2N0bCBmZCBmb3Igb2Zmc2V0IC9jaWZzL1hYWFhYWFgvdm9sdW1lOiBObyBzdWNoIGZpbGUg b3IgCj4gPj4+Pj4+IGRpcmVjdG9yeQo+ID4+Pj4+PiBPY3QgMjIgMTY6NDQ6MDYgU0VSVkVSTkFN RSBhdXRvbW91bnRbMjY2NV06IAo+ID4+Pj4+PiBoYW5kbGVfcGFja2V0X21pc3NpbmdfZGlyZWN0 OjEzNjM6IGNhbid0IGZpbmQgbWFwIGVudHJ5IGZvciAoMjAsMzU0ODU0NSkKPiA+Pj4+Pj4gLS0t LS0tLS0tLS0tLS0tLS0tLS0KPiA+Pj4+PiBUaGlzIGNvdWxkIGJlIGNhdXNlZCBieSBhIHVtb3Vu dCByZXR1cm5pbmcgc3VjY2VzcyB3aGVuIGluIGZhY3QgaXQKPiA+Pj4+PiBkaWRuJ3Qgc3VjY2Vl ZCB3aXRoIHRoZSB1bW91bnQuIEFyZSB5b3Ugc3VyZSB1bW91bnQgaXMgcmV0dXJuaW5nIGNvcnJl Y3QKPiA+Pj4+PiBzdGF0dXM/Cj4gPj4+PiBVbmZvcnR1bmFseSB0aGUgbGFzdCBjYXNlIG9jY3Vy ZWQgb24gcHJvZHVjdGlvbiBzZXJ2ZXIgd2l0aCBkZWJ1ZyAKPiA+Pj4+IGRpc2FibGUuIEkgY2Fu J3QgZmluZCBtb3JlIGluZm9ybWF0aW9uIGluIGxvZ2ZpbGUuLi4KPiA+Pj4+Cj4gPj4+PiBCdXQs IGFzIEkndmUgZXhwbGFpbmVkIGluIG15IHByZXZpb3VzIG1haWwsIHRoaXMgY291bGQgbG9naWNh bCB3aXRoIHRoZSAKPiA+Pj4+IGJhZCBzZXF1ZW5jZSBmb3VuZCBpbiBteSBwcmV2aW91cyBjYXNl Ogo+ID4+Pj4KPiA+Pj4+ICpDYWxsIHRvIHRoZSBzaGFyZSAvY2lmcy9YWFhYWFhYL3ZvbHVtZQo+ ID4+Pj4gKk1vdW50IC9jaWZzL1hYWFhYWFgvdm9sdW1lIGV4cGlyaW5nCj4gPj4+PiAqTmV3IGNh bGwgdG8gdGhlIHNoYXJlIC9jaWZzL1hYWFhYWFgvdm9sdW1lCj4gPj4+PiAqVW1vdW50IC9jaWZz L1hYWFhYWFgvdm9sdW1lCj4gPj4+IEJ1dCB0aGF0IGlzbid0IHF1aXRlIHdoYXQgdGhlIHByb2Js ZW0gaXMuCj4gPj4+Cj4gPj4+IEkndmUgaGFkIGEgY2xvc2VyIGxvb2sgYXQgdGhlIGxvZyBhbmQ6 Cj4gPj4+Cj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGhh bmRsZV9wYWNrZXRfZXhwaXJlX2RpcmVjdDogdG9rZW4gMTUyNiwgbmFtZSAvY2lmcy9TRVJWMi9U TV90ZXJtb3oKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTog ZXhwaXJpbmcgcGF0aCAvY2lmcy9TRVJWMi9UTV90ZXJtb3oKPiA+Pj4gQXVnIDI2IDEwOjExOjQy IGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50X211bHRpOiBwYXRoIC9jaWZzL1NFUlYy L1RNX3Rlcm1veiBpbmNsIDEKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50 WzE3ODI3XTogdW1vdW50X3N1YnRyZWVfbW91bnRzOiB1bm1vdW50aW5nIGRpciA9IC9jaWZzL1NF UlYyL1RNX3Rlcm1vego+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4 MjddOiBleHBpcmVkIC9jaWZzL1NFUlYyL1RNX3Rlcm1vego+ID4+PiBBdWcgMjYgMTA6MTE6NDIg YmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBpb2N0bF9zZW5kX3JlYWR5OiB0b2tlbiA9IDE1MjYK PiA+Pj4KPiA+Pj4gL2NpZnMvU0VSVjIvVE1fdGVybW96IGlzIHVtb3VudGVkLgo+ID4+Pgo+ID4+ PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBoYW5kbGVfcGFja2V0 OiB0eXBlID0gNQo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4Mjdd OiBoYW5kbGVfcGFja2V0X21pc3NpbmdfZGlyZWN0OiB0b2tlbiAxNTI3LCBuYW1lIC9jaWZzL1NF UlYyL1RNX3Rlcm1veiwgcmVxdWVzdCBwaWQgMjk1MjMKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJh Y2NodXMgYXV0b21vdW50WzE3ODI3XTogYXR0ZW1wdGluZyB0byBtb3VudCBlbnRyeSAvY2lmcy9T RVJWMi9UTV90ZXJtb3oKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3 ODI3XTogbG9va3VwX21vdW50OiBsb29rdXAocHJvZ3JhbSk6IC9jaWZzL1NFUlYyL1RNX3Rlcm1v eiAtPiAtZnN0eXBlPWNpZnMsZmlsZV9tb2RlPTA2NDQsZGlyX21vZGU9MDc1NSx1aWQ9dW5pb2ss Z2lkPXVuaW9rLGNyZWRlbnRpYWxzPS9ldGMvbXljcmVkZmlsZSA6Ly9TRVJWMi9UTV90ZXJtb3oK PiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogcGFyc2VfbW91 bnQ6IHBhcnNlKHN1bik6IGV4cGFuZGVkIGVudHJ5OiAtZnN0eXBlPWNpZnMsZmlsZV9tb2RlPTA2 NDQsZGlyX21vZGU9MDc1NSx1aWQ9dW5pb2ssZ2lkPXVuaW9rLGNyZWRlbnRpYWxzPS9ldGMvbXlj cmVkZmlsZSA6Ly9TRVJWMi9UTV90ZXJtb3oKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMg YXV0b21vdW50WzE3ODI3XTogcGFyc2VfbW91bnQ6IHBhcnNlKHN1bik6IGdhdGhlcmVkIG9wdGlv bnM6IGZzdHlwZT1jaWZzLGZpbGVfbW9kZT0wNjQ0LGRpcl9tb2RlPTA3NTUsdWlkPXVuaW9rLGdp ZD11bmlvayxjcmVkZW50aWFscz0vZXRjL215Y3JlZGZpbGUKPiA+Pj4gQXVnIDI2IDEwOjExOjQy IGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogc3VuX21vdW50OiBwYXJzZShzdW4pOiBtb3VudGlu ZyByb290IC90bXAvYXV0bzFJN2dCNywgbW91bnRwb2ludCAvY2lmcy9TRVJWMi9UTV90ZXJtb3os IHdoYXQgLy9TRVJWMi9UTV90ZXJtb3osIGZzdHlwZSBjaWZzLCBvcHRpb25zIGZpbGVfbW9kZT0w NjQ0LGRpcl9tb2RlPTA3NTUsdWlkPXVuaW9rLGdpZD11bmlvayxjcmVkZW50aWFscz0vZXRjL215 Y3JlZGZpbGUKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTog ZG9fbW91bnQ6IC8vU0VSVjIvVE1fdGVybW96IC9jaWZzL1NFUlYyL1RNX3Rlcm1veiB0eXBlIGNp ZnMgb3B0aW9ucyBmaWxlX21vZGU9MDY0NCxkaXJfbW9kZT0wNzU1LHVpZD11bmlvayxnaWQ9dW5p b2ssY3JlZGVudGlhbHM9L2V0Yy9teWNyZWRmaWxlIHVzaW5nIG1vZHVsZSBnZW5lcmljCj4gPj4+ IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IG1vdW50X21vdW50OiBt b3VudChnZW5lcmljKTogY2FsbGluZyBta2Rpcl9wYXRoIC90bXAvYXV0bzFJN2dCNwo+ID4+PiBB dWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBtb3VudF9tb3VudDogbW91 bnQoZ2VuZXJpYyk6IGNhbGxpbmcgbW91bnQgLXQgY2lmcyAtcyAtbyBmaWxlX21vZGU9MDY0NCxk aXJfbW9kZT0wNzU1LHVpZD11bmlvayxnaWQ9dW5pb2ssY3JlZGVudGlhbHM9L2V0Yy9teWNyZWRm aWxlIC8vU0VSVjIvVE1fdGVybW96IC90bXAvYXV0bzFJN2dCNwo+ID4+PiBBdWcgMjYgMTA6MTE6 NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBtb3VudF9tb3VudDogbW91bnQoZ2VuZXJpYyk6 IG1vdW50ZWQgLy9TRVJWMi9UTV90ZXJtb3ogdHlwZSBjaWZzIG9uIC90bXAvYXV0bzFJN2dCNwo+ ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBtb3ZlX21vdW50 OiBtb3ZlZCBtb3VudCB0cmVlIGZyb20gL3RtcC9hdXRvMUk3Z0I3IHRvIC9jaWZzL1NFUlYyL1RN X3Rlcm1vego+ID4+Pgo+ID4+PiBBbmQgaXMgdGhlbiBtb3VudGVkIGFnYWluIGhlcmUsIGJ1dCB0 aGUgcmVxdWVzdCBpcyBub3QgY29tcGxldGUgYW5kCj4gPj4+IHdlIGdldCBhbiBleHBpcmUsIHdo aWNoIG1lYW5zIHRoYXQgdGhlIGtlcm5lbCBzYXcgdGhlIHRyZWUgb2YgbW91bnRzCj4gPj4+IGJl bG93IC9jaWZzL1NFUlYyIGFzIG5vdCBidXN5LiBUaGlzIG1lYW5zIHRoZSBkZW50cnkgd2FzIHNl bGVjdGVkCj4gPj4+IGZvciBleHBpcmUgYmVmb3JlIHRoZSBtb3VudCwgYW5kIGluIGZhY3QgYmVm b3JlIHRoZSBwYXRoIHdhbGsgd2hpY2gKPiA+Pj4gY2F1c2VkIGl0IGV2ZW4gc3RhcnRlZC4KPiA+ Pj4KPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogaGFuZGxl X3BhY2tldDogdHlwZSA9IDQKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50 WzE3ODI3XTogaGFuZGxlX3BhY2tldF9leHBpcmVfaW5kaXJlY3Q6IHRva2VuIDE1MjgsIG5hbWUg U0VSVjIKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogZXhw aXJpbmcgcGF0aCAvY2lmcy9TRVJWMgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRv bW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGk6IHBhdGggL2NpZnMvU0VSVjIgaW5jbCAxCj4gPj4+ IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudF9tdWx0aV90 cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi8wMV9NQVJLRVRJTkcKPiA+Pj4gQXVn IDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50ZWQgb2Zmc2V0IG1v dW50IC9jaWZzL1NFUlYyLzAxX01BUktFVElORwo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1 cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3VudCBvZmZzZXQg L2NpZnMvU0VSVjIvMDJfQURNSU5JU1RSQVRJRgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1 cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBvZmZzZXQgbW91bnQgL2NpZnMvU0VSVjIvMDJf QURNSU5JU1RSQVRJRgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4 MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3VudCBvZmZzZXQgL2NpZnMvU0VSVjIvMDNf RVhQTE9JVEFUSU9OCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgy N106IHVtb3VudGVkIG9mZnNldCBtb3VudCAvY2lmcy9TRVJWMi8wM19FWFBMT0lUQVRJT04KPiA+ Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50X211bHRp X3RyaWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9jaWZzL1NFUlYyLzA0X1NFUlZJQ0UtQ0xJRU5UUwo+ ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBv ZmZzZXQgbW91bnQgL2NpZnMvU0VSVjIvMDRfU0VSVklDRS1DTElFTlRTCj4gPj4+IEF1ZyAyNiAx MDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudF9tdWx0aV90cmlnZ2Vyczog dW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi8wNV9URUxFQ0hBUkdFTUVOVFMKPiA+Pj4gQXVnIDI2 IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50ZWQgb2Zmc2V0IG1vdW50 IC9jaWZzL1NFUlYyLzA1X1RFTEVDSEFSR0VNRU5UUwo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFj Y2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3VudCBvZmZz ZXQgL2NpZnMvU0VSVjIvMDZfVVRJTElTQVRFVVJTCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNj aHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudGVkIG9mZnNldCBtb3VudCAvY2lmcy9TRVJWMi8w Nl9VVElMSVNBVEVVUlMKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3 ODI3XTogdW1vdW50X211bHRpX3RyaWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9jaWZzL1NFUlYyLzA3 X1BST0RVQ1RJT04KPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3 XTogdW1vdW50ZWQgb2Zmc2V0IG1vdW50IC9jaWZzL1NFUlYyLzA3X1BST0RVQ1RJT04KPiA+Pj4g QXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50X211bHRpX3Ry aWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9jaWZzL1NFUlYyLzA4X0JERAo+ID4+PiBBdWcgMjYgMTA6 MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBvZmZzZXQgbW91bnQgL2Np ZnMvU0VSVjIvMDhfQkRECj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsx NzgyN106IHVtb3VudF9tdWx0aV90cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi9B RE1JTiQKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1v dW50ZWQgb2Zmc2V0IG1vdW50IC9jaWZzL1NFUlYyL0FETUlOJAo+ID4+PiBBdWcgMjYgMTA6MTE6 NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3Vu dCBvZmZzZXQgL2NpZnMvU0VSVjIvQyQKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0 b21vdW50WzE3ODI3XTogdW1vdW50ZWQgb2Zmc2V0IG1vdW50IC9jaWZzL1NFUlYyL0MkCj4gPj4+ IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudF9tdWx0aV90 cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi9DR0lOCj4gPj4+IEF1ZyAyNiAxMDox MTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudGVkIG9mZnNldCBtb3VudCAvY2lm cy9TRVJWMi9DR0lOCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgy N106IHVtb3VudF9tdWx0aV90cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi9EJAo+ ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBv ZmZzZXQgbW91bnQgL2NpZnMvU0VSVjIvRCQKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMg YXV0b21vdW50WzE3ODI3XTogdW1vdW50X211bHRpX3RyaWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9j aWZzL1NFUlYyL0YkCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgy N106IHVtb3VudGVkIG9mZnNldCBtb3VudCAvY2lmcy9TRVJWMi9GJAo+ID4+PiBBdWcgMjYgMTA6 MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVt b3VudCBvZmZzZXQgL2NpZnMvU0VSVjIvSW1hZ2VNYWdpY2stNi4zLjNWNgo+ID4+PiBBdWcgMjYg MTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBvZmZzZXQgbW91bnQg L2NpZnMvU0VSVjIvSW1hZ2VNYWdpY2stNi4zLjNWNgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFj Y2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3VudCBvZmZz ZXQgL2NpZnMvU0VSVjIvVE1fdGVybW96Cj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1 dG9tb3VudFsxNzgyN106IHVtb3VudF9hdXRvZnNfb2Zmc2V0OiBjb3VsZG4ndCBnZXQgaW9jdGwg ZmQgZm9yIG9mZnNldCAvY2lmcy9TRVJWMi9UTV90ZXJtb3o6IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3RvcnkKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogZm9y Y2luZyB1bW91bnQgb2Ygb2Zmc2V0IG1vdW50IC9jaWZzL1NFUlYyL1RNX3Rlcm1vego+ID4+PiBB dWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBmYWlsZWQgdG8gcmVtb3Zl IGRpciAvY2lmcy9TRVJWMi9UTV90ZXJtb3o6IERldmljZSBvciByZXNvdXJjZSBidXN5Cj4gPj4+ IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudF9tdWx0aV90 cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJWMi9Qcm9qZXRzCj4gPj4+IEF1ZyAyNiAx MDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IHVtb3VudGVkIG9mZnNldCBtb3VudCAv Y2lmcy9TRVJWMi9Qcm9qZXRzCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3Vu dFsxNzgyN106IHVtb3VudF9tdWx0aV90cmlnZ2VyczogdW1vdW50IG9mZnNldCAvY2lmcy9TRVJW Mi9Qcm9qZXRzX0Fpcgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4 MjddOiB1bW91bnRlZCBvZmZzZXQgbW91bnQgL2NpZnMvU0VSVjIvUHJvamV0c19BaXIKPiA+Pj4g QXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50X211bHRpX3Ry aWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9jaWZzL1NFUlYyL3Rlcm1venMKPiA+Pj4gQXVnIDI2IDEw OjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogdW1vdW50ZWQgb2Zmc2V0IG1vdW50IC9j aWZzL1NFUlYyL3Rlcm1venMKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50 WzE3ODI3XTogdW1vdW50X211bHRpX3RyaWdnZXJzOiB1bW91bnQgb2Zmc2V0IC9jaWZzL1NFUlYy L3BhY2thZ2VzCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106 IHVtb3VudGVkIG9mZnNldCBtb3VudCAvY2lmcy9TRVJWMi9wYWNrYWdlcwo+ID4+PiBBdWcgMjYg MTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6 IHVtb3VudCBvZmZzZXQgL2NpZnMvU0VSVjIvcG93ZXJ2YXVsdAo+ID4+PiBBdWcgMjYgMTA6MTE6 NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91bnRlZCBvZmZzZXQgbW91bnQgL2NpZnMv U0VSVjIvcG93ZXJ2YXVsdAo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRb MTc4MjddOiB1bW91bnRfbXVsdGlfdHJpZ2dlcnM6IHVtb3VudCBvZmZzZXQgL2NpZnMvU0VSVjIv dGVtcAo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bW91 bnRlZCBvZmZzZXQgbW91bnQgL2NpZnMvU0VSVjIvdGVtcAo+ID4+PiBBdWcgMjYgMTA6MTE6NDIg YmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0 aW5nIG9mZnNldCBrZXkgL2NpZnMvU0VSVjIvMDFfTUFSS0VUSU5HCj4gPj4+IEF1ZyAyNiAxMDox MTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDog ZGVsZXRpbmcgb2Zmc2V0IGtleSAvY2lmcy9TRVJWMi8wMl9BRE1JTklTVFJBVElGCj4gPj4+IEF1 ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZz ZXRfbGlzdDogZGVsZXRpbmcgb2Zmc2V0IGtleSAvY2lmcy9TRVJWMi8wM19FWFBMT0lUQVRJT04K PiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogY2FjaGVfZGVs ZXRlX29mZnNldF9saXN0OiBkZWxldGluZyBvZmZzZXQga2V5IC9jaWZzL1NFUlYyLzA0X1NFUlZJ Q0UtQ0xJRU5UUwo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4Mjdd OiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0aW5nIG9mZnNldCBrZXkgL2NpZnMvU0VS VjIvMDVfVEVMRUNIQVJHRU1FTlRTCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9t b3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRpbmcgb2Zmc2V0IGtl eSAvY2lmcy9TRVJWMi8wNl9VVElMSVNBVEVVUlMKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2No dXMgYXV0b21vdW50WzE3ODI3XTogY2FjaGVfZGVsZXRlX29mZnNldF9saXN0OiBkZWxldGluZyBv ZmZzZXQga2V5IC9jaWZzL1NFUlYyLzA3X1BST0RVQ1RJT04KPiA+Pj4gQXVnIDI2IDEwOjExOjQy IGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogY2FjaGVfZGVsZXRlX29mZnNldF9saXN0OiBkZWxl dGluZyBvZmZzZXQga2V5IC9jaWZzL1NFUlYyLzA4X0JERAo+ID4+PiBBdWcgMjYgMTA6MTE6NDIg YmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0 aW5nIG9mZnNldCBrZXkgL2NpZnMvU0VSVjIvQURNSU4kCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBi YWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRp bmcgb2Zmc2V0IGtleSAvY2lmcy9TRVJWMi9DJAo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1 cyBhdXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0aW5nIG9m ZnNldCBrZXkgL2NpZnMvU0VSVjIvQ0dJTgo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBh dXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0aW5nIG9mZnNl dCBrZXkgL2NpZnMvU0VSVjIvRCQKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21v dW50WzE3ODI3XTogY2FjaGVfZGVsZXRlX29mZnNldF9saXN0OiBkZWxldGluZyBvZmZzZXQga2V5 IC9jaWZzL1NFUlYyL0YkCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsx NzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRpbmcgb2Zmc2V0IGtleSAvY2lm cy9TRVJWMi9JbWFnZU1hZ2ljay02LjMuM1Y2Cj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVz IGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRpbmcgb2Zm c2V0IGtleSAvY2lmcy9TRVJWMi9UTV90ZXJtb3oKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2No dXMgYXV0b21vdW50WzE3ODI3XTogY2FjaGVfZGVsZXRlX29mZnNldF9saXN0OiBkZWxldGluZyBv ZmZzZXQga2V5IC9jaWZzL1NFUlYyL1Byb2pldHMKPiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2No dXMgYXV0b21vdW50WzE3ODI3XTogY2FjaGVfZGVsZXRlX29mZnNldF9saXN0OiBkZWxldGluZyBv ZmZzZXQga2V5IC9jaWZzL1NFUlYyL1Byb2pldHNfQWlyCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBi YWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRp bmcgb2Zmc2V0IGtleSAvY2lmcy9TRVJWMi90ZXJtb3pzCj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBi YWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGNhY2hlX2RlbGV0ZV9vZmZzZXRfbGlzdDogZGVsZXRp bmcgb2Zmc2V0IGtleSAvY2lmcy9TRVJWMi9wYWNrYWdlcwo+ID4+PiBBdWcgMjYgMTA6MTE6NDIg YmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRlbGV0 aW5nIG9mZnNldCBrZXkgL2NpZnMvU0VSVjIvcG93ZXJ2YXVsdAo+ID4+PiBBdWcgMjYgMTA6MTE6 NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBjYWNoZV9kZWxldGVfb2Zmc2V0X2xpc3Q6IGRl bGV0aW5nIG9mZnNldCBrZXkgL2NpZnMvU0VSVjIvdGVtcAo+ID4+Pgo+ID4+PiBOb3cgd2UgYXJl IHRyeWluZyB0byB1bW91bnQgdGhlIHRyZWUgb2YgYXV0b2ZzIHRyaWdnZXIgbW91bnRzIGJ1dCBv bmUgb2YKPiA+Pj4gdGhlIHRyaWdnZXIgbW91bnRzIG5vdyBoYXMgYSBtb3VudCBvbiBpdCB3aGlj aCBjYXVzZXMgdGhlIHByb2JsZW0uCj4gPj4+Cj4gPj4+IEF1ZyAyNiAxMDoxMTo0MiBiYWNjaHVz IGF1dG9tb3VudFsxNzgyN106IGlvY3RsX3NlbmRfcmVhZHk6IHRva2VuID0gMTUyNwo+ID4+PiBB dWcgMjYgMTA6MTE6NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiBtb3VudGVkIC9jaWZzL1NF UlYyL1RNX3Rlcm1vego+ID4+Pgo+ID4+PiBOb3cgdGhlIG1vdW50IGNvbXBsZXRlcy4KPiA+Pj4K PiA+Pj4gSXQgaXMgdGhlIG1vdW50IG5vdCBjb21wbGV0aW5nIGJlZm9yZSB0aGUgZXhwaXJlIHdo aWNoIGNhdXNlcyBhdXRvZnMgdG8KPiA+Pj4gbm90IHJlY29nbml6ZSB0aGF0IHRoZSB0cmVlIGhh cyBiZWNvbWUgYnVzeSB3aGljaCBzaG91bGQgcHJldmVudCBpdCBmcm9tCj4gPj4+IGF0dGVtcHRp bmcgdG8gdW1vdW50IGl0Lgo+ID4+Pgo+ID4+PiBUaGUgY2hlY2sgdG8gZGV0ZXJtaW5lIGlmIHRo ZSB1bW91bnQgb2YgdGhlIHRyZWUgY2FuIGdvIGFoZWFkIGlzIGRvbmUgYnkKPiA+Pj4gY2hlY2tp bmcgaWYgYW55IG9mIHRoZXNlIGF1dG9mcyB0cmlnZ2VyIG1vdW50cyBoYXZlIGEgb3BlbiBmaWxl IGhhbmRsZQo+ID4+PiAod2hpY2ggaXMgdXNlZCBmb3IgY29udHJvbCBvcGVyYXRpb25zIHdoZW4g dGhleSBoYXZlIGEgbW91bnQgb24gdG9wIG9mCj4gPj4+IHRoZW0pLiBCdXQsIGR1cmluZyB0aGUg bW91bnQsIHRoZSBmaWxlIGhhbmRsZSBpcyBub3Qgc2V0IHVudGlsIHRoZSB0aW1lCj4gPj4+IHdl IHNlZSB0aGUgImlvY3RsX3NlbmRfcmVhZHk6IHRva2VuID0gMTUyNyIgbWVzc2FnZSBzbyBpdCBp cyBtaXNzZWQgYnkKPiA+Pj4gdGhlIGV4cGlyZSBjaGVjay4KPiA+Pj4KPiA+Pj4gQXVnIDI2IDEw OjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogaGFuZGxlX3BhY2tldDogdHlwZSA9IDUK PiA+Pj4gQXVnIDI2IDEwOjExOjQyIGJhY2NodXMgYXV0b21vdW50WzE3ODI3XTogcm1fdW53YW50 ZWRfZm46IHJlbW92aW5nIGRpcmVjdG9yeSAvY2lmcy9TRVJWMgo+ID4+PiBBdWcgMjYgMTA6MTE6 NDIgYmFjY2h1cyBhdXRvbW91bnRbMTc4MjddOiB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAv Y2lmcy9TRVJWMjogRGlyZWN0b3J5IG5vdCBlbXB0eQo+ID4+PiBBdWcgMjYgMTA6MTE6NDIgYmFj Y2h1cyBhdXRvbW91bnRbMTc4MjddOiBleHBpcmVkIC9jaWZzL1NFUlYyCj4gPj4+IEF1ZyAyNiAx MDoxMTo0MiBiYWNjaHVzIGF1dG9tb3VudFsxNzgyN106IGhhbmRsZV9wYWNrZXRfbWlzc2luZ19k aXJlY3Q6MTMyMzogY2FuJ3QgZmluZCBtYXAgZW50cnkgZm9yICg0NiwxMjM5NjQ5NykKPiA+Pj4K PiA+Pj4gSWYgd2UgZXZlciBnZXQgYW55IG9mIHRoZXNlIHRoZW4gaXQgaXMgZ2FtZSBvdmVyLgo+ ID4+PiBUaGV5IGFyZSBmYXRhbCBhbmQsIGFsdGhvdWdoIHlvdSB3aWxsIHNlZSBhIGhhbmcgYmVj YXVzZSBhIGxvY2sgaXMgbm90Cj4gPj4+IHJlbGVhc2VkLCB5b3UgbXVzdCBzdGFydCBvdmVyIGFu eXdheS4gVGhlcmUgaXMgbm8gb3RoZXIgb3B0aW9uLgo+ID4+Pgo+ID4+PiBJIGRvbid0IGtub3cg d2h5IHRoZSBhYm92ZSBleHBpcmUgaXMgZ2V0dGluZyB0aHJvdWdoLCBpdCBzaG91bGRuJ3QsIGJ1 dAo+ID4+PiB1c2VyIHNwYWNlIGRvZXMgbmVlZCB0byBoYW5kbGUgdGhpcyBjYXNlIGFueXdheS4K PiA+Pj4KPiA+Pj4gSSd2ZSBkb25lIHNvbWUgYmFzaWMgdGVzdGluZyBhbmQgdGhpcyBzdGlsbCBu ZWVkcyB3b3JrIChsaWtlIGEgcHJvYmxlbQo+ID4+PiBkZXNjcmlwdGlvbikgYnV0IEknbSBpbnRl cmVzdGVkIHRvIGtub3cgaWYgdGhpcyBoZWxwcy4KPiA+Pj4KPiA+Pj4gYXV0b2ZzLTUuMC4zIC0g Zml4IGV4cGlyZSByYWNlCj4gPj4+Cj4gPj4+IEZyb206IElhbiBLZW50IDxyYXZlbkB0aGVtYXcu bmV0Pgo+ID4+Pgo+ID4+Pgo+ID4+PiAtLS0KPiA+Pj4KPiA+Pj4gIGxpYi9tb3VudHMuYyB8ICAg IDUgKysrKy0KPiA+Pj4gIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0 aW9ucygtKQo+ID4+Pgo+ID4+Pgo+ID4+PiBkaWZmIC0tZ2l0IGEvbGliL21vdW50cy5jIGIvbGli L21vdW50cy5jCj4gPj4+IGluZGV4IDRjNDQ5ODIuLmYyNjU3OWUgMTAwNjQ0Cj4gPj4+IC0tLSBh L2xpYi9tb3VudHMuYwo+ID4+PiArKysgYi9saWIvbW91bnRzLmMKPiA+Pj4gQEAgLTE1MjUsOCAr MTUyNSwxMSBAQCBpbnQgdW1vdW50X211bHRpX3RyaWdnZXJzKHN0cnVjdCBhdXRvZnNfcG9pbnQg KmFwLCBzdHJ1Y3QgbWFwZW50ICptZSwgY2hhciAqcm9vdAo+ID4+PiAgCQlvZV9iYXNlID0gb2Ut PmtleSArIHN0cmxlbihyb290KTsKPiA+Pj4gIAkJbGVmdCArPSB1bW91bnRfbXVsdGlfdHJpZ2dl cnMoYXAsIG9lLCByb290LCBvZV9iYXNlKTsKPiA+Pj4gIAo+ID4+PiAtCQlpZiAob2UtPmlvY3Rs ZmQgIT0gLTEpCj4gPj4+ICsJCWlmIChvZS0+aW9jdGxmZCAhPSAtMSB8fAo+ID4+PiArCQkgICAg aXNfbW91bnRlZChfUFJPQ19NT1VOVFMsIG9lLT5rZXksIE1OVFNfUkVBTCkpIHsKPiA+Pj4gIAkJ CWxlZnQrKzsKPiA+Pj4gKwkJCWJyZWFrOwo+ID4+PiArCQl9Cj4gPj4+ICAJfQo+ID4+PiAgCj4g Pj4+ICAJaWYgKGxlZnQpCj4gPj4+Cj4gPj4+Cj4gPj4gX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KPiA+PiBhdXRvZnMgbWFpbGluZyBsaXN0Cj4gPj4gYXV0 b2ZzQGxpbnV4Lmtlcm5lbC5vcmcKPiA+PiBodHRwOi8vbGludXgua2VybmVsLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2F1dG9mcwo+ID4gCj4gPiAKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+IGF1dG9mcyBtYWlsaW5nIGxpc3QKPiBhdXRvZnNAbGlu dXgua2VybmVsLm9yZwo+IGh0dHA6Ly9saW51eC5rZXJuZWwub3JnL21haWxtYW4vbGlzdGluZm8v YXV0b2ZzCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K YXV0b2ZzIG1haWxpbmcgbGlzdAphdXRvZnNAbGludXgua2VybmVsLm9yZwpodHRwOi8vbGludXgu a2VybmVsLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2F1dG9mcwo=