line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package Acme::BOPE; |
2
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
|
require 5.005_62; |
4
|
|
|
|
|
|
|
#use strict; |
5
|
|
|
|
|
|
|
#use warnings; |
6
|
|
|
|
|
|
|
|
7
|
|
|
|
|
|
|
our $VERSION = 0.01; |
8
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
|
#use Exporter; |
10
|
|
|
|
|
|
|
# |
11
|
|
|
|
|
|
|
#our @ISA = qw(Exporter); |
12
|
|
|
|
|
|
|
#our @EXPORT = qw(canta_hino fato); |
13
|
|
|
|
|
|
|
|
14
|
|
|
|
|
|
|
my @ignoradas = ( |
15
|
|
|
|
|
|
|
"[dn]?[oa][s]?" , # o, a, os, as, dos, nos, das, nas, no, na, do, da |
16
|
|
|
|
|
|
|
"[nd]?e(?:ss|l)[ae]s?", # ele, ela, dele, dela, desse, dessa nesse, nessa |
17
|
|
|
|
|
|
|
"s(?:eu|ua)s?" , # seu, sua |
18
|
|
|
|
|
|
|
"(?:uma?|eu)" , # uma, eu |
19
|
|
|
|
|
|
|
"com" , |
20
|
|
|
|
|
|
|
"sem" , |
21
|
|
|
|
|
|
|
"porra[?!]*" , |
22
|
|
|
|
|
|
|
"merda[?!]*" , |
23
|
|
|
|
|
|
|
"viado[?!]*" , |
24
|
|
|
|
|
|
|
); |
25
|
|
|
|
|
|
|
|
26
|
|
|
|
|
|
|
#my $ignoradas = join "|", @ignoradas; |
27
|
|
|
|
|
|
|
|
28
|
1
|
|
|
1
|
|
50475
|
use Filter::Simple; |
|
1
|
|
|
|
|
548039
|
|
|
1
|
|
|
|
|
8
|
|
29
|
|
|
|
|
|
|
|
30
|
|
|
|
|
|
|
FILTER_ONLY |
31
|
|
|
|
|
|
|
all => sub { |
32
|
|
|
|
|
|
|
my $package = shift; |
33
|
|
|
|
|
|
|
my %par = @_; |
34
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
if ( $par{'DEBUG'} ) { |
36
|
|
|
|
|
|
|
filter($_); |
37
|
|
|
|
|
|
|
Perl::Tidy::perltidy(source => \$_, destination => \$_) |
38
|
|
|
|
|
|
|
if eval "require Perl::Tidy"; |
39
|
|
|
|
|
|
|
print; |
40
|
|
|
|
|
|
|
} |
41
|
|
|
|
|
|
|
# my $DEBUG = $par{DEBUG} if $par{DEBUG}; |
42
|
|
|
|
|
|
|
# return unless $DEBUG; |
43
|
|
|
|
|
|
|
# filter($_); |
44
|
|
|
|
|
|
|
# Perl::Tidy::perltidy(source => \$_, destination => \$_) |
45
|
|
|
|
|
|
|
# if eval "require Perl::Tidy"; |
46
|
|
|
|
|
|
|
# print if $DEBUG; |
47
|
|
|
|
|
|
|
# exit; |
48
|
|
|
|
|
|
|
}, |
49
|
|
|
|
|
|
|
code_no_comments => \&filter; |
50
|
|
|
|
|
|
|
sub filter { |
51
|
|
|
|
|
|
|
|
52
|
1
|
|
|
1
|
0
|
2427
|
$_ = "\$senhor = \$\$_;$/" . $_; |
53
|
1
|
|
|
|
|
5
|
$_ = "\$| = 1;$/" . $_; |
54
|
1
|
|
|
|
|
4
|
s#pelot[ãa]o, cantar hino#print Acme::BOPE::canta_hino#gi; |
55
|
1
|
|
|
|
|
3
|
s#Capit[ãa]o Nascimento#print Acme::BOPE::fato#gi; # mudar por frase legal |
56
|
|
|
|
|
|
|
|
57
|
1
|
|
|
|
|
16
|
s{\b(?:naum|não|nao|nunca|jamais)\s+(?:ser(?:á|ão)|é|eh)\b}{ne}gi; |
58
|
1
|
|
|
|
|
6
|
s{\b(?:naum|não|nao|nunca|jamais)\b}{not}gi; |
59
|
1
|
|
|
|
|
5
|
s{\bser(?:á|ão|a|ah|ao)\b}{eq}gi; |
60
|
1
|
|
|
|
|
4
|
s{\b(?:é|eh)\b}{=}gi; |
61
|
1
|
|
|
|
|
6
|
s{\bfor\b}{eq}gi; |
62
|
|
|
|
|
|
|
|
63
|
1
|
|
|
|
|
5
|
s{\bvale(?:rá)?\b}{==}gi; |
64
|
|
|
|
|
|
|
|
65
|
1
|
|
|
|
|
3
|
s{\bvai pra guerra\b}{system}gi; |
66
|
|
|
|
|
|
|
|
67
|
1
|
|
|
|
|
5
|
s#\bse\s+(.*?)\s+ent[ãa]o\b#if($1){\n#gi; |
68
|
1
|
|
|
|
|
4
|
s#\bent[ãa]o\b#\{#gi; |
69
|
1
|
|
|
|
|
4
|
s#\bfaz isso aqui[:]?\b#\{#gi; |
70
|
1
|
|
|
|
|
4
|
s#\bsen[ãa]o\b#}else{\n#gi; |
71
|
1
|
|
|
|
|
4
|
s#\bestamos entendidos[?!]*\b#}#gi; |
72
|
1
|
|
|
|
|
3
|
s#\bos? senhor(?:es)? est(?:[aã]o|[aá]) fazendo (?:o )?seu instrutor muito feliz(?:...)#}#gi; |
73
|
1
|
|
|
|
|
7
|
s{\bfala(?: agora)?[!:]*}{print}gi; |
74
|
1
|
|
|
|
|
6
|
s{\bgrita[!:]*\b}{print}gi; |
75
|
1
|
|
|
|
|
4
|
s{\bvai dar merda,?}{warn}gi; |
76
|
1
|
|
|
|
|
3
|
s{ |
77
|
|
|
|
|
|
|
\b(?:v(?:ou|ai)\s+)?gritar\s+(?:em|n[oa]|ao?) (.*?): |
78
|
|
|
|
|
|
|
} |
79
|
|
|
|
|
|
|
{ |
80
|
0
|
|
|
|
|
0
|
(my $file = $1) =~ s/\W/_/g; |
81
|
0
|
|
|
|
|
0
|
$file =~ s/^_+|_+$//g; |
82
|
0
|
|
|
|
|
0
|
my $fh = uc $file; |
83
|
0
|
|
|
|
|
0
|
"open $fh, \">>$file\"; |
84
|
|
|
|
|
|
|
print \{$fh\}" |
85
|
|
|
|
|
|
|
}giex; |
86
|
|
|
|
|
|
|
|
87
|
1
|
|
|
|
|
13
|
s{\bchega[!]*\b}{last}gi; |
88
|
1
|
|
|
|
|
12
|
s{\bpára[!]*\b}{last}gi; |
89
|
|
|
|
|
|
|
|
90
|
1
|
|
|
|
|
5
|
s#\bpara\s+(.*?)\s+(?:ent[aã]o|,)fa[cç]a\b#for($1){#gi; |
91
|
1
|
|
|
|
|
3
|
s#\benquanto\s+(.*?)\s*,#while($1){\n#gi; |
92
|
|
|
|
|
|
|
|
93
|
1
|
|
|
|
|
4
|
s{\bfati(?:a|ou)\b}{split}gi; |
94
|
1
|
|
|
|
|
4
|
s{\bpass(?:a|ou)\b}{next}gi; |
95
|
|
|
|
|
|
|
|
96
|
1
|
|
|
|
|
4
|
s{\bpede pra sair\b}{die}gi; |
97
|
1
|
|
|
|
|
6
|
s{\b(?:eu )?desisto\b}{exit}gi; |
98
|
1
|
|
|
|
|
4
|
s{\bdesistiu\b}{= undef}gi; |
99
|
1
|
|
|
|
|
3
|
s{\bbota na conta do papa\b}{exit}gi; |
100
|
|
|
|
|
|
|
|
101
|
1
|
|
|
|
|
3
|
s{\be\b}{and}gi; |
102
|
1
|
|
|
|
|
4
|
s{\b(?:ent[ãa]o\s+)?senta o dedo nessa porra\b}{print "Caveira meu capitao!"}gi; |
103
|
|
|
|
|
|
|
|
104
|
|
|
|
|
|
|
# variaveis |
105
|
1
|
|
|
1
|
|
2753
|
no warnings; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
86
|
|
106
|
1
|
|
|
|
|
3
|
s#\bsenhor(?:\s+(\d{2,}))?,#\$senhor = \\\$_$1;\n#gi; |
107
|
1
|
|
|
1
|
|
6
|
use warnings; |
|
1
|
|
|
|
|
15
|
|
|
1
|
|
|
|
|
804
|
|
108
|
1
|
0
|
|
|
|
7
|
s{\b(?:senhor|o)\s+(\d{2,})\b}{sprintf"\$_%s ", defined $1?$1:""}gie; |
|
0
|
|
|
|
|
0
|
|
109
|
1
|
|
|
|
|
12
|
s{([^\$])senhor|voc[êe]}{$1\$\$senhor}gi; |
110
|
|
|
|
|
|
|
|
111
|
|
|
|
|
|
|
# perguntas |
112
|
1
|
|
|
|
|
3
|
s#(100\s*%\s+(\d{2,})?\?+)# |
113
|
|
|
|
|
|
|
print "$1"; |
114
|
|
|
|
|
|
|
chomp(\$_$2 = <>); |
115
|
|
|
|
|
|
|
\$_$2 =~ /^100%|sim|s/ &gi; |
116
|
1
|
|
|
|
|
14
|
s# |
117
|
|
|
|
|
|
|
((?:a?onde (?:es)t[aá]|cad[êe])\s+[oa]s?\s+(\w+)[?!]+) |
118
|
|
|
|
|
|
|
# |
119
|
0
|
|
|
|
|
0
|
my $var; |
120
|
0
|
|
|
|
|
0
|
($var = $2) =~ s/\W/_/g; |
121
|
0
|
|
|
|
|
0
|
$var = lc($var); |
122
|
0
|
|
|
|
|
0
|
qq: |
123
|
|
|
|
|
|
|
print "$1"; |
124
|
|
|
|
|
|
|
chomp(\$$var = <>); |
125
|
|
|
|
|
|
|
print "0" . (int(rand 9) + 1) . ", pega a vassoura!\$/"; |
126
|
|
|
|
|
|
|
:; |
127
|
|
|
|
|
|
|
#gixe; |
128
|
|
|
|
|
|
|
|
129
|
1
|
|
|
|
|
4
|
my @quotes = m#"(.*?)"#gsm; |
130
|
1
|
|
|
|
|
11
|
s#"(.*?)"#sprintf qq/"%d"/, my $i++#gsme; |
|
0
|
|
|
|
|
0
|
|
131
|
|
|
|
|
|
|
|
132
|
|
|
|
|
|
|
# palavras que são ignoradas dentro do código |
133
|
1
|
|
|
|
|
4
|
foreach my $ignora (@ignoradas){ |
134
|
9
|
|
|
|
|
198
|
s{\b$ignora\b}{}gi; |
135
|
|
|
|
|
|
|
} |
136
|
|
|
|
|
|
|
|
137
|
1
|
|
|
|
|
16
|
s#(?:(?:OK)?\s*[!?]+)#;#gi; |
138
|
|
|
|
|
|
|
|
139
|
1
|
|
|
|
|
5
|
s#"(\d+)"#"$quotes[$1]"#g; |
140
|
|
|
|
|
|
|
|
141
|
|
|
|
|
|
|
}; |
142
|
|
|
|
|
|
|
|
143
|
|
|
|
|
|
|
# hinos do bope: |
144
|
|
|
|
|
|
|
sub canta_hino { |
145
|
0
|
|
|
0
|
0
|
|
my $self = shift; |
146
|
0
|
|
|
|
|
|
my @hinos = ( |
147
|
|
|
|
|
|
|
'O interrogatório é muito fácil de fazer/pega o favelado e dá porrada até doer/O interrogatório é muito fácil de acabar/pega o bandido e dá porrada até matar', |
148
|
|
|
|
|
|
|
'Esse sangue é muito bom/ já provei não tem perigo/é melhor do que café/é o sangue do inimigo', |
149
|
|
|
|
|
|
|
'O quintal do inimigo/não se varre com vassoura/se varre com granada/com fuzil, metralhadora', |
150
|
|
|
|
|
|
|
'São os homens da caveira/do bornal e do cantil/Sua força combativa/está na ponta do fuzil', |
151
|
|
|
|
|
|
|
'Cachorro latindo/Criança chorando/Vagabundo vazando/É o BOPE chegando', |
152
|
|
|
|
|
|
|
'Tropa de elite/osso duro de roer/Pega um, pega geral/também vai pegar você', |
153
|
|
|
|
|
|
|
'Homem de preto, qual é sua missão?/Entrar pela favela e deixar corpo no chão/Homem de preto, o que é que você faz?/Eu faço coisas que assustam o satanás', |
154
|
|
|
|
|
|
|
); |
155
|
0
|
|
|
|
|
|
$hinos[int(rand(@hinos))]; |
156
|
|
|
|
|
|
|
|
157
|
|
|
|
|
|
|
} |
158
|
|
|
|
|
|
|
|
159
|
|
|
|
|
|
|
# frases sobre o cap.nascimento |
160
|
|
|
|
|
|
|
sub fato { |
161
|
0
|
|
|
0
|
0
|
|
my $self = shift; |
162
|
0
|
|
|
|
|
|
my @fatos = ( |
163
|
|
|
|
|
|
|
'Deus disse que iria fazer o mundo em 7 anos. Capitão Nascimento disse bem alto: "O senhor é um fanfarrão, Sr. 01. O senhor tem 7 dias, sr. 01! SETE DIAS!"', |
164
|
|
|
|
|
|
|
'Quando vivia no paraíso, Capitão Nascimento forçou Eva a comer a maçã, dizendo: "Come a porra da maçã 02! Tá com nojinho, 02? Come tudo, porra!"', |
165
|
|
|
|
|
|
|
'A farda do Capitão Nascimento é preta porque nenhuma outra cor quis ficar perto dele.', |
166
|
|
|
|
|
|
|
'O Capeta queria entrar no BOPE, mas o Capitão Nascimento fez ele desistir apenas dizendo: "666, o senhor é o novo xerife!"', |
167
|
|
|
|
|
|
|
'O Capeta vendeu a alma para o Capitão Nascimento.', |
168
|
|
|
|
|
|
|
'Capitão Nascimento não sai de lugar nenhum devendo a ninguém, sempre põe na conta do Papa.', |
169
|
|
|
|
|
|
|
'Quando Deus disse "Que se faça a luz!". Capitão Nascimento falou "Tá de sacanagem, Sr. 01? Tá com medinho do escuro, Sr. 01?"', |
170
|
|
|
|
|
|
|
'Quando Deus resolveu criar o Universo foi pedir permissão ao Capitão Nascimento e ele respondeu: "É 100%? Então senta o dedo nessa porra!"', |
171
|
|
|
|
|
|
|
'A roupa do Super-Homem era preta até o Capitão Nascimento dizer: "Tira essa roupa preta que você não é caveira, você é MOLEQUE, ouviu? MO-LE-QUE!"', |
172
|
|
|
|
|
|
|
'Capitão Nascimento trabalhou como negociador da polícia. Seu trabalho era ligar para os seqüestradores e dizer: "Pede pra sair, porra!"', |
173
|
|
|
|
|
|
|
'Quantos Capitães Nascimento são necessários para trocar uma lâmpada? Nenhum, Capitão Nascimento também mata no escuro.', |
174
|
|
|
|
|
|
|
'Capitão Nascimento não lê livros, ele os coloca no saco até conseguir toda a informação que precisa.', |
175
|
|
|
|
|
|
|
'Uma vez ele esqueçeu onde deixou as chaves do seu caveirão. Ele se colocou no saco por 40 segundos e lembrou!', |
176
|
|
|
|
|
|
|
'Não existiam mesmo armas de destruição em massa no Iraque. Capitão Nascimento mora no Rio de Janeiro.', |
177
|
|
|
|
|
|
|
'Porque você acha que não existe terrorismo no Brasil?', |
178
|
|
|
|
|
|
|
'Nunca, em nenhuma hipotese, durma na frente do Capitão Nascimento. Ele vai pedir pra você fazer a bondade de segurar a granada.', |
179
|
|
|
|
|
|
|
'Em um de seus mandamentos, Deus disse: "Não Matarás". O Capitão Nascimento disse para Deus: "Tá de sacanagem, Sr. 01? Cê tá de sacanagem comigo, Sr. 01?"', |
180
|
|
|
|
|
|
|
'Não houve impeachment no Governo Collor. O Capitão Nascimento chegou no Palácio do Planalto e disse para o Collor:: "Pede prá sair!! Pede prá sair!!"', |
181
|
|
|
|
|
|
|
'No dia de São Cosme e São Damião, o Capitão Nascimento só pegava saco de doce que tivesse chiclete de Caveira.', |
182
|
|
|
|
|
|
|
'Capitão Nascimento fez com que o Seu Madruga pagasse o aluguel - todos os 14 meses atrasados - e adiantasse mais dois.', |
183
|
|
|
|
|
|
|
'Capitão Nascimento foi ao programa do Faustão e fez com que ele falasse enquanto o faustão ficava calado.', |
184
|
|
|
|
|
|
|
'Capitão Nascimento gritou no centro de Buenos Aires que Pelé é o rei do futebol e todos os argentinos concordaram.', |
185
|
|
|
|
|
|
|
'Capitão Nascimento fez um operador de telemarketing dizer: "desculpa, juro que não ligo mais".', |
186
|
|
|
|
|
|
|
'Capitão Nascimento resolve o travamento do Windows colocando o PC no saco.', |
187
|
|
|
|
|
|
|
'Capitão Nascimento disse pra Will Smith depois de ver "MIB": O senhor é um fanfarrão! Homens de Preto é o caralho, só o BOPE usa preto! Seu viado!', |
188
|
|
|
|
|
|
|
'Capitão Nascimento dorme com um travesseiro debaixo de uma arma.', |
189
|
|
|
|
|
|
|
'Capitão Nascimento sabe exatamente onde está Carmen Sandiego', |
190
|
|
|
|
|
|
|
'Principais causas de morte no Brasil: 1. Ataque do coração, 2. Cap. Nascimento, 3.Câncer; mas a opção 1 é maior porque a maioria dos bandidos morre do coração quando vêem o capitão.', |
191
|
|
|
|
|
|
|
); |
192
|
0
|
|
|
|
|
|
print $fatos[int(rand(@fatos))]; |
193
|
|
|
|
|
|
|
} |
194
|
|
|
|
|
|
|
|
195
|
|
|
|
|
|
|
42; |
196
|
|
|
|
|
|
|
|
197
|
|
|
|
|
|
|
__END__ |