Re: fence_ec2 agent
Dejan Muhamedagic <[email protected]> Wed, 11 Mar 2015 13:27:58 +0100
| Newsgroups | gmane.linux.highavailability.user |
|---|---|
| Message-ID | <[email protected]> |
SGkgS2F6dWhpa28tc2FuLAoKT24gV2VkLCBNYXIgMTEsIDIwMTUgYXQgMDI6MzY6NDNQTSArMDkw MCwg5p2x5LiA5b2mIHdyb3RlOgo+IEhpLCBEZWphbgo+IAo+IFRoYW5rIHlvdSBmb3IgdGhlIGNv bW1lbnQuCj4gCj4gSSdkIGxpa2UgdG8gY29udHJpYnV0ZSBpdCBhcyBnbHVlIHN0b25pdGggYWdl bnRzLgo+IAo+IFNvLCBJIHJlbmFtZSBpdCB0byBqdXN0ICJlYzIiLgo+IAo+IFdvdWxkIHlvdSBw bGVhc2UgYWRkIGl0IHRvIGdsdWUgcmVwb3NpdG9yeSAoaHR0cDovL2hnLmxpbnV4LWhhLm9yZy9n bHVlLykgPwoKSSBqdXN0IGFkZGVkIHlvdXIgc3Rvbml0aCBhZ2VudC4gVGhlcmUgd2VyZSB0aGlz IGNoYW5nZSBpbiB0aGUKaW5pdGlhbCBjaGFuZ2VzZXQ6CgotIHJlcGxhY2VkICctJyB3aGljaCBp cyBub3QgYWxsb3dlZCBpbiBpZGVudGlmaWVycyB3aXRoICdfJyBpbgogIGZ1bmN0aW9uIGdldGlu Zm9feG1sKCkuCgpUaGVyZSB3ZXJlIG90aGVyIHNtYWxsZXIgY2hhbmdlcy4gWW91IGNhbiBmaW5k IHRoZW0gaW4gdGhlCnJlcG9zaXRvcnkuCgpJIHdhcyBub3QgYWJsZSB0byB0ZXN0IGl0LCBob3Bl IGl0IHdvcmtzIDopCgpNYW55IHRoYW5rcyBmb3IgdGhlIGNvbnRyaWJ1dGlvbi4KCkNoZWVycywK CkRlamFuCgo+IFJlZ2FyZHMsCj4gS2F6dWhpa28gSGlnYXNoaQo+IAo+IE9uIDIwMTUvMDMvMDYg MjozOCwgRGVqYW4gTXVoYW1lZGFnaWMgd3JvdGU6Cj4gPkhpLAo+ID4KPiA+T24gVHVlLCBNYXIg MDMsIDIwMTUgYXQgMDU6MTM6NDlQTSArMDkwMCwg5p2x5LiA5b2mIHdyb3RlOgo+ID4+RGVhciBN YXJrdXMsCj4gPj4KPiA+Pkkgd2FzIGFsc28gdGhpbmtpbmcgdGhlIHNhbWUgdGhpbmcuCj4gPj5T bywgQWxyZWFkeSBJJ3ZlIGNyZWF0ZWQgYSBuZXcgb25lLgo+ID4KPiA+UGVyaGFwcyB5b3UnZCBs aWtlIHRvIHRoZW4gY29udHJpYnV0ZSBpdCB1cHN0cmVhbT8gRWl0aGVyIHRvCj4gPmdsdWUgc3Rv bml0aCBhZ2VudHMgb3IgUkhUIGZlbmNpbmcgYWdlbnRzLiBJdCBhcHBlYXJzIHRoYXQgdGhlCj4g PmFnZW50IGlzIHVzaW5nIHRoZSBzdG9uaXRoIGludGVyZmFjZSwgYnV0IHRoZSBuYW1lIHJlZmxl Y3RzIHRoZQo+ID5mZW5jaW5nIGFnZW50cyBuYW1pbmcgc2NoZW1lLgo+ID4KPiA+Q2hlZXJzLAo+ ID4KPiA+RGVqYW4KPiA+Cj4gPj5bQ2hhbmdlU2V0XQo+ID4+LSBBbiBBUEkgdG8gYmUgdXNlZCB3 YXMgY2hhbmdlZCBmcm9tICJBbWF6b24gRUMyIENMSSIgdG8gIkFXUyBDTEkiLgo+ID4+ICAgLS0g IkFXUyBDTEkiIGlzIGJhc2VkIFB5dGhvbi4gU28sIENQVSBsb2FkIG1pZ2h0IGJlIHJlZHVjZWQu Cj4gPj4KPiA+Pi0gVGhlICItLXByaXZhdGUta2V5IiBhbmQgIi0tY2VydCIgb3B0aW9ucyBhcmUg ZGVwcmVjYXRlZCBpbiBBV1MgQ0xJLgo+ID4+ICAgU28sIEkgYWRkIGEgbmV3IG9wdGlvbiAiLS1w cm9maWxlIi4gVXNlIGEgc3BlY2lmaWMgcHJvZmlsZSBmcm9tIHRoYXQgY3JlZGVudGlhbCBmaWxl Lgo+ID4+ICAgZGVmYXVsdCBpcyAiIgo+ID4+Cj4gPj4KPiA+PltIb3cgdG8gdXNlXQo+ID4+LSBQ bGFlc2UgaW5zdGFsbCB0aGUgIkFXUyBDTEkiLgo+ID4+ICAgaHR0cDovL2RvY3MuYXdzLmFtYXpv bi5jb20vY2xpL2xhdGVzdC91c2VyZ3VpZGUvY2xpLWNoYXAtZ2V0dGluZy1zdGFydGVkLmh0bWwK PiA+Pgo+ID4+LSBQbGVhc2UgY29weSB0aGUgZmVuY2VfZWMyIGluIC91c3IvbGliNjQvc3Rvbml0 aC9wbHVnaW5zL2V4dGVybmFsLy4KPiA+PiAgIEFuZCAsIFBsZWFzZSBzZXQgdGhlIHBlcm1pc3Np b25zIHRvIDc1NS4KPiA+Pgo+ID4+LSBQbGVhc2Ugc2V0IGNybSBzZXR0aW5ncyBhcyBpbiB0aGlz IGV4YW1wbGUuCj4gPj4gICAtIFRoZSBpbnN0YW5jZSB0aGF0IGhhdmUgYmVlbiBzZXQgYXMgIm5v ZGUwMSIgaW4gdGhlICJOYW1lIiB0YWcgYXJlIGZlbmNlLgo+ID4+ICAgLS0tLS0tCj4gPj4gICBw cmltaXRpdmUgcHJtU3Rvbml0aDEtMiBzdG9uaXRoOmV4dGVybmFsL2ZlbmNlX2VjMiBcCQkKPiA+ PglwYXJhbXMgXAkKPiA+PgkJcGNta19vZmZfdGltZW91dD0iMzAwcyIgXAo+ID4+CQlwb3J0PSJu b2RlMDEiIFwKPiA+PgkJdGFnPSJOYW1lIiBcCj4gPj4Jb3Agc3RhcnQgaW50ZXJ2YWw9IjBzIiB0 aW1lb3V0PSI2MHMiIFwJCj4gPj4Jb3AgbW9uaXRvciBpbnRlcnZhbD0iMzYwMHMiIHRpbWVvdXQ9 IjYwcyIgXAkKPiA+PglvcCBzdG9wIGludGVydmFsPSIwcyIgdGltZW91dD0iNjBzIgkKPiA+PiAg IC0tLS0tLQo+ID4+Cj4gPj4KPiA+PlJlZ2FyZHMsCj4gPj5LYXp1aGlrbyBIaWdhc2hpCj4gPj4K PiA+Pk9uIDIwMTUvMDIvMjUgNzoyMiwgTWFya3VzIEd1ZXJ0bGVyIHdyb3RlOgo+ID4+PkRlYXIg bGlzdCwKPiA+Pj5JIHdhcyBqdXN0IHRyeWluZyB0byBjb25maWd1cmUgdGhlIGZlbmNlX2VjMiBz dG9uaXRoIGFnZW50IGZyb20gMjAxMiwgd3JpdHRlbiBieSBBbmRyZXcgQmVla2hvZi4gSXQgbG9v a3MgbGlrZSwgdGhhdCB0aGlzIG9uZSBub3Qgd29ya2luZyBhbnltb3JlIHdpdGggbmV3ZXIgc3Rv bml0aCAvIGNsdXN0ZXIgdmVyc2lvbnMuIElzIHRoZXJlIGFueSBvdGhlciBFQzIgYWdlbnQsIHRo YXQgaXMgc3RpbGwgbWFpbnRhaW5lZD8KPiA+Pj4KPiA+Pj5JZiBub3QsIEknbGwgd3JpdGUgb25l IG15c2VsZi4gSG93ZXZlciwgSSdkIGxpa2UgdG8gY2hlY2sgYWxsIG9wdGlvbnMgZmlyc3QuCj4g Pj4+Cj4gPj4+Q2hlZXJzLAo+ID4+Pk1hcmt1cwo+ID4+Pgo+ID4+Pl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPj4+TGludXgtSEEgbWFpbGluZyBsaXN0 Cj4gPj4+TGludXgtSEFAbGlzdHMubGludXgtaGEub3JnCj4gPj4+aHR0cDovL2xpc3RzLmxpbnV4 LWhhLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWhhCj4gPj4+U2VlIGFsc286IGh0dHA6Ly9s aW51eC1oYS5vcmcvUmVwb3J0aW5nUHJvYmxlbXMKPiA+Pj4KPiA+Pgo+ID4+Cgo+ICMhL2Jpbi9i YXNoCj4gCj4gZGVzY3JpcHRpb249Igo+IGZlbmNlX2VjMiBpcyBhbiBJL08gRmVuY2luZyBhZ2Vu dCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFtYXpvbiBFQzIgaW5zdGFuY2VzLgo+IAo+IEFQSSBm dW5jdGlvbnMgdXNlZCBieSB0aGlzIGFnZW50Ogo+IC0gYXdzIGVjMiBkZXNjcmliZS10YWdzCj4g LSBhd3MgZWMyIGRlc2NyaWJlLWluc3RhbmNlcwo+IC0gYXdzIGVjMiBzdG9wLWluc3RhbmNlcwo+ IC0gYXdzIGVjMiBzdGFydC1pbnN0YW5jZXMKPiAtIGF3cyBlYzIgcmVib290LWluc3RhbmNlcwo+ IAo+IElmIHRoZSB1bmFtZSB1c2VkIGJ5IHRoZSBjbHVzdGVyIG5vZGUgaXMgYW55IG9mOgo+ICAt IFB1YmxpYyBETlMgbmFtZSAob3IgcGFydCB0aGVyZSBvZiksCj4gIC0gUHJpdmF0ZSBETlMgbmFt ZSAob3IgcGFydCB0aGVyZSBvZiksCj4gIC0gSW5zdGFuY2UgSUQgKGVnLiBpLTRmMTVhODM5KQo+ ICAtIENvbnRlbnRzIG9mIHRhZyBhc3NvY2lhdGVkIHdpdGggdGhlIGluc3RhbmNlCj4gdGhlbiB0 aGUgYWdlbnQgc2hvdWxkIGJlIGFibGUgdG8gYXV0b21hdGljYWxseSBkaXNjb3ZlciB0aGUgaW5z dGFuY2VzIGl0IGNhbiBjb250cm9sLgo+IAo+IElmIHRoZSB0YWcgY29udGFpbmluZyB0aGUgdW5h bWUgaXMgbm90IFtOYW1lXSwgdGhlbiBpdCB3aWxsIG5lZWQgdG8gYmUgc3BlY2lmaWVkIHVzaW5n IHRoZSBbdGFnXSBvcHRpb24uCj4gIgo+IAo+ICMKPiAjIENvcHlyaWdodCAoYykgMjAxMS0yMDEz IEFuZHJldyBCZWVraG9mCj4gIyBDb3B5cmlnaHQgKGMpIDIwMTQgTklQUE9OIFRFTEVHUkFQSCBB TkQgVEVMRVBIT05FIENPUlBPUkFUSU9OCj4gIyAgICAgICAgICAgICAgICAgICAgQWxsIFJpZ2h0 cyBSZXNlcnZlZC4KPiAjCj4gIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQo+ICMgaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHZlcnNpb24gMiBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKPiAjIHB1Ymxp c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgo+ICMKPiAjIFRoaXMgcHJvZ3Jh bSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdvdWxkIGJlIHVzZWZ1bCwgYnV0 Cj4gIyBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCj4gIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UuCj4gIwo+ICMgRnVydGhlciwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZCB3aXRo b3V0IGFueSB3YXJyYW50eSB0aGF0IGl0IGlzCj4gIyBmcmVlIG9mIHRoZSByaWdodGZ1bCBjbGFp bSBvZiBhbnkgdGhpcmQgcGVyc29uIHJlZ2FyZGluZyBpbmZyaW5nZW1lbnQKPiAjIG9yIHRoZSBs aWtlLiAgQW55IGxpY2Vuc2UgcHJvdmlkZWQgaGVyZWluLCB3aGV0aGVyIGltcGxpZWQgb3IKPiAj IG90aGVyd2lzZSwgYXBwbGllcyBvbmx5IHRvIHRoaXMgc29mdHdhcmUgZmlsZS4gIFBhdGVudCBs aWNlbnNlcywgaWYKPiAjIGFueSwgcHJvdmlkZWQgaGVyZWluIGRvIG5vdCBhcHBseSB0byBjb21i aW5hdGlvbnMgb2YgdGhpcyBwcm9ncmFtIHdpdGgKPiAjIG90aGVyIHNvZnR3YXJlLCBvciBhbnkg b3RoZXIgcHJvZHVjdCB3aGF0c29ldmVyLgo+ICMKPiAjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZl ZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCj4gIyBhbG9uZyB3aXRo IHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LAo+ICMgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUgMzMwLCBCb3N0b24gTUEgMDIxMTEt MTMwNywgVVNBLgo+ICMKPiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IAo+IHF1aWV0PTAKPiBwb3J0X2RlZmF1 bHQ9IiIKPiAKPiBpbnN0YW5jZV9ub3RfZm91bmQ9MAo+IHVua25vd25fYXJlX3N0b3BwZWQ9MAo+ IAo+IGFjdGlvbl9kZWZhdWx0PSJyZXNldCIgICAgICAgICAjIERlZmF1bHQgZmVuY2UgYWN0aW9u Cj4gZWMyX3RhZ19kZWZhdWx0PSJOYW1lIgkgICAgICAgIyBFQzIgVGFnIGNvbnRhaW5pbmcgdGhl IGluc3RhbmNlJ3MgdW5hbWUKPiAKPiBzbGVlcF90aW1lPSIxIgo+IAo+IGVjMl90YWc9JHt0YWd9 Cj4gCj4gOiAke2VjMl90YWc9JHtlYzJfdGFnX2RlZmF1bHR9fQo+IDogJHtwb3J0PSR7cG9ydF9k ZWZhdWx0fX0KPiAKPiBmdW5jdGlvbiB1c2FnZSgpCj4gewo+IGNhdCA8PEVPRgo+IGBiYXNlbmFt ZSAkMGAgLSBBIGZlbmNpbmcgYWdlbnQgZm9yIEFtYXpvbiBFQzIgaW5zdGFuY2VzCj4gIAo+ICRk ZXNjcmlwdGlvbgo+ICAKPiBVc2FnZTogYGJhc2VuYW1lICQwYCAtb3wtLWFjdGlvbiBbLW58LS1w b3J0XSBbb3B0aW9uc10KPiBPcHRpb25zOgo+ICAtaCwgLS1oZWxwIAkJVGhpcyB0ZXh0Cj4gIC1W LCAtLXZlcnNpb24JCVZlcnNpb24gaW5mb3JtYXRpb24KPiAgLXEsIC0tcXVpZXQgCQlSZWR1Y2Vk IG91dHB1dCBtb2RlCj4gIAo+IENvbW1hbmRzOgo+ICAtbywgLS1hY3Rpb24JCUFjdGlvbiB0byBw ZXJmb3JtOiBvbnxvZmZ8cmVib290fHN0YXR1c3xtb25pdG9yCj4gIC1uLCAtLXBvcnQgCQlUaGUg bmFtZSBvZiBhIG1hY2hpbmUvaW5zdGFuY2UgdG8gY29udHJvbC9jaGVjawo+IAo+IEFkZGl0aW9u YWwgT3B0aW9uczoKPiAgLXAsIC0tcHJvZmlsZQkJVXNlIGEgc3BlY2lmaWMgcHJvZmlsZSBmcm9t IHlvdXIgY3JlZGVudGlhbCBmaWxlLgo+ICAtdCwgLS10YWcgCQlOYW1lIG9mIHRoZSB0YWcgY29u dGFpbmluZyB0aGUgaW5zdGFuY2UncyB1bmFtZQo+IAo+IERhbmdlcm91cyBvcHRpb25zOgo+ICAt VSwgLS11bmtub3duLWFyZS1zdG9wcGVkIAlBc3N1bWUgYW55IHVua25vd24gaW5zdGFuY2UgaXMg c2FmZWx5IHN0b3BwZWQKPiAKPiBFT0YKPiAgICAgZXhpdCAwOwo+IH0KPiAKPiBmdW5jdGlvbiBn ZXRpbmZvLXhtbCgpCj4gewo+IAljYXQgPDxFT0YKPiA8cGFyYW1ldGVycz4KPiAJPHBhcmFtZXRl ciBuYW1lPSJwb3J0IiB1bmlxdWU9IjEiIHJlcXVpcmVkPSIxIj4KPiAJCTxjb250ZW50IHR5cGU9 InN0cmluZyIgLz4KPiAJCTxzaG9ydGRlc2MgbGFuZz0iZW4iPlRoZSBuYW1lL2lkL3RhZyBvZiBh IGluc3RhbmNlIHRvIGNvbnRyb2wvY2hlY2s8L3Nob3J0ZGVzYz4KPiAJPC9wYXJhbWV0ZXI+Cj4g CTxwYXJhbWV0ZXIgbmFtZT0icHJvZmlsZSIgdW5pcXVlPSIwIiByZXF1aXJlZD0iMCI+Cj4gCQk8 Y29udGVudCB0eXBlPSJzdHJpbmciIGRlZmF1bHQ9ImRlZmF1bHQiIC8+Cj4gCQk8c2hvcnRkZXNj IGxhbmc9ImVuIj5Vc2UgYSBzcGVjaWZpYyBwcm9maWxlIGZyb20geW91ciBjcmVkZW50aWFsIGZp bGUuPC9zaG9ydGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+IAk8cGFyYW1ldGVyIG5hbWU9InRhZyIg dW5pcXVlPSIwIiByZXF1aXJlZD0iMSI+Cj4gCQk8Y29udGVudCB0eXBlPSJzdHJpbmciIGRlZmF1 bHQ9Ik5hbWUiIC8+Cj4gCQk8c2hvcnRkZXNjIGxhbmc9ImVuIj5OYW1lIG9mIHRoZSB0YWcgY29u dGFpbmluZyB0aGUgaW5zdGFuY2VzIHVuYW1lPC9zaG9ydGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+ IAk8cGFyYW1ldGVyIG5hbWU9InVua25vd25fYXJlX3N0b3BwZWQiIHVuaXF1ZT0iMCIgcmVxdWly ZWQ9IjAiPgo+IAkJPGNvbnRlbnQgdHlwZT0ic3RyaW5nIiBkZWZhdWx0PSJmYWxzZSIgLz4KPiAJ CTxzaG9ydGRlc2MgbGFuZz0iZW4iPkRBTkdFUjogQXNzdW1lIGFueSB1bmtub3duIGluc3RhbmNl IGlzIHNhZmVseSBzdG9wcGVkPC9zaG9ydGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+IDwvcGFyYW1l dGVycz4KPiBFT0YKPiAJZXhpdCAwOwo+IH0KPiAKPiBmdW5jdGlvbiBtZXRhZGF0YSgpCj4gewo+ IAljYXQgPDxFT0YKPiA8P3htbCB2ZXJzaW9uPSIxLjAiID8+Cj4gPHJlc291cmNlLWFnZW50IG5h bWU9ImZlbmNlX2VjMiIgc2hvcnRkZXNjPSJGZW5jaW5nIGFnZW50IGZvciBBbWF6b24gRUMyIGlu c3RhbmNlcyIgPgo+IAk8bG9uZ2Rlc2M+Cj4gJGRlc2NyaXB0aW9uCj4gCTwvbG9uZ2Rlc2M+Cj4g CTxwYXJhbWV0ZXJzPgo+IAk8cGFyYW1ldGVyIG5hbWU9ImFjdGlvbiIgdW5pcXVlPSIwIiByZXF1 aXJlZD0iMSI+Cj4gCQk8Z2V0b3B0IG1peGVkPSItbywgLS1hY3Rpb249W2FjdGlvbl0iIC8+Cj4g CQk8Y29udGVudCB0eXBlPSJzdHJpbmciIGRlZmF1bHQ9InJlYm9vdCIgLz4KPiAJCTxzaG9ydGRl c2MgbGFuZz0iZW4iPkZlbmNpbmcgQWN0aW9uPC9zaG9ydGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+ IAk8cGFyYW1ldGVyIG5hbWU9InBvcnQiIHVuaXF1ZT0iMSIgcmVxdWlyZWQ9IjEiPgo+IAkJPGdl dG9wdCBtaXhlZD0iLW4sIC0tcG9ydD1bcG9ydF0iIC8+Cj4gCQk8Y29udGVudCB0eXBlPSJzdHJp bmciIC8+Cj4gCQk8c2hvcnRkZXNjIGxhbmc9ImVuIj5UaGUgbmFtZS9pZC90YWcgb2YgYSBpbnN0 YW5jZSB0byBjb250cm9sL2NoZWNrPC9zaG9ydGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+IAk8cGFy YW1ldGVyIG5hbWU9InByb2ZpbGUiIHVuaXF1ZT0iMCIgcmVxdWlyZWQ9IjAiPgo+IAkJPGdldG9w dCBtaXhlZD0iLXAsIC0tcHJvZmlsZT1bcHJvZmlsZV0iIC8+Cj4gCQk8Y29udGVudCB0eXBlPSJz dHJpbmciIGRlZmF1bHQ9ImRlZmF1bHQiIC8+Cj4gCQk8c2hvcnRkZXNjIGxhbmc9ImVuIj5Vc2Ug YSBzcGVjaWZpYyBwcm9maWxlIGZyb20geW91ciBjcmVkZW50aWFsIGZpbGUuPC9zaG9ydGRlc2M+ Cj4gCTwvcGFyYW1ldGVyPgo+IAk8cGFyYW1ldGVyIG5hbWU9InRhZyIgdW5pcXVlPSIwIiByZXF1 aXJlZD0iMSI+Cj4gCQk8Z2V0b3B0IG1peGVkPSItdCwgLS10YWc9W3RhZ10iIC8+Cj4gCQk8Y29u dGVudCB0eXBlPSJzdHJpbmciIGRlZmF1bHQ9Ik5hbWUiIC8+Cj4gCQk8c2hvcnRkZXNjIGxhbmc9 ImVuIj5OYW1lIG9mIHRoZSB0YWcgY29udGFpbmluZyB0aGUgaW5zdGFuY2VzIHVuYW1lPC9zaG9y dGRlc2M+Cj4gCTwvcGFyYW1ldGVyPgo+IAk8cGFyYW1ldGVyIG5hbWU9InVua25vd24tYXJlLXN0 b3BwZWQiIHVuaXF1ZT0iMCIgcmVxdWlyZWQ9IjAiPgo+IAkJPGdldG9wdCBtaXhlZD0iLVUsIC0t dW5rbm93bi1hcmUtc3RvcHBlZCIgLz4KPiAJCTxjb250ZW50IHR5cGU9InN0cmluZyIgZGVmYXVs dD0iZmFsc2UiIC8+Cj4gCQk8c2hvcnRkZXNjIGxhbmc9ImVuIj5EQU5HRVI6IEFzc3VtZSBhbnkg dW5rbm93biBpbnN0YW5jZSBpcyBzYWZlbHkgc3RvcHBlZDwvc2hvcnRkZXNjPgo+IAk8L3BhcmFt ZXRlcj4KPiAJPC9wYXJhbWV0ZXJzPgo+IAk8YWN0aW9ucz4KPiAJPGFjdGlvbiBuYW1lPSJvbiIg Lz4KPiAJPGFjdGlvbiBuYW1lPSJvZmYiIC8+Cj4gCTxhY3Rpb24gbmFtZT0icmVib290IiAvPgo+ IAk8YWN0aW9uIG5hbWU9InN0YXR1cyIgLz4KPiAJPGFjdGlvbiBuYW1lPSJsaXN0IiAvPgo+IAk8 YWN0aW9uIG5hbWU9Im1vbml0b3IiIC8+Cj4gCTxhY3Rpb24gbmFtZT0ibWV0YWRhdGEiIC8+Cj4g CTwvYWN0aW9ucz4KPiA8L3Jlc291cmNlLWFnZW50Pgo+IEVPRgo+IAlleGl0IDA7Cj4gfQo+IAo+ IGZ1bmN0aW9uIGluc3RhbmNlX2Zvcl9wb3J0KCkKPiB7Cj4gCWxvY2FsIHBvcnQ9JDEKPiAJbG9j YWwgaW5zdGFuY2U9IiIKPiAKPiAJIyBMb29rIGZvciBwb3J0IG5hbWUgLW4gaW4gdGhlIElOU1RB TkNFIGRhdGEKPiAJaW5zdGFuY2U9YGF3cyBlYzIgZGVzY3JpYmUtaW5zdGFuY2VzICRvcHRpb25z IHwgZ3JlcCAiXklOU1RBTkNFU1tbOnNwYWNlOl1dLipbWzpzcGFjZTpdXSRwb3J0W1s6c3BhY2U6 XV0iIHwgYXdrICd7cHJpbnQgJDh9J2AKPiAJaWYgWyAteiAkaW5zdGFuY2UgXTsgdGhlbgo+IAkJ IyBMb29rIGZvciBwb3J0IG5hbWUgLW4gaW4gdGhlIE5hbWUgVEFHCj4gCQlpbnN0YW5jZT1gYXdz IGVjMiBkZXNjcmliZS10YWdzICRvcHRpb25zIHwgZ3JlcCAiXlRBR1NbWzpzcGFjZTpdXSRlYzJf dGFnW1s6c3BhY2U6XV0uKltbOnNwYWNlOl1daW5zdGFuY2VbWzpzcGFjZTpdXSRwb3J0JCIgfCBh d2sgJ3twcmludCAkM30nYAo+IAlmaQo+IAo+IAlpZiBbIC16ICRpbnN0YW5jZSBdOyB0aGVuCj4g CQlpbnN0YW5jZV9ub3RfZm91bmQ9MQo+IAkJaW5zdGFuY2U9JHBvcnQKPiAJZmkKPiAKPiAJZWNo byAkaW5zdGFuY2UKPiB9Cj4gCj4gZnVuY3Rpb24gaW5zdGFuY2Vfb24oKQo+IHsKPiAJYXdzIGVj MiBzdGFydC1pbnN0YW5jZXMgJG9wdGlvbnMgLS1pbnN0YW5jZS1pZHMgJGluc3RhbmNlCj4gfQo+ IAo+IGZ1bmN0aW9uIGluc3RhbmNlX29mZigpCj4gewo+IAlpZiBbICR1bmtub3duX2FyZV9zdG9w cGVkID0gMSAtYSAkaW5zdGFuY2Vfbm90X2ZvdW5kIF07IHRoZW4KPiAJCTogbm90aGluZyB0byBk bwo+IAkJaGFfbG9nLnNoIGluZm8gIkFzc3VtaW5nIHVua25vd24gaW5zdGFuY2UgJGluc3RhbmNl IGlzIGFscmVhZHkgb2ZmIgo+IAllbHNlCj4gCQlhd3MgZWMyIHN0b3AtaW5zdGFuY2VzICRvcHRp b25zIC0taW5zdGFuY2UtaWRzICRpbnN0YW5jZSAtLWZvcmNlCj4gCWZpCj4gfQo+IAo+IGZ1bmN0 aW9uIGluc3RhbmNlX3N0YXR1cygpCj4gewo+IAlsb2NhbCBpbnN0YW5jZT0kMQo+IAlsb2NhbCBz dGF0dXM9InVua25vd24iCj4gCWxvY2FsIHJjPTEKPiAKPiAJIyBMaXN0IG9mIGluc3RhbmNlcyBh bmQgdGhlaXIgY3VycmVudCBzdGF0dXMKPiAJaWYgWyAkdW5rbm93bl9hcmVfc3RvcHBlZCA9IDEg LWEgJGluc3RhbmNlX25vdF9mb3VuZCBdOyB0aGVuCj4gCQloYV9sb2cuc2ggaW5mbyAiJGluc3Rh bmNlIHN0b3BwZWQgKHVua25vd24pIgo+IAllbHNlCj4gCQlzdGF0dXM9YGF3cyBlYzIgZGVzY3Jp YmUtaW5zdGFuY2VzICRvcHRpb25zIC0taW5zdGFuY2UtaWRzICRpbnN0YW5jZSB8IGF3ayAneyAK PiAJCQlpZiAoL15TVEFURcKldC8pIHsgcHJpbnRmICIlcyIsICQzIH0KPiAJCQl9J2AKPiAJCXJj PSQ/Cj4gCWZpCj4gCWhhX2xvZy5zaCBpbmZvICJzdGF0dXMgY2hlY2sgZm9yICRpbnN0YW5jZSBp cyAkc3RhdHVzIgo+IAllY2hvICRzdGF0dXMKPiAJcmV0dXJuICRyYwo+IH0KPiAKPiAKPiBURU1Q PWBnZXRvcHQgLW8gcVZobzplOnA6bjp0OlUgLS1sb25nIHZlcnNpb24saGVscCxhY3Rpb246LHBv cnQ6LG9wdGlvbjoscHJvZmlsZTosdGFnOixxdWlldCx1bmtub3duLWFyZS1zdG9wcGVkIMKlCj4g ICAgICAtbiAnZmVuY2VfZWMyJyAtLSAiJEAiYAo+IAo+IGlmIFsgJD8gIT0gMCBdO3RoZW4gCj4g ICAgIHVzYWdlCj4gICAgIGV4aXQgMQo+IGZpCj4gCj4gIyBOb3RlIHRoZSBxdW90ZXMgYXJvdW5k IGAkVEVNUCc6IHRoZXkgYXJlIGVzc2VudGlhbCEKPiBldmFsIHNldCAtLSAiJFRFTVAiCj4gCj4g aWYgWyAteiAkMSBdOyB0aGVuCj4gCSMgSWYgdGhlcmUgYXJlIG5vIGNvbW1hbmQgbGluZSBhcmdz LCBsb29rIGZvciBvcHRpb25zIGZyb20gc3RkaW4KPiAJd2hpbGUgcmVhZCBsaW5lOyBkbwo+IAkJ Y2FzZSAkbGluZSBpbiAKPiAJCQlvcHRpb249KnxhY3Rpb249KikgYWN0aW9uPWBlY2hvICRsaW5l IHwgc2VkIHMvLio9Ly9gOzsKPiAJCQlwb3J0PSopICAgICAgICBwb3J0PWBlY2hvICRsaW5lIHwg c2VkIHMvLio9Ly9gOzsKPiAJCQlwcm9maWxlPSopICAgICBlYzJfcHJvZmlsZT1gZWNobyAkbGlu ZSB8IHNlZCBzLy4qPS8vYDs7Cj4gCQkJdGFnPSopICAgICAgICAgZWMyX3RhZz1gZWNobyAkbGlu ZSB8IHNlZCBzLy4qPS8vYDs7Cj4gCQkJcXVpZXQqKSAgICAgICAgcXVpZXQ9MTs7Cj4gCQkJdW5r bm93bi1hcmUtc3RvcHBlZCopIHVua25vd25fYXJlX3N0b3BwZWQ9MTs7Cj4gCQkJLS0pOzsKPiAJ CQkqKSBoYV9sb2cuc2ggZXJyICJJbnZhbGlkIGNvbW1hbmQ6ICRsaW5lIjs7Cj4gCQllc2FjCj4g CWRvbmUKPiBmaQo+IAo+IHdoaWxlIHRydWUgOyBkbwo+IAljYXNlICIkMSIgaW4KPiAJCS1vfC0t YWN0aW9ufC0tb3B0aW9uKSBhY3Rpb249JDI7ICAgc2hpZnQ7IHNoaWZ0OzsKPiAJCS1ufC0tcG9y dCkgICAgICAgICAgICBwb3J0PSQyOyAgICAgc2hpZnQ7IHNoaWZ0OzsKPiAJCS1wfC0tcHJvZmls ZSkgICAgICAgICBlYzJfcHJvZmlsZT0kMjsgc2hpZnQ7IHNoaWZ0OzsKPiAJCS10fC0tdGFnKQkg ICAgICBlYzJfdGFnPSQyOyBzaGlmdDsgc2hpZnQ7Owo+IAkJLVV8LS11bmtub3duLWFyZS1zdG9w cGVkKSB1bmtub3duX2FyZV9zdG9wcGVkPTE7IHNoaWZ0OzsKPiAJCS1xfC0tcXVpZXQpIHF1aWV0 PTE7IHNoaWZ0OzsKPiAJCS1WfC0tdmVyc2lvbikgZWNobyAiMS4wLjAiOyBleGl0IDA7Owo+IAkJ LS1oZWxwfC1oKSAKPiAJCQl1c2FnZTsKPiAJCQlleGl0IDA7Owo+IAkJLS0pIHNoaWZ0IDsgYnJl YWsgOzsKPiAJCSopIGhhX2xvZy5zaCBlcnIgIlVua25vd24gb3B0aW9uOiAkMS4gU2VlIC0taGVs cCBmb3IgZGV0YWlscy4iOyBleGl0IDE7Owo+IAllc2FjCj4gZG9uZQo+IAo+IFsgLW4gIiQxIiBd ICYmIGFjdGlvbj0kMQo+IAo+IGlmIFsgLXogIiRlYzJfcHJvZmlsZSJdOyB0aGVuCj4gCW9wdGlv bnM9Ii0tb3V0cHV0IHRleHQgLS1wcm9maWxlIGRlZmF1bHQiCj4gZWxzZQo+IAlvcHRpb25zPSIt LW91dHB1dCB0ZXh0IC0tcHJvZmlsZSAkZWMyX3Byb2ZpbGUgIgo+IGZpCj4gCj4gYWN0aW9uPWBl Y2hvICRhY3Rpb24gfCB0ciAnQS1aJyAnYS16J2AKPiAKPiBjYXNlICRhY3Rpb24gaW4gCj4gCW1l dGFkYXRhKQo+IAkJbWV0YWRhdGEKPiAJOzsKPiAJZ2V0aW5mby14bWwpCj4gCQlnZXRpbmZvLXht bAo+IAk7Owo+IAlnZXRjb25maWduYW1lcykKPiAJCWZvciBpIGluIHByb2ZpbGUgcG9ydCB0YWcK PiAJCWRvCj4gCQkJZWNobyAkaQo+IAkJZG9uZQo+IAkJZXhpdCAwCj4gCTs7Cj4gCWdldGluZm8t ZGV2aWQpCj4gCQllY2hvICJFQzIgU1RPTklUSCBkZXZpY2UiCj4gCQlleGl0IDAKPiAJOzsKPiAJ Z2V0aW5mby1kZXZuYW1lKQo+IAkJZWNobyAiRUMyIFNUT05JVEggZXh0ZXJuYWwgZGV2aWNlIgo+ IAkJZXhpdCAwCj4gCTs7Cj4gCWdldGluZm8tZGV2ZGVzY3IpCj4gCQllY2hvICJmZW5jZV9lYzIg aXMgYW4gSS9PIEZlbmNpbmcgYWdlbnQgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbWF6b24gRUMy IGluc3RhbmNlcy4iCj4gCQlleGl0IDAKPiAJOzsKPiAJZ2V0aW5mby1kZXZ1cmwpCj4gCQllY2hv ICIiCj4gCQlleGl0IDAKPiAJOzsKPiBlc2FjCj4gCj4gIyBnZXQgbXkgaW5zdGFuY2UgaWQKPiBt eWluc3RhbmNlPWBjdXJsIGh0dHA6Ly8xNjkuMjU0LjE2OS4yNTQvbGF0ZXN0L21ldGEtZGF0YS9p bnN0YW5jZS1pZGAKPiAKPiAjIGNoZWNrIG15IHN0YXR1cy4KPiAjIFdoZW4gdGhlIEVDMiBpbnN0 YW5jZSBiZSBzdG9wcGVkIGJ5IHRoZSAiYXdzIGVjMiBzdG9wLWluc3RhbmNlcyIgLCB0aGUgc3Rv cCBwcm9jZXNzaW5nIG9mIHRoZSBPUyBpcyBleGVjdXRlZC4KPiAjIFdoaWxlIHRoZSBPUyBzdG9w IHByb2Nlc3NpbmcsIFBhY2VtYWtlciBjYW4gZXhlY3V0ZSB0aGUgU1RPTklUSCBwcm9jZXNzaW5n Lgo+ICMgU28sIElmIG15IHN0YXR1cyBpcyBub3QgInJ1bm5pbmciLCBpdCBkZXRlcm1pbmVkIHRo YXQgSSB3YXMgYWxyZWFkeSBmZW5jZWQuIEFuZCB0byBwcmV2ZW50IGZlbmNpbmcgZWFjaCBvdGhl cgo+ICMgaW4gc3BsaXQtYnJhaW4sIEkgZG9uJ3QgZmVuY2Ugb3RoZXIgbm9kZS4KPiBpZiBbIC16 ICIkbXlpbnN0YW5jZSIgXTsgdGhlbgo+IAloYV9sb2cuc2ggZXJyICJGYWlsZWQgdG8gZ2V0IE15 IEluc3RhbmNlIElELiBzbyBjYW4gbm90IGNoZWNrIG15IHN0YXR1cy4iCj4gCWV4aXQgMQo+IGZp Cj4gbXlzdGF0dXM9YGluc3RhbmNlX3N0YXR1cyAkbXlpbnN0YW5jZWAKPiBpZiBbICIkbXlzdGF0 dXMiICE9ICJydW5uaW5nIiBdOyB0aGVuICNkbyBub3QgZmVuY2UKPiAJaGFfbG9nLnNoIHdhcm4g Ikkgd2FzIGFscmVhZHkgZmVuY2VkIChNeSBpbnN0YW5jZSBzdGF0dXM9JG15c3RhdHVzKS4gSSBk b24ndCBmZW5jZSBvdGhlciBub2RlLiIKPiAJZXhpdCAxCj4gZmkKPiAKPiAjIGdldCB0YXJnZXQn cyBpbnN0YW5jZSBpZAo+IGluc3RhbmNlPSIiCj4gaWYgWyAhIC16ICIkcG9ydCIgXTsgdGhlbgo+ IAlpbnN0YW5jZT1gaW5zdGFuY2VfZm9yX3BvcnQgJHBvcnQgJG9wdGlvbnNgCj4gZmkKPiAKPiBj YXNlICRhY3Rpb24gaW4gCj4gCXJlYm9vdHxyZXNldCkKPiAJCXN0YXR1cz1gaW5zdGFuY2Vfc3Rh dHVzICRpbnN0YW5jZWAKPiAJCWlmIFsgIiRzdGF0dXMiICE9ICJzdG9wcGVkIiBdOyB0aGVuCj4g CQkJaW5zdGFuY2Vfb2ZmCj4gCQlmaQo+IAkJd2hpbGUgdHJ1ZTsKPiAJCWRvCj4gCQkJc3RhdHVz PWBpbnN0YW5jZV9zdGF0dXMgJGluc3RhbmNlYAo+IAkJCWlmIFsgIiRzdGF0dXMiID0gInN0b3Bw ZWQiIF07IHRoZW4KPiAJCQkJYnJlYWsKPiAJCQlmaQo+IAkJCXNsZWVwICRzbGVlcF90aW1lCj4g CQlkb25lCj4gCQlpbnN0YW5jZV9vbgo+IAkJd2hpbGUgdHJ1ZTsKPiAJCWRvCj4gCQkJc3RhdHVz PWBpbnN0YW5jZV9zdGF0dXMgJGluc3RhbmNlYAo+IAkJCWlmIFsgIiRzdGF0dXMiID0gInJ1bm5p bmciIF07IHRoZW4KPiAJCQkJYnJlYWsKPiAJCQlmaQo+IAkJCXNsZWVwICRzbGVlcF90aW1lCj4g CQlkb25lCj4gCTs7Cj4gCXBvd2Vyb258b24pCj4gCQlpbnN0YW5jZV9vbgo+IAkJd2hpbGUgdHJ1 ZTsKPiAJCWRvCj4gCQkJc3RhdHVzPWBpbnN0YW5jZV9zdGF0dXMgJGluc3RhbmNlYAo+IAkJCWlm IFsgIiRzdGF0dXMiID0gInJ1bm5pbmciIF07IHRoZW4KPiAJCQkJYnJlYWsKPiAJCQlmaQo+IAkJ ZG9uZQo+IAk7Owo+IAlwb3dlcm9mZnxvZmYpCj4gCQlpbnN0YW5jZV9vZmYKPiAJCXdoaWxlIHRy dWU7Cj4gCQlkbwo+IAkJCXN0YXR1cz1gaW5zdGFuY2Vfc3RhdHVzICRpbnN0YW5jZWAKPiAJCQlp ZiBbICIkc3RhdHVzIiA9ICJzdG9wcGVkIiBdOyB0aGVuCj4gCQkJCWJyZWFrCj4gCQkJZmkKPiAJ CQlzbGVlcCAkc2xlZXBfdGltZQo+IAkJZG9uZQo+IAk7Owo+IAltb25pdG9yKQo+IAkJIyBJcyB0 aGUgZGV2aWNlIG9rPwo+IAkJYXdzIGVjMiBkZXNjcmliZS1pbnN0YW5jZXMgJG9wdGlvbnMgfCBn cmVwIElOU1RBTkNFUyAmPiAvZGV2L251bGwKPiAJOzsKPiAJZ2V0aG9zdHN8aG9zdGxpc3R8bGlz dCkKPiAJCSMgTGlzdCBvZiBuYW1lcyB3ZSBrbm93IGFib3V0Cj4gCQlhPWBhd3MgZWMyIGRlc2Ny aWJlLWluc3RhbmNlcyAkb3B0aW9ucyB8IGF3ayAtdiB0YWdfcGF0PSJeVEFHU8KldCRlYzJfdGFn wqV0IiAtRiAnwqV0JyAneyAKPiAJCQlpZiAoL15JTlNUQU5DRVMvKSB7IHByaW50ZiAiJXPCpW4i LCAkOCB9Cj4gCQkJZWxzZSBpZiAoICQxIsKldCIkMiLCpXQiIOKAviB0YWdfcGF0ICkgeyBwcmlu dGYgIiVzwqVuIiwgJDMgfQo+IAkJCX0nIHwgc29ydCAtdWAKPiAJCWVjaG8gJGEKPiAJOzsKPiAJ c3RhdHxzdGF0dXMpCj4gCQlpbnN0YW5jZV9zdGF0dXMgJGluc3RhbmNlID4gL2Rldi9udWxsCj4g CTs7Cj4gCSopIGhhX2xvZy5zaCBlcnIgIlVua25vd24gYWN0aW9uOiAkYWN0aW9uIjsgZXhpdCAx OzsKPiBlc2FjCj4gCj4gc3RhdHVzPSQ/Cj4gCj4gaWYgWyAkcXVpZXQgLWVxIDEgXTsgdGhlbgo+ IAk6IG5vdGhpbmcKPiBlbGlmIFsgJHN0YXR1cyAtZXEgMCBdOyB0aGVuCj4gCWhhX2xvZy5zaCBp bmZvICJPcGVyYXRpb24gJGFjdGlvbiBwYXNzZWQiCj4gZWxzZQo+IAloYV9sb2cuc2ggZXJyICJP cGVyYXRpb24gJGFjdGlvbiBmYWlsZWQ6ICRzdGF0dXMiCj4gZmkKPiBleGl0ICRzdGF0dXMKCj4g X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBMaW51eC1I QSBtYWlsaW5nIGxpc3QKPiBMaW51eC1IQUBsaXN0cy5saW51eC1oYS5vcmcKPiBodHRwOi8vbGlz dHMubGludXgtaGEub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtaGEKPiBTZWUgYWxzbzogaHR0 cDovL2xpbnV4LWhhLm9yZy9SZXBvcnRpbmdQcm9ibGVtcwoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KTGludXgtSEEgbWFpbGluZyBsaXN0CkxpbnV4LUhB QGxpc3RzLmxpbnV4LWhhLm9yZwpodHRwOi8vbGlzdHMubGludXgtaGEub3JnL21haWxtYW4vbGlz dGluZm8vbGludXgtaGEKU2VlIGFsc286IGh0dHA6Ly9saW51eC1oYS5vcmcvUmVwb3J0aW5nUHJv YmxlbXM=