| File: | blib/lib/Acme/Goatse.pm |
| Coverage: | 38.9% |
| line | stmt | bran | cond | sub | time | code |
|---|---|---|---|---|---|---|
| 1 | package Acme::Goatse; | |||||
| 2 | ||||||
| 3 | require Exporter; | |||||
| 4 | ||||||
| 5 | @ISA = qw(Exporter); | |||||
| 6 | @EXPORT = qw(goatse); | |||||
| 7 | ||||||
| 8 | $VERSION = 0.02; | |||||
| 9 | ||||||
| 10 | sub goatse { | |||||
| 11 | ||||||
| 12 | 1 | 4 | $_=q&M("`@("`@(%P@("`@("`@("`@("`@7"`@("`@("`@("`@("\@("`@7"`@("`@ | |||
| 13 | M("`*?"`@("`@("!\("`@("`@("`@("`@(%P@("`@("`@("`@?"`@("`@('P@ | |||||
| 14 | M("`@("`*?"`@("`@("!@+B`@("`@("`@("`@("!\("`@("`@("`@?"`@("`@ | |||||
| 15 | M("`Z("`@("`*8"`@("`@("`@?"`@("`@("`@("`@("!\("`@("`@("!<?"`@ | |||||
| 16 | M("`@("!\("`@("`*(%P@("`@("`@?"`O("`@("`@("\@(%Q<7"`@("TM7U\@ | |||||
| 17 | M7%P@("`@("`@.B`@("`*("!<("`@("`@7"\@("!?+2U^?B`@("`@("`@("!^ | |||||
| 18 | M+2U?7WP@7"`@("`@?"`@("`*("`@7"`@("`@(%Q?+7X@("`@("`@("`@("`@ | |||||
| 19 | M("`@("`@('XM7UP@("`@?"`@("`*("`@(%Q?("`@("!<("`@("`@("!?+BTM | |||||
| 20 | M+2TM+2TM+E]?7U]?7UQ\("`@?"`@("`*("`@("`@7"`@("`@7%]?7U]?7R\O | |||||
| 21 | M(%\@7U]?(%\@*%\H7U\^("!<("`@?"`@("`*("`@("`@(%P@("`N("!#(%]? | |||||
| 22 | M7RD@(%]?7U]?7R`H7RA?7U]?/B`@?"`@+R`@("`*("`@("`@("]<('P@("!# | |||||
| 23 | M(%]?7U\I+R`@("`@(%P@*%]?7U]?/B`@?%\O("`@("`*("`@("`@+R`O7'P@ | |||||
| 24 | M("!#7U]?7U\I("`@("`@('P@("A?7U\^("`@+R`@7"`@("`*("`@("!\("`@ | |||||
| 25 | M*"`@(%]#7U]?7U\I7%]?7U]?7R\@("\O(%\O("\@("`@(%P*("`@("!\("`@ | |||||
| 26 | M(%P@('Q?7R`@(%Q<7U]?7U]?7U]?+R\@*%]?+R`@("`@("!\"B`@("!\(%P@ | |||||
| 27 | M("`@7%]?7U\I("`@8"TM+2T@("`M+2<@("`@("`@("`@("`@?`H@("`@?"`@ | |||||
| 28 | M7%\@("`@("`@("`@7U]?7"`@("`@("`O7R`@("`@("`@("!?+R!\"B`@('P@ | |||||
| 29 | M("`@("`@("`@("`@("\@("`@?"`@("`@?"`@7"`@("`@("`@("`@('P*("`@ | |||||
| 30 | M?"`@("`@("`@("`@("!\("`@("\@("`@("`@7"`@7"`@("`@("`@("`@?`H@ | |||||
| 31 | M("!\("`@("`@("`@("\@+R`@("!\("`@("`@("`@?"`@7"`@("`@("`@("`@ | |||||
| 32 | M?`H@("!\("`@("`@("`@+R`O("`@("`@7%]?+UQ?7U\O("`@('P@("`@("`@ | |||||
| 33 | M("`@?`H@('P@("`@("`@("`O("\@("`@("`@('P@("`@?"`@("`@("!\("`@ | |||||
| 34 | M("`@("`@?"`*("!\("`@("`@("`@('P@("`@("`@("!\("`@('P@("`@("`@ | |||||
| 35 | ,?"`@("`@("`@('P* | |||||
| 36 | &; | |||||
| 37 | ||||||
| 38 | 1 | 22 | $_ = unpack 'u', $_; | |||
| 39 | ||||||
| 40 | 1 | 23 | my $pad = int shift; | |||
| 41 | ||||||
| 42 | 1 | 5 | if ($pad){ | |||
| 43 | 0 | 0 | my @lines = split /\n/; | |||
| 44 | ||||||
| 45 | 0 | 0 | for(1..$pad){ | |||
| 46 | 0 | 0 | my @newlines; | |||
| 47 | 0 | 0 | for my $line(@lines){ | |||
| 48 | 0 | 0 | push @newlines, pad_line($line); | |||
| 49 | #push @newlines, "\n"; | |||||
| 50 | } | |||||
| 51 | 0 | 0 | @lines = @newlines; | |||
| 52 | } | |||||
| 53 | 0 | 0 | $_ = join "\n", @lines; | |||
| 54 | } | |||||
| 55 | ||||||
| 56 | 1 | 4 | return $_; | |||
| 57 | } | |||||
| 58 | ||||||
| 59 | sub pad_line { | |||||
| 60 | 0 0 | return join '',map{"$_ "}split //, shift; | ||||
| 61 | } | |||||
| 62 | ||||||