From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.71) id 1ROqb7-0002kT-1I for mharc-grub-devel@gnu.org; Fri, 11 Nov 2011 07:52:45 -0500 Received: from eggs.gnu.org ([140.186.70.92]:57023) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ROqb4-0002kA-9d for grub-devel@gnu.org; Fri, 11 Nov 2011 07:52:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ROqaw-0007h0-7K for grub-devel@gnu.org; Fri, 11 Nov 2011 07:52:42 -0500 Received: from mail-ey0-f169.google.com ([209.85.215.169]:62092) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ROqav-0007gl-LY for grub-devel@gnu.org; Fri, 11 Nov 2011 07:52:34 -0500 Received: by eye4 with SMTP id 4so3744728eye.0 for ; Fri, 11 Nov 2011 04:52:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:x-enigmail-version:content-type; bh=OpqBdYQRd/7YDR1EIt7Ek0Uw7rSsuSSVoG1Fk+xkkSk=; b=jIzbD4TP8bSZ2u5zSjDm0QR1aqhZDvd/euvRVAX+csWbfsfE+6PYv9pvB+c4OVu9GU Rmctrk+ivXEurE6P7FNl938AX70UxvA698/mgMLEOtY4YvA8ZAKWc2bIXQ1X9pvmsK66 fPEylIgSypMr+y0KuFc34JKTfbsrgFqrsTHCg= Received: by 10.213.28.194 with SMTP id n2mr1001769ebc.96.1321015952187; Fri, 11 Nov 2011 04:52:32 -0800 (PST) Received: from debian.x201.phnet (public-docking-hg-2-093.ethz.ch. [129.132.247.93]) by mx.google.com with ESMTPS id v3sm31569427eej.7.2011.11.11.04.52.29 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 11 Nov 2011 04:52:30 -0800 (PST) Message-ID: <4EBD1A8C.8060202@gmail.com> Date: Fri, 11 Nov 2011 13:52:28 +0100 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20111010 Iceowl/1.0b2 Icedove/3.1.15 MIME-Version: 1.0 To: The development of GRUB 2 Subject: Re: Automated FS tests. Plans about untested FS: AFS, SFS, Minix3 References: <4EBC4339.6090803@gmail.com> In-Reply-To: <4EBC4339.6090803@gmail.com> X-Enigmail-Version: 1.1.2 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enig137F69C7031BC0EE8F82DC69" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.215.169 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Nov 2011 12:52:43 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig137F69C7031BC0EE8F82DC69 Content-Type: multipart/mixed; boundary="------------060707010003040407090508" This is a multi-part message in MIME format. --------------060707010003040407090508 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 10.11.2011 22:33, Vladimir '=CF=86-coder/phcoder' Serbinenko wrote: > Some of you have probably noticed the series of commits fixing differen= t > FS bugs limitations and missing features. The master of the ball was th= e > attached script in different slight modifications. UFS1 and UFS2 are > commented out since during the last test I had a kernel with only ro UF= S > support but UFS and UFS2 were both tested. I hope some day to clean up > the script and commit it as e.g. "make fscheck", is anybody willing to > help? For 3 filesystems: AFS, SFS and Minix3 Fixed for minix3. AFS and SFS are still a problem. > I couldn't find any driver > available under GNU/Linux. Considering the amount of fixes for other > FSes with similar usage, I except these FS have issues, especially SFS,= > since unlike the 2 others which are minor modifications of BFS resp > minix2 it doesn't share any code with any other FS. The inability to > test those FS is a serious drawback especially if any changes affecting= > all the filesystems need to be made. We all know that such condition ca= n > lead to code quality degradation and eventual removal of concerned FS i= n > a long run. So could anyone supply the missing tests? They have to be > runnable under GNU/Linux. Supporting more platforms is a plus but not a= > requirement since it's mainly quality insurance tool. > --=20 Regards Vladimir '=CF=86-coder/phcoder' Serbinenko --------------060707010003040407090508 Content-Type: application/x-shellscript; name="fstest.sh" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="fstest.sh" IyEvYmluL2Jhc2gKCiMgTm90IHN1cHBvcnRlZCBpbiBHTlUvTGludXg6IGFmcyBzZnMKCk5P QklHPXkKCmVjaG8gLW4gIkZJTEVTWVMgICAgICAgIE5ERVYgRElSICBMRElSIFRJTUUgTFRJ TSBMQUJMIFVVSUQgRlNUTSBTWU0gIExTWU0gRklMRSBMRklMICIKaWYgWyB4IiROT0JJRyIg IT0geHkgXTsgdGhlbgogICAgZWNobyAtbiAiQklHICAiCmZpCmVjaG8KZWNobyA+IHJlcG9y dC50eHQKCkdSVUJGU1RFU1Q9Ii9ob21lL3BoY29kZXIvY29tcGlsZS9ncnViLWZzdGVzdCIK CnJ1bl9ncnViZnN0ZXN0ICgpIHsKICAgIGVjaG8gIiRmczoiICIkTkRFVklDRVMiICIkQCIg Pj4gdGltZV9yZXBvcnQudHh0CiAgICBjYXNlIHgkZnMgaW4KCSMgUkFJRCAxIGhhcyB0byB3 b3JrIHdpdGggZXZlbiBvbmUgZGV2aWNlIG9mIHRoZSBzZXQuCgl4emZzX21pcnJvcikKCSAg ICAvdXNyL2Jpbi90aW1lIC1hIC1vIHRpbWVfcmVwb3J0LnR4dCB2YWxncmluZCAtLWxvZy1m aWxlPSJ2YWxyZXBvcnQvJHtmc31fJXAudHh0IiAtLWxlYWstY2hlY2s9ZnVsbCAiJEdSVUJG U1RFU1QiIC1jIDEgIiR7RlNJTUFHRVNbMF19IiAiJEAiOzsKCSMgRGVncmFkZSByYWlkeiBi eSByZW1vdmluZyBmaXJzdCBhbmQgbGFzdCBkZXZpY2UKCXh6ZnNfcmFpZHoyKQoJICAgIHVu c2V0IENVUkRFVklDRVMKCSAgICBmb3IgKChpPTE7aSA8IE5ERVZJQ0VTIC0gMTsgaSsrKSk7 IGRvCgkJQ1VSREVWSUNFU1tpLTFdPSIke0ZTSU1BR0VTW2ldfSI7CgkgICAgZG9uZQoJICAg IC91c3IvYmluL3RpbWUgLWEgLW8gdGltZV9yZXBvcnQudHh0IHZhbGdyaW5kIC0tbG9nLWZp bGU9InZhbHJlcG9ydC8ke2ZzfV8lcC50eHQiIC0tbGVhay1jaGVjaz1mdWxsICIkR1JVQkZT VEVTVCIgLWMgJCgoTkRFVklDRVMtMikpICIke0NVUkRFVklDRVNbQF19IiAiJEAiOzsKCgkj IERlZ3JhZGUgcmFpZHogYW5kIGJ0cmZzIFJBSUQxIGJ5IHJlbW92aW5nIGZpcnN0IGRldmlj ZQogCXhidHJmc19yYWlkMSB8IHhidHJmc19yYWlkMTAgfCB4emZzX3JhaWR6KQoJICAgIHVu c2V0IENVUkRFVklDRVMKCSAgICBmb3IgKChpPTE7aSA8IE5ERVZJQ0VTOyBpKyspKTsgZG8K CQlDVVJERVZJQ0VTW2ktMV09IiR7RlNJTUFHRVNbaV19IjsKCSAgICBkb25lCgkgICAgL3Vz ci9iaW4vdGltZSAtYSAtbyB0aW1lX3JlcG9ydC50eHQgdmFsZ3JpbmQgLS1sb2ctZmlsZT0i dmFscmVwb3J0LyR7ZnN9XyVwLnR4dCIgLS1sZWFrLWNoZWNrPWZ1bGwgIiRHUlVCRlNURVNU IiAtYyAkKChOREVWSUNFUy0xKSkgIiR7Q1VSREVWSUNFU1tAXX0iICIkQCI7OwoJKikKCSAg ICAvdXNyL2Jpbi90aW1lIC1hIC1vIHRpbWVfcmVwb3J0LnR4dCB2YWxncmluZCAtLWxvZy1m aWxlPSJ2YWxyZXBvcnQvJHtmc31fJXAudHh0IiAtLWxlYWstY2hlY2s9ZnVsbCAiJEdSVUJG U1RFU1QiIC1jICROREVWSUNFUyAiJHtGU0lNQUdFU1tAXX0iICAiJEAiOzsKCiAgICBlc2Fj Cn0KCmZvciBmcyBpbiB1ZnMyIHVmczEgaXNvOTY2MCBhZmZzIGNwaW9mcyB0YXJmcyBzcXVh c2g0IG1pbml4IG1pbml4MiBtaW5peDMgdWRmIGZhdCBleGZhdCBiZnMgbnRmcyByZWlzZXJm cyB4ZnMgamZzIHJvbWZzIGhmcyBoZnNwbHVzIGV4dDIgZXh0MyBleHQ0IG5pbGZzMiB6ZnNf cmFpZHoyIHpmc19yYWlkeiB6ZnNfbWlycm9yIHpmc19zdHJpcGUgemZzIGJ0cmZzIGJ0cmZz X3JhaWQwIGJ0cmZzX3JhaWQxIGJ0cmZzX3NpbmdsZSBidHJmc19yYWlkMTA7IGRvCiAgICBN QVhERVZJQ0VTPTEKICAgIE1JTkRFVklDRVM9MQogICAgZXhwb3J0IGZzCiAgICBjYXNlIHgi JGZzIiBpbgoJeCJ6ZnNfcmFpZHoiIHwgeCJ6ZnNfc3RyaXBlIiB8IHgiemZzX21pcnJvciIg fCB4YnRyZnNfcmFpZDAgfCB4YnRyZnNfcmFpZDEpCgkgICAgTUlOREVWSUNFUz0yCgkgICAg TUFYREVWSUNFUz0xMAoJICAgIDs7Cgl4YnRyZnNfcmFpZDEwKQoJICAgIE1JTkRFVklDRVM9 NAoJICAgIE1BWERFVklDRVM9MTAKCSAgICA7OwoJeCJ6ZnNfcmFpZHoyIikKCSAgICBNSU5E RVZJQ0VTPTMKCSAgICBNQVhERVZJQ0VTPTEwOzsKICAgIGVzYWMKICAgIGZvciAoKE5ERVZJ Q0VTPU1JTkRFVklDRVM7IE5ERVZJQ0VTIDw9IE1BWERFVklDRVM7IE5ERVZJQ0VTKyspKTsg ZG8KCWV4cG9ydCBOREVWSUNFUwoJdW5zZXQgRlNJTUFHRVMKCWZvciAoKGk9MDsgaSA8IE5E RVZJQ0VTOyBpKyspKTsgZG8KCSAgICBGU0lNQUdFU1tpXT0iL2hvbWUvcGhjb2Rlci9jb21w aWxlLyR7ZnN9XyRpLmltZyIKCWRvbmUKCWV4cG9ydCBGU0lNQUdFUwoJTU5UUE9JTlRSTz0i L21udC8ke2ZzfV9ybyIKCU1OVFBPSU5UUlc9Ii9tbnQvJHtmc31fcnciCglNT1VOVE9QVFM9 IiIKCU1PVU5URlM9IiRmcyIKCU1BU1RFUj1tYXN0ZXIKCUZTTEFCRUw9Z3J1Yl90ZXN0CiAg ICAjIExpbWl0ZWQgYnkgTkFNRV9NQVggKHVzdWFsbHkgMjU1KSBpbiBHTlUvTGludXgKCUxP TkdOQU1FPSJxd2VydHp1aW9wYXNkZmdoamtseXhjdmJubTEyMzQ1Njc4OTBxd2VydHp1aW9w YXNkZmdoamtseXhjdmJubTEyMzQ1Njc4OTBvaWV3cWZpZXdpb3FvaXFvaXVycXJ1ZXdxb2l1 d29pZW9paXVld3Fyb3JlcWl1ZmllaXV3cm51cmV3ZXJpdXZjZW9pcm9pZXdxb2lyaWNkc2Fs a2NuZHNha2ZpcmVmb2l3cWVvaXJjb3JlandvaWpmcmVvaWpvam9pZXdqZnduZmNvaXJlbmZv aXJlZm5yZW9pZmVub2l3Zm5vaXJld29pZm9pd3F3b2llcWZycXdpb2VyaWpld3IiCglybSAt cmYgIiRNQVNURVIiCgogICAgIyBGUyBMSU1JVEFUSU9OOiBGQVQgZG9lc24ndCBhY2NlcHQg bmljZSBsYWJlbHMKCWNhc2UgeCIkZnMiIGluCgkgICAgeCJ1ZnMxIiB8IHgidWZzMiIpCgkJ RlNMQUJFTD0iZ3J1YnRlc3QiOzsKCSAgICB4ImZhdCIpCgkJRlNMQUJFTD0iR1JVQlRFU1Qi OzsKCSAgICAjUHJlZm9ybWF0dGVkIGltYWdlIGhhcyB0aGlzIGxhYmVsCgkgICAgeCJhZmZz IikKCQlGU0xBQkVMPSJFbXB0eSI7OwoJZXNhYwogICAgIyBGUyBMSU1JVEFUSU9OOiBzb21l IGZpbGVzeXN0ZW1zIGxpbWl0IGZpbGUgc2l6ZQoJQklHQkxPQ0tDTlQ9NTAwMAoJY2FzZSB4 IiRmcyIgaW4KCSAgICB4ImZhdCIgfCB4ImNwaW9mcyIgfCB4InJvbWZzIikKCQlCSUdCTE9D S0NOVD00MDk1OzsKCSAgICAjIG1pbml4IEZTIGlzIGF0bW9zdCA2NE0uIExlYXZlIHNvbWUg c3BhY2UgZm9yIG90aGVyIGZpbGVzLgoJICAgIHgibWluaXgiKQoJCUJJR0JMT0NLQ05UPTUz OzsKCSAgICB4Im1pbml4MyIgfCB4Im1pbml4MiIgfCB4ImhmcyIgfCB4ImFmZnMiKQoJCUJJ R0JMT0NLQ05UPTIwNDc7OwoJIyBXZSBhbHJlYWR5IHRlc3QgdGhlIEZTIGZvciBiaWcgZmls ZXMgc2VwYXJhdGVseS4gU2F2ZSBzb21lIHRpbWUgaGVyZS4KCSAgICB4Inpmc18iKiB8IHgi YnRyZnNfIiopCgkJQklHQkxPQ0tDTlQ9MTAwMDs7Cgllc2FjCiAgICAjIEZTIExJTUlUQVRJ T046IG5vIHN5bWxpbmtzIG9uIEZBVCwgZXhGQVQgYW5kIEhGUwogICAgIyBudGZzLTNnIGxp bWl0YXRpb246IGl0IGNyZWF0ZXMgaW50ZXJpeCBzeW1saW5rcyB3aGljaCBhcmVuJ3QgcmVh bCBzeW1saW5rcwoJTk9TWU1MSU5LPW4KCWNhc2UgeCIkZnMiIGluCgkgICAgeCJmYXQiIHwg eCJoZnMiIHwgeCJleGZhdCIgfCB4Im50ZnMiKQoJCU5PU1lNTElOSz15OzsKCWVzYWMKICAg ICMgRlMgTElNSVRBVElPTjogc29tZSBmaWxlc3lzdGVtcyBsaW1pdCBmaWxlIG5hbWUgc2l6 ZQoJY2FzZSB4IiRmcyIgaW4KCSAgICB4ImhmcyIpCgkJTE9OR05BTUU9ImBlY2hvICRMT05H TkFNRSB8aGVhZCAtYyAzMWAiOzsKCSAgICB4Im1pbml4IiB8IHgibWluaXgyIiB8IHgiYWZm cyIpCgkJTE9OR05BTUU9ImBlY2hvICRMT05HTkFNRSB8aGVhZCAtYyAzMGAiOzsKCSAgICB4 Im1pbml4MyIpCgkJTE9OR05BTUU9ImBlY2hvICRMT05HTkFNRSB8aGVhZCAtYyA2MGAiOzsK CSAgICB4InVkZiIpCgkJTE9OR05BTUU9ImBlY2hvICRMT05HTkFNRSB8aGVhZCAtYyAxOTJg Ijs7Cgllc2FjCglOT0ZJTEVUSU1FPW4KCU5PRlNUSU1FPW4KCWNhc2UgeCIkZnMiIGluCgkj IGFzIGZhciBhcyBJIGtub3cgdGhvc2UgRlMgZG9uJ3Qgc3RvcmUgdGhlaXIgbGFzdCBtb2Rp ZmljYXRpb24gZGF0ZS4KCSAgICB4ImpmcyIgfCB4InhmcyJ8IHgiYnRyZnMiKiB8IHgicmVp c2VyZnMiIHwgeCJiZnMiIFwKCQl8IHgidGFyZnMiIHwgeCJjcGlvZnMiIHwgeCJtaW5peCIg fCB4Im1pbml4MiIgXAoJCXwgeCJtaW5peDMiIHwgeCJudGZzIiB8IHgiYWZmcyIgfCB4InVk ZiIpCgkJTk9GU1RJTUU9eTs7CgkjIEZBVCBhbmQgZXhGQVQgdXNlIGxvY2FsdGltZS4gVW51 c2FibGUgZm9yIEdSVUIKCSAgICB4ImZhdCIgfCB4ImV4ZmF0IikKCQlOT0ZJTEVUSU1FPXk7 IE5PRlNUSU1FPXk7OwoJIyBGUyBsaW1pdGF0aW9uOiByb21mcyBoYXMgbm8gdGltZXN0YW1w cy4KCSAgICB4InJvbWZzIikKCQlOT0ZJTEVUSU1FPXk7IE5PRlNUSU1FPXk7OwoJZXNhYwoK CU5PRlNMQUJFTD1uCgljYXNlIHgiJGZzIiBpbgoJICAgIHgiY3Bpb2ZzIiB8IHgidGFyZnMi IHwgeCJzcXVhc2g0IiB8IHgibWluaXgiIHwgeCJtaW5peDIiIFwKCQl8IHgibWluaXgzIikK CQlOT0ZTTEFCRUw9eTs7Cgllc2FjCgoJcHJpbnRmICIlLTE2cyUzZCAiICRmcyAkTkRFVklD RVM7CgllY2hvICRmcyAkTkRFVklDRVMgPj4gcmVwb3J0LnR4dAoJdW5zZXQgTE9ERVZJQ0VT CgljYXNlIHgiJGZzIiBpbgoJICAgIHgidGFyZnMiIHwgeCJjcGlvZnMiIHwgeCJpc285NjYw IiB8IHgicm9tZnMiIHwgeCJzcXVhc2g0IikKCQlNTlRQT0lOVFJXPSIkTUFTVEVSIgoJCU1O VFBPSU5UUk89IiRNQVNURVIiCgkJbWtkaXIgLXAgIiRNQVNURVIiOzsKCSAgICAjIE5vIG1r ZnMgZm9yIEdOVS9MaW51eC4gSnVzdCB1bnBhY2sgcHJlZm9ybWF0dGVkIGVtcHR5IGltYWdl CgkgICAgeCJhZmZzIiB8IHgibWluaXgzIikKCQlta2RpciAtcCAiJE1OVFBPSU5UUlciCgkJ bWtkaXIgLXAgIiRNTlRQT0lOVFJPIgoJCXh6IC1kIDwgL2hvbWUvcGhjb2Rlci9kaXNraW1n LyR7ZnN9LmltZy54eiA+ICIke0ZTSU1BR0VTWzBdfSIKCQlmb3IgKChpPTA7IGkgPCBOREVW SUNFUzsgaSsrKSk7IGRvCgkJICAgIExPREVWSUNFU1tpXT1gbG9zZXR1cCAtZmAKCQkgICAg bG9zZXR1cCAiJHtMT0RFVklDRVNbaV19IiAiJHtGU0lNQUdFU1tpXX0iCgkJZG9uZSA7OwoJ ICAgICopCgkJbWtkaXIgLXAgIiRNTlRQT0lOVFJXIgoJCW1rZGlyIC1wICIkTU5UUE9JTlRS TyIKCQlmb3IgKChpPTA7IGkgPCBOREVWSUNFUzsgaSsrKSk7IGRvCgkJICAgIHFlbXUtaW1n IGNyZWF0ZSAiJHtGU0lNQUdFU1tpXX0iIDEwRyA+IC9kZXYvbnVsbAoJCSAgICBMT0RFVklD RVNbaV09YGxvc2V0dXAgLWZgCgkJICAgIGxvc2V0dXAgIiR7TE9ERVZJQ0VTW2ldfSIgIiR7 RlNJTUFHRVNbaV19IgoJCWRvbmUgOzsKCWVzYWMKCgljYXNlIHgiJGZzIiBpbgoJICAgIHgi YWZmcyIpIDs7CgkgICAgeCJtaW5peDMiKQoJCU1PVU5URlM9Im1pbml4Ijs7CgkgICAgeCJi ZnMiKQoJCUxEX0xJQlJBUllfUEFUSD0vaG9tZS9waGNvZGVyL3JlcG9zL2Jmc19sZSAvaG9t ZS9waGNvZGVyL3JlcG9zL2Jmc19sZS9iZnNfc2hlbGwgLS1pbml0aWFsaXplICIke0ZTSU1B R0VTWzBdfSIgIiRGU0xBQkVMIiAmPj4gcmVwb3J0LnR4dDs7CgkgICAgeCJidHJmcyIpCgkJ Ii9zYmluL21rZnMuYnRyZnMiIC1MICIkRlNMQUJFTCIgIiR7TE9ERVZJQ0VTWzBdfSIgJj4+ IHJlcG9ydC50eHQ7OwoJICAgIHgiYnRyZnNfcmFpZDAiKQoJCSIvc2Jpbi9ta2ZzLmJ0cmZz IiAtZCByYWlkMCAtTCAiJEZTTEFCRUwiICIke0xPREVWSUNFU1tAXX0iICY+PiByZXBvcnQu dHh0CgkJTU9VTlRGUz0iYnRyZnMiCgkJOzsKCSAgICB4ImJ0cmZzX3JhaWQxIikKCQkiL3Ni aW4vbWtmcy5idHJmcyIgLWQgcmFpZDEgLUwgIiRGU0xBQkVMIiAiJHtMT0RFVklDRVNbQF19 IiAmPj4gcmVwb3J0LnR4dAoJCU1PVU5URlM9ImJ0cmZzIgoJCTs7CgkgICAgeCJidHJmc19y YWlkMTAiKQoJCSIvc2Jpbi9ta2ZzLmJ0cmZzIiAtZCByYWlkMTAgLUwgIiRGU0xBQkVMIiAi JHtMT0RFVklDRVNbQF19IiAmPj4gcmVwb3J0LnR4dAoJCU1PVU5URlM9ImJ0cmZzIgoJCTs7 CgkgICAgeCJidHJmc19zaW5nbGUiKQoJCSIvc2Jpbi9ta2ZzLmJ0cmZzIiAtZCBzaW5nbGUg LUwgIiRGU0xBQkVMIiAiJHtMT0RFVklDRVNbQF19IiAmPj4gcmVwb3J0LnR4dAoJCU1PVU5U RlM9ImJ0cmZzIgoJCTs7CgkgICAgeCJleGZhdCIpCgkJIi9zYmluL21rZnMuJGZzIiAtbiAi JEZTTEFCRUwiICIke0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQudHh0OzsKCSAgICB4Im1p bml4IikKCQkiL3NiaW4vbWtmcy4kZnMiICIke0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQu dHh0OzsKCSMgbWtmcy5oZnMgYW5kIG1rZnMuaGZzcGx1cyBkb24ndCBmaWxsIFVVSUQuCgkg ICAgeCJoZnNwbHVzIikKCQkiL3NiaW4vbWtmcy4kZnMiIC12ICIkRlNMQUJFTCIgIiR7TE9E RVZJQ0VTWzBdfSIgJj4+IHJlcG9ydC50eHQKCQlkZCBpZj0vZGV2L3VyYW5kb20gb2Y9IiR7 TE9ERVZJQ0VTWzBdfSIgYnM9MSBzZWVrPSQoKDE2IzQ2OCkpIGNvbnY9bm90cnVuYyBjb3Vu dD04ICY+PiByZXBvcnQudHh0OzsKCSAgICB4ImhmcyIpCgkJIi9zYmluL21rZnMuJGZzIiAt diAiJEZTTEFCRUwiIC1oICIke0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQudHh0CgkJZGQg aWY9L2Rldi91cmFuZG9tIG9mPSIke0xPREVWSUNFU1swXX0iIGJzPTEgc2Vlaz0kKCgxNiM0 NzQpKSBjb252PW5vdHJ1bmMgY291bnQ9OCAmPj4gcmVwb3J0LnR4dAoJCTs7CgkgICAgeCJm YXQiKQoJCSIvc2Jpbi9ta2ZzLnZmYXQiIC1uICIkRlNMQUJFTCIgIiR7TE9ERVZJQ0VTWzBd fSIgJj4+IHJlcG9ydC50eHQKCQlNS0ZTT1BUUz0iIgoJCU1PVU5URlM9InZmYXQiOzsKCSAg ICB4Im1pbml4MiIpCgkJIi9zYmluL21rZnMubWluaXgiIC12ICIke0xPREVWSUNFU1swXX0i ICY+PiByZXBvcnQudHh0CgkJTUtGU09QVFM9Ii12IgoJCU1PVU5URlM9Im1pbml4Ijs7Cgkg ICAgeCJudGZzIikKCQkiL3NiaW4vbWtmcy5udGZzIiAtTCAiJEZTTEFCRUwiIC1RIC1xICIk e0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQudHh0OzsKCSAgICB4InVkZiIpCgkJIi91c3Iv YmluL21rdWRmZnMiIC0tbHZpZD0iJEZTTEFCRUwiICIke0xPREVWSUNFU1swXX0iICY+PiBy ZXBvcnQudHh0OzsKCSAgICB4InVmczIiKQoJCSIvc2Jpbi9ta2ZzLnVmcyIgLUwgIiRGU0xB QkVMIiAtTyAyICIke0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQudHh0CgkJTU9VTlRPUFRT PSJ1ZnN0eXBlPXVmczIsIgoJCU1PVU5URlM9InVmcyI7OwoJICAgIHgidWZzMSIpCgkJIi9z YmluL21rZnMudWZzIiAtTCAiJEZTTEFCRUwiIC1PIDEgIiR7TE9ERVZJQ0VTWzBdfSIgJj4+ IHJlcG9ydC50eHQKCQlNT1VOVE9QVFM9InVmc3R5cGU9NDRic2QsIgoJCU1PVU5URlM9InVm cyI7OwoJICAgIHgiemZzIikKCQl6ZnMtZnVzZQoJCXNsZWVwIDEKCQkiL3Vzci9sb2NhbC9z YmluL3pwb29sIiBjcmVhdGUgLVIgIiRNTlRQT0lOVFJXIiAiJEZTTEFCRUwiICIke0xPREVW SUNFU1swXX0iCgkJc2xlZXAgMQoJCSIvdXNyL2xvY2FsL3NiaW4vemZzIiBjcmVhdGUgIiRG U0xBQkVMIi9ncnViZnMKCQlzbGVlcCAxOzsKCSAgICB4Inpmc19yYWlkeiIpCgkJemZzLWZ1 c2UKCQlzbGVlcCAxCgkJIi91c3IvbG9jYWwvc2Jpbi96cG9vbCIgY3JlYXRlIC1SICIkTU5U UE9JTlRSVyIgIiRGU0xBQkVMIiByYWlkeiAiJHtMT0RFVklDRVNbQF19IgoJCXNsZWVwIDEK CQkiL3Vzci9sb2NhbC9zYmluL3pmcyIgY3JlYXRlICIkRlNMQUJFTCIvZ3J1YmZzCgkJc2xl ZXAgMTs7CgkgICAgeCJ6ZnNfcmFpZHoyIikKCQl6ZnMtZnVzZQoJCXNsZWVwIDEKCQkiL3Vz ci9sb2NhbC9zYmluL3pwb29sIiBjcmVhdGUgLVIgIiRNTlRQT0lOVFJXIiAiJEZTTEFCRUwi IHJhaWR6MiAiJHtMT0RFVklDRVNbQF19IgoJCXNsZWVwIDEKCQkiL3Vzci9sb2NhbC9zYmlu L3pmcyIgY3JlYXRlICIkRlNMQUJFTCIvZ3J1YmZzCgkJc2xlZXAgMTs7CgkgICAgeCJ6ZnNf bWlycm9yIikKCQl6ZnMtZnVzZQoJCXNsZWVwIDEKCQkiL3Vzci9sb2NhbC9zYmluL3pwb29s IiBjcmVhdGUgLVIgIiRNTlRQT0lOVFJXIiAiJEZTTEFCRUwiIG1pcnJvciAiJHtMT0RFVklD RVNbQF19IgoJCXNsZWVwIDEKCQkiL3Vzci9sb2NhbC9zYmluL3pmcyIgY3JlYXRlICIkRlNM QUJFTCIvZ3J1YmZzCgkJc2xlZXAgMTs7CgkgICAgeCJ6ZnNfc3RyaXBlIikKCQl6ZnMtZnVz ZQoJCXNsZWVwIDEKCQkiL3Vzci9sb2NhbC9zYmluL3pwb29sIiBjcmVhdGUgLVIgIiRNTlRQ T0lOVFJXIiAiJEZTTEFCRUwiICIke0xPREVWSUNFU1tAXX0iCgkJc2xlZXAgMQoJCSIvdXNy L2xvY2FsL3NiaW4vemZzIiBjcmVhdGUgIiRGU0xBQkVMIi9ncnViZnMKCQlzbGVlcCAxOzsK CSAgICB4InRhcmZzIiB8IHgiY3Bpb2ZzIiB8IHgiaXNvOTY2MCIgfCB4InJvbWZzIiB8IHgi c3F1YXNoNCIpIDs7CgkgICAgeCJyZWlzZXJmcyIpCgkJIi9zYmluL21rZnMuJGZzIiAtbCAi JEZTTEFCRUwiIC1xICIke0xPREVWSUNFU1swXX0iICY+PiByZXBvcnQudHh0OzsKCSAgICAq KQoJCSIvc2Jpbi9ta2ZzLiRmcyIgLUwgIiRGU0xBQkVMIiAtcSAiJHtMT0RFVklDRVNbMF19 IiAmPj4gcmVwb3J0LnR4dDs7Cgllc2FjCglCQVNFRklMRT0iMS5pbWciCglCSUdGSUxFPSJi aWcuaW1nIgoJQkFTRVNZTT0ic3ltIgoJTE9OR1NZTT0ibG9uZ3N5bSIKCU9TRElSPSIiCglH UlVCRElSPSIobG9vcDApIgoJY2FzZSB4IiRmcyIgaW4KCSAgICB4InpmcyIqKQkgICAgCgkJ T1NESVI9ImdydWJmcy8iCgkJR1JVQkRJUj0iKGxvb3AwKS9ncnViZnNAIjs7CgkgICAgeCJi ZnMiKQoJCS9ob21lL3BoY29kZXIvcmVwb3MvYmZzX2xlL2Jmc19mdXNlICIke0ZTSU1BR0VT WzBdfSIgIiRNTlRQT0lOVFJXIiAmPj4gcmVwb3J0LnR4dAoJCU9TRElSPSJteWZzLyI7OwoJ ICAgIHgidGFyZnMiIHwgeCJjcGlvZnMiIHwgeCJpc285NjYwIiB8IHgicm9tZnMiIHwgeCJz cXVhc2g0IikgCgkJOzsKCSAgICAqKQoJCW1vdW50IC10ICIkTU9VTlRGUyIgIiR7TE9ERVZJ Q0VTWzBdfSIgIiRNTlRQT0lOVFJXIiAtbyAke01PVU5UT1BUU31ydyAmPj4gcmVwb3J0LnR4 dDs7Cgllc2FjCglpZiBbIHgiJGZzIiA9IHgibWluaXgiIF07IHRoZW4KCSAgICBCTE9DS0NO VD01CgllbHNlCgkgICAgQkxPQ0tDTlQ9NQoJZmkKCW9wZW5zc2wgcmFuZCAkKChCTE9DS0NO VCAqIDEwNDg1NzYpKSA+ICIkTU5UUE9JTlRSVy8kT1NESVIvJEJBU0VGSUxFIgoJb3BlbnNz bCByYW5kICQoKEJMT0NLQ05UICogMTA0ODU3NikpID4gIiRNTlRQT0lOVFJXLyRPU0RJUi8k TE9OR05BTUUiCglpZiBbIHgkTk9CSUcgIT0geHkgXTsgdGhlbgoJICAgIChvcGVuc3NsIHJh bmQgJCgoQklHQkxPQ0tDTlQgKiAyNjIxNDQpKTsgb3BlbnNzbCByYW5kICQoKEJJR0JMT0NL Q05UICogMjYyMTQ0KSk7IG9wZW5zc2wgcmFuZCAkKChCSUdCTE9DS0NOVCAqIDI2MjE0NCkp OyBvcGVuc3NsIHJhbmQgJCgoQklHQkxPQ0tDTlQgKiAyNjIxNDQpKSkgPiAiJE1OVFBPSU5U UlcvJE9TRElSLyRCSUdGSUxFIgoJZmkKCglpZiBbIHgkTk9TWU1MSU5LICE9IHh5IF07IHRo ZW4KCSAgICBsbiAtcyAiJEJBU0VGSUxFIiAiJE1OVFBPSU5UUlcvJE9TRElSLyRCQVNFU1lN IgoJICAgIGxuIC1zICIkTE9OR05BTUUiICIkTU5UUE9JTlRSVy8kT1NESVIvJExPTkdTWU0i CglmaQoJY2FzZSB4IiRmcyIgaW4KCSAgICB4InpmcyIqKQoJCXNsZWVwIDUKCQl6cG9vbCBl eHBvcnQgIiRGU0xBQkVMIgoJCXNsZWVwIDUKCQkiL3Vzci9sb2NhbC9zYmluL3pwb29sIiBp bXBvcnQgLVIgIiRNTlRQT0lOVFJPIiAiJEZTTEFCRUwiCgkJOzsKCSAgICB4InRhcmZzIikK CQkoY2QgIiRNQVNURVIiOyB0YXIgY2YgIiR7RlNJTUFHRVNbMF19IiAuKSAmPj4gcmVwb3J0 LnR4dDs7CgkgICAgeCJjcGlvZnMiKQoJCShjZCAiJE1BU1RFUiI7IGZpbmQgLiB8IGNwaW8g LW8gPiAiJHtGU0lNQUdFU1swXX0iICkgJj4+IHJlcG9ydC50eHQ7OwoJICAgIHgiaXNvOTY2 MCIpCgkJRlNVVUlEPSQoZGF0ZSAtdSArJVktJW0tJWQtJUgtJU0tJVMtMDApOwoJCXhvcnJp c29mcyAtZ3JhZnQtcG9pbnRzIC1SIC1KIC1WICIkRlNMQUJFTCIgLS1tb2RpZmljYXRpb24t ZGF0ZT0kKGVjaG8gJHtGU1VVSUR9IHwgc2VkICdzLy0vL2c7JykgLW8gIiR7RlNJTUFHRVNb MF19IiAvPSIkTUFTVEVSIiAmPj4gcmVwb3J0LnR4dDs7CgkgICAgCgkgICAgeCJyb21mcyIp CgkJZ2Vucm9tZnMgLVYgIiRGU0xBQkVMIiAtZiAiJHtGU0lNQUdFU1swXX0iIC1kICIkTUFT VEVSIiAmPj4gcmVwb3J0LnR4dDs7CgkgICAgeCJzcXVhc2g0IikKCQlta3NxdWFzaGZzICIk TUFTVEVSIiAiJHtGU0lNQUdFU1swXX0iICY+PiByZXBvcnQudHh0OzsKCSAgICB4ImJmcyIp CgkJc2xlZXAgMQoJCU9TRElSPSIiCgkJZnVzZXJtb3VudCAtdSAiJE1OVFBPSU5UUlciICY+ PiByZXBvcnQudHh0CgkJbW91bnQgLXQgYmVmcyAiJHtMT0RFVklDRVNbMF19IiAiJE1OVFBP SU5UUk8iIC1vICR7TU9VTlRPUFRTfXJvICY+PiByZXBvcnQudHh0OzsKCSAgICAqKQoJCXNs ZWVwIDEKCQl1bW91bnQgIiRNTlRQT0lOVFJXIiAmPj4gcmVwb3J0LnR4dAoJCXNsZWVwIDEK CQltb3VudCAtdCAiJE1PVU5URlMiICIke0xPREVWSUNFU1swXX0iICIkTU5UUE9JTlRSTyIg LW8gJHtNT1VOVE9QVFN9cm8gJj4+IHJlcG9ydC50eHQ7OwoJZXNhYwoKCWNhc2UgeCIkZnMi IGluCgkgICAgeCJ6ZnMiKikKCQlMU1JPVVQ9JChydW5fZ3J1YmZzdGVzdCBscyAtLSAtbCAn KGxvb3AwKS9ncnViZnNALycpOzsKCSAgICAqKQoJCUxTUk9VVD0kKHJ1bl9ncnViZnN0ZXN0 IGxzIC0tIC1sICcobG9vcDApLycpOzsKCWVzYWMKCWlmIGVjaG8gIiRMU1JPVVQiIHwgZ3Jl cCAiJEJBU0VGSUxFIiA+IC9kZXYvbnVsbDsgdGhlbgoJICAgIGVjaG8gTElTVCBPSyA+PiBy ZXBvcnQudHh0CgkgICAgZWNobyAtbiAiT0sgICAiCgllbHNlCgkgICAgZWNobyBMSVNUIEZB SUwgPj4gcmVwb3J0LnR4dAoJICAgIGVjaG8gIiRMU1JPVVQiID4+IHJlcG9ydC50eHQKCSAg ICBUWj1VVEMgbHMgLS10aW1lLXN0eWxlPSslWSVtJWQlSCVNJVMuJU4gLWwgIiRNTlRQT0lO VFJPIiA+PiByZXBvcnQudHh0CgkgICAgZWNobyAtbiAiRkFJTCAiCglmaQoKCWlmIGVjaG8g IiRMU1JPVVQiIHwgZ3JlcCAiJExPTkdOQU1FIiA+IC9kZXYvbnVsbDsgdGhlbgoJICAgIGVj aG8gTE9ORyBMSVNUIE9LID4+IHJlcG9ydC50eHQKCSAgICBlY2hvIC1uICJPSyAgICIKCWVs c2UKCSAgICBlY2hvIExPTkcgTElTVCBGQUlMID4+IHJlcG9ydC50eHQKCSAgICBlY2hvICIk TFNST1VUIiA+PiByZXBvcnQudHh0CgkgICAgVFo9VVRDIGxzIC0tdGltZS1zdHlsZT0rJVkl bSVkJUglTSVTLiVOIC1sICIkTU5UUE9JTlRSTyIgPj4gcmVwb3J0LnR4dAoJICAgIGVjaG8g LW4gIkZBSUwgIgoJZmkKCglpZiBbIHgkTk9GSUxFVElNRSAhPSB4eSBdOyB0aGVuCgkgICAg ZmlsdGltZT0kKFRaPVVUQyBscyAtLXRpbWUtc3R5bGU9KyVZJW0lZCVIJU0lUyAtbCAtZCAi JE1OVFBPSU5UUk8vJE9TRElSLyRCQVNFRklMRSJ8YXdrICd7cHJpbnQgJDY7IH0nKQoJICAg IGlmIGVjaG8gIiRMU1JPVVQiIHwgZ3JlcCAiJGZpbHRpbWUgJEJBU0VGSUxFIiA+IC9kZXYv bnVsbDsgdGhlbgoJCWVjaG8gVElNRSBPSyA+PiByZXBvcnQudHh0CgkJZWNobyAtbiAiT0sg ICAiCgkgICAgZWxzZQoJCWVjaG8gVElNRSBGQUlMID4+IHJlcG9ydC50eHQKCQllY2hvICIk TFNST1VUIiA+PiByZXBvcnQudHh0CgkJVFo9VVRDIGxzIC0tdGltZS1zdHlsZT0rJVklbSVk JUglTSVTLiVOIC1sICIkTU5UUE9JTlRSTyIgPj4gcmVwb3J0LnR4dAoJCWVjaG8gLW4gIkZB SUwgIgoJICAgIGZpCgkgICAgCgkgICAgZmlsdGltZT0kKFRaPVVUQyBscyAtLXRpbWUtc3R5 bGU9KyVZJW0lZCVIJU0lUyAtbCAtZCAiJE1OVFBPSU5UUk8vJE9TRElSLyRMT05HTkFNRSJ8 YXdrICd7cHJpbnQgJDY7IH0nKQoJICAgIGlmIGVjaG8gIiRMU1JPVVQiIHwgZ3JlcCAiJGZp bHRpbWUgJExPTkdOQU1FIiA+IC9kZXYvbnVsbDsgdGhlbgoJCWVjaG8gTE9ORyBUSU1FIE9L ID4+IHJlcG9ydC50eHQKCQllY2hvIC1uICJPSyAgICIKCSAgICBlbHNlCgkJZWNobyBMT05H IFRJTUUgRkFJTCA+PiByZXBvcnQudHh0CgkJZWNobyAiJExTUk9VVCIgPj4gcmVwb3J0LnR4 dAoJCVRaPVVUQyBscyAtLXRpbWUtc3R5bGU9KyVZJW0lZCVIJU0lUy4lTiAtbCAiJE1OVFBP SU5UUk8iID4+IHJlcG9ydC50eHQKCQllY2hvIC1uICJGQUlMICIKCSAgICBmaQoJZWxzZQoJ ICAgIGVjaG8gLW4gIk4vQSAgTi9BICAiCglmaQoKCUxTT1VUPWBydW5fZ3J1YmZzdGVzdCBs cyAtLSAtbCAnKGxvb3AwKSdgCglpZiBbIHgiJE5PRlNMQUJFTCIgPSB4eSBdOyB0aGVuCgkg ICAgZWNobyAtbiAiTi9BICAiCgllbGlmIGVjaG8gIiRMU09VVCIgfCBncmVwICdMYWJlbCAi JyIkRlNMQUJFTCInIicgPiAvZGV2L251bGw7IHRoZW4KCSAgICBlY2hvIExBQkVMIE9LID4+ IHJlcG9ydC50eHQKCSAgICBlY2hvIC1uICJPSyAgICIKCWVsc2UKCSAgICBlY2hvIExBQkVM IEZBSUwgPj4gcmVwb3J0LnR4dAoJICAgIGVjaG8gIiRMU09VVCIgPj4gcmVwb3J0LnR4dAoJ ICAgIGJsa2lkICIkTE9ERVZJQ0UiID4+IHJlcG9ydC50eHQKCSAgICBlY2hvIC1uICJGQUlM ICIKCWZpCgogICAgIyBJbmNvbnNpc3RlbmNpZXMgYmV0d2VlbiBHUlVCIGFuZCBibGtpZC4K CWNhc2UgeCIkZnMiIGluCgkgICAgeCJpc285NjYwIikgOzsKCSAgICB4InVmczEiIHwgeCJ1 ZnMyIikKCQlJRD0kKGR1bXBmcy51ZnMgIiRMT0RFVklDRSIgfGhlYWQgLW4gMnx0YWlsIC1u IDEgfCBzZWQgJ3MsXi4qaWQsLGc7cyxcWywsZztzLFxdLCxnJykKCQlJRDE9IiQoZWNobyAk SUQgfCBhd2sgJ3sgcHJpbnQgJDE7IH0nKSIKCQlJRDI9IiQoZWNobyAkSUQgfCBhd2sgJ3sg cHJpbnQgJDI7IH0nKSIKCQlGU1VVSUQ9JChwcmludGYgIiUwOHglMDh4XG4iIDB4JElEMSAw eCRJRDIpCgkJOzsKCSAgICB4InpmcyIqKQoJCUZTVVVJRD0kKHByaW50ZiAiJTAxNnhcbiIg JChibGtpZCAtbyBleHBvcnQgIiR7TE9ERVZJQ0VTWzBdfSIgfGdyZXAgVVVJRD18c2VkIHMs VVVJRD0sLGcpKTs7CgkgICAgKikKCQlGU1VVSUQ9YGJsa2lkIC1vIGV4cG9ydCAiJHtMT0RF VklDRVNbMF19IiB8Z3JlcCBVVUlEPXxzZWQgcyxVVUlEPSwsZ2AKCQk7OwoJZXNhYwoJY2Fz ZSB4IiRmcyIgaW4KCSAgICB4ImhmcyIgfCB4Imhmc3BsdXMiKQoJCUdSVUJVVUlEPSJgcnVu X2dydWJmc3Rlc3QgeG51X3V1aWQgJ2xvb3AwJ2AiICY+PnJlcG9ydC50eHQKCQlpZiBbIHgi JEdSVUJVVUlEIiA9IHgiJEZTVVVJRCIgXTsgdGhlbgoJCSAgICBlY2hvIFVVSUQgT0sgPj4g cmVwb3J0LnR4dAoJCSAgICBlY2hvIC1uICJPSyAgICIKCQllbHNlCgkJICAgIGVjaG8gVVVJ RCBGQUlMID4+IHJlcG9ydC50eHQKCQkgICAgZWNobyAiJExTT1VUIiA+PiByZXBvcnQudHh0 CgkJICAgIGVjaG8gIiRHUlVCVVVJRCIgPj4gcmVwb3J0LnR4dAoJCSAgICBibGtpZCAiJHtM T0RFVklDRVNbMF19IiA+PiByZXBvcnQudHh0CgkJICAgIGVjaG8gLW4gIkZBSUwgIgoJCWZp CgkJOzsKICAgICAgICAjIEZTIExJTUlUQVRJT046IHJvbWZzLCBjcGlvLCB0YXIsIHNxdWFz aDQsIG1pbml4IGFuZCBtaW5peDIgCgkjIGhhdmUgbm8gVVVJRC4KCSAgICB4InJvbWZzIiB8 IHgiY3Bpb2ZzIiB8IHgidGFyZnMiIHwgeCJzcXVhc2g0IiB8IHgibWluaXgiIFwKCQl8IHgi bWluaXgyIiB8IHgibWluaXgzIiB8IHgiYWZmcyIgfCB4InVkZiIpCgkJZWNobyAtbiAiTi9B ICAiOzsKCSAgICAKCSAgICAqKQoJCWlmIGVjaG8gIiRMU09VVCIgfCBncmVwICdVVUlEICci JEZTVVVJRCInICcgPiAvZGV2L251bGw7IHRoZW4KCQkgICAgZWNobyBVVUlEIE9LID4+IHJl cG9ydC50eHQKCQkgICAgZWNobyAtbiAiT0sgICAiCgkJZWxzZQoJCSAgICBlY2hvIFVVSUQg RkFJTCA+PiByZXBvcnQudHh0CgkJICAgIGVjaG8gIiRGU1VVSUQiID4+IHJlcG9ydC50eHQK CQkgICAgZWNobyAiJExTT1VUIiA+PiByZXBvcnQudHh0CgkJICAgIGJsa2lkICIke0xPREVW SUNFU1swXX0iID4+IHJlcG9ydC50eHQKCQkgICAgZWNobyAtbiAiRkFJTCAiCgkJZmkKCQk7 OwoJZXNhYwoKCWlmIFsgeCRmcyAhPSB4aXNvOTY2MCBdOyB0aGVuCgkgICAgRlNUSU1FPSIk KFRaPVVUQyBscyAtLXRpbWUtc3R5bGU9IislWS0lbS0lZF8lSDolTTolUyIgLWwgLWQgIiR7 RlNJTUFHRVNbMF19Inxhd2sgJ3twcmludCAkNjsgfSd8c2VkICdzLF8sICxnJykiCgllbHNl CgkgICAgRlNUSU1FPSIkKGRhdGUgLWQgIiQoZWNobyAke0ZTVVVJRH0gfCBhd2sgLUYgLSAn eyBwcmludCAkMSItIiQyIi0iJDMiICIkNCI6IiQ1IjoiJDYgO30nKSIgJyslWS0lbS0lZCAl SDolTTolUycpIgoJZmkKCglpZiBbIHgkTk9GU1RJTUUgPSB4eSBdOyB0aGVuCgkgICAgZWNo byAtbiAiTi9BICAiCgllbGlmIGVjaG8gIiRMU09VVCIgfCBncmVwICdMYXN0IG1vZGlmaWNh dGlvbiB0aW1lICciJEZTVElNRSIgPiAvZGV2L251bGw7IHRoZW4KCSAgICBlY2hvIEZTVElN RSBPSyA+PiByZXBvcnQudHh0CgkgICAgZWNobyAtbiAiT0sgICAiCgllbHNlCgkgICAgZWNo byBGU1RJTUUgRkFJTCA+PiByZXBvcnQudHh0CgkgICAgZWNobyAiJEZTVElNRSIgPj4gcmVw b3J0LnR4dAoJICAgIGVjaG8gIiRMU09VVCIgPj4gcmVwb3J0LnR4dAoJICAgIGVjaG8gLW4g IkZBSUwgIgoJZmkKCglpZiBbIHgkTk9TWU1MSU5LICE9IHh5IF07IHRoZW4KCSAgICBpZiBy dW5fZ3J1YmZzdGVzdCBjbXAgIiRHUlVCRElSLyRCQVNFU1lNIiAiJE1OVFBPSU5UUk8vJE9T RElSLyRCQVNFRklMRSIgJj4+IHJlcG9ydC50eHQgOyB0aGVuCgkJZWNobyBTWU1MSU5LIE9L ID4+IHJlcG9ydC50eHQKCQllY2hvIC1uICJPSyAgICIKCSAgICBlbHNlCgkJZWNobyAtbiAi RkFJTCAiCgkJZWNobyBTWU1MSU5LIEZBSUwgPj4gcmVwb3J0LnR4dAoJICAgIGZpCgkgICAg aWYgcnVuX2dydWJmc3Rlc3QgY21wICIkR1JVQkRJUi8kTE9OR1NZTSIgIiRNTlRQT0lOVFJP LyRPU0RJUi8kTE9OR05BTUUiICY+PiByZXBvcnQudHh0IDsgdGhlbgoJCWVjaG8gTE9ORyBT WU1MSU5LIE9LID4+IHJlcG9ydC50eHQKCQllY2hvIC1uICJPSyAgICIKCSAgICBlbHNlCgkJ ZWNobyAtbiAiRkFJTCAiCgkJZWNobyBMT05HIFNZTUxJTksgRkFJTCA+PiByZXBvcnQudHh0 CgkgICAgZmkKCWVsc2UKCSAgICBlY2hvIC1uICJOL0EgIE4vQSAgIgkKCWZpCgoJaWYgcnVu X2dydWJmc3Rlc3QgY21wICIkR1JVQkRJUi8kQkFTRUZJTEUiICIkTU5UUE9JTlRSTy8kT1NE SVIvJEJBU0VGSUxFIiAmPj4gcmVwb3J0LnR4dCA7IHRoZW4KCSAgICBlY2hvIFJFQUQgT0sg Pj4gcmVwb3J0LnR4dAoJICAgIGVjaG8gLW4gIk9LICAgIgoJZWxzZQoJICAgIGVjaG8gLW4g IkZBSUwgIgoJICAgIGVjaG8gUkVBRCBGQUlMID4+IHJlcG9ydC50eHQKCWZpCglpZiBydW5f Z3J1YmZzdGVzdCBjbXAgIiRHUlVCRElSLyRMT05HTkFNRSIgIiRNTlRQT0lOVFJPLyRPU0RJ Ui8kTE9OR05BTUUiICY+PiByZXBvcnQudHh0IDsgdGhlbgoJICAgIGVjaG8gTE9ORyBOQU1F IFJFQUQgT0sgPj4gcmVwb3J0LnR4dAoJICAgIGVjaG8gLW4gIk9LICAgIgoJZWxzZQoJICAg IGVjaG8gLW4gIkZBSUwgIgoJICAgIGVjaG8gTE9ORyBOQU1FIFJFQUQgRkFJTCA+PiByZXBv cnQudHh0CglmaQoJaWYgWyB4JE5PQklHICE9IHh5IF07IHRoZW4KCSAgICBpZiBydW5fZ3J1 YmZzdGVzdCBjbXAgIiRHUlVCRElSLyRCSUdGSUxFIiAiJE1OVFBPSU5UUk8vJE9TRElSLyRC SUdGSUxFIiAmPj4gcmVwb3J0LnR4dCA7IHRoZW4KCQllY2hvIEJJRyBPSyA+PiByZXBvcnQu dHh0CgkJZWNobyAtbiAiT0sgIgoJICAgIGVsc2UKCQllY2hvIC1uICJGQUlMICIKCQllY2hv IEJJRyBGQUlMID4+IHJlcG9ydC50eHQKCSAgICBmaQoJZmkKCWVjaG8KCXNsZWVwIDEKCWNh c2UgeCIkZnMiIGluCgkgICAgeCJ6ZnMiKikKCQl6cG9vbCBleHBvcnQgIiRGU0xBQkVMIjs7 CgkgICAgeCJ0YXJmcyIgfCB4ImNwaW9mcyIgfCB4Imlzbzk2NjAiIHwgeCJyb21mcyIgfCB4 InNxdWFzaDQiKSAKCQk7OwoJICAgICopCgkJdW1vdW50ICIkTU5UUE9JTlRSTyIgJj4+IHJl cG9ydC50eHQgfHwgdHJ1ZQoJCXVtb3VudCAiJE1OVFBPSU5UUlciJj4+IHJlcG9ydC50eHQg fHwgdHJ1ZSAKCWVzYWMKCXNsZWVwIDEKCWZvciAoKGk9MDsgaSA8IE5ERVZJQ0VTOyBpKysp KTsgZG8KCSAgICBjYXNlIHgiJGZzIiBpbgoJCXgidGFyZnMiIHwgeCJjcGlvZnMiIHwgeCJp c285NjYwIiB8IHgicm9tZnMiIHwgeCJzcXVhc2g0IikgOzsKCQkqKQoJCSAgICBsb3NldHVw IC1kICIke0xPREVWSUNFU1tpXX0iOzsKCSAgICBlc2FjCgkgICAgcm0gIiR7RlNJTUFHRVNb aV19IgoJZG9uZQoJaWYgWyB4IiRmcyIgPSB4InpmcyIgXTsgdGhlbgoJICAgIHJtZGlyICIk TU5UUE9JTlRSVyIvZ3J1YmZzICY+PiByZXBvcnQudHh0IHx8IHRydWUgCgkgICAgcm1kaXIg IiRNTlRQT0lOVFJPIi9ncnViZnMgJj4+IHJlcG9ydC50eHQgfHwgdHJ1ZQoJZmkKCXJtZGly ICIkTU5UUE9JTlRSVyIgJj4+IHJlcG9ydC50eHQgfHwgdHJ1ZQoJcm1kaXIgIiRNTlRQT0lO VFJPIiAmPj4gcmVwb3J0LnR4dCB8fCB0cnVlCiAgICBkb25lCmRvbmUK --------------060707010003040407090508-- --------------enig137F69C7031BC0EE8F82DC69 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iF4EAREKAAYFAk69GowACgkQNak7dOguQgnl3QD/YomwG1eyDSZ3+laVjvf46YU7 jOZPOL1y77CmiXlNg2oA/2GDJDXfTpV698CyQZ4o4TKNM8bu0qbd5LeO69F1Oa8c =R0Fy -----END PGP SIGNATURE----- --------------enig137F69C7031BC0EE8F82DC69--