;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Felipe Moura Brasil

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

A prisão do blogueiro de crachá

Colunista do UOL

24/10/2021 19h08

"Dinheiro alheio é teu cu", tuitou em 6 de novembro de 2019, em reação ao meu artigo "O 'conservadorismo' do dinheiro alheio", publicado em 25 de outubro, o blogueiro de crachá Allan dos Santos, que, como se provou, teve até agens de avião e diárias de hotel pagas com o mesmo fundo partidário (ou seja, dinheiro alheio) que bancou o evento propagandeado como "conservador", mas tão somente bolsonarista, ironizado no artigo.

Na reportagem "Os blogueiros de crachá", publicada duas semanas antes, eu já havia exemplificado parte da vida de luxo de Allan em Brasília e também seu método de falsear a realidade para atacar jornalistas, sendo auxiliado em seu blog, agora encerrado, pela militância remunerada em gabinete parlamentar de aliado da família Bolsonaro.

Quase dois anos depois, em 16 de setembro de 2021, o blogueiro que zarpou para os EUA após virar alvo de investigações e que corre risco de deportação, porque estaria ilegalmente no país desde fevereiro, teve sua prisão preventiva pedida pela delegada Denisse Ribeiro, da Polícia Federal, e aceita pelo ministro Alexandre de Moraes, do STF. Moraes também determinou bloqueio de contas bancárias e procedimentos para a realização do pedido de extradição, como veio à tona na terceira semana de outubro.

Na representação, Ribeiro descreveu precisamente como "sem compromisso com a verdade" e "sem compromisso com a consistência do discurso ao longo do tempo" o método de transmissão da suposta organização criminosa da qual Allan, em especial, faria parte "mais por motivos venais, utilizando o caminho do agravamento da polarização político-ideológica com o principal objetivo de 'fazer dinheiro'".

Em 31 de maio de 2020, alertei ainda no Twitter: "Uma das formas de lavagem de dinheiro expostas na série Ozark é de notas ilícitas obtidas com tráfico de drogas que são distribuídas a cúmplices para que joguem e percam no cassino do lavador do cartel. Doações a canais de YouTube suspeitos também devem ser apuradas".

No caso de Allan - além da "habitualidade" em "praticar crimes" que "incidiriam em tipos penais caracterizados como ameaça, crimes contra a honra e incitação à prática de crimes, bem como o tipo penal decorrente de integrar organização criminosa" -, a delegada da PF viu indícios de lavagem de dinheiro justamente em doações a seu canal. Segundo a investigação, "de 13 de abril a 13 de maio de 2020, houve 1.581 transações, das quais 649 sem recebimento da identificação de F", de modo que foi ordenado às plataformas envolvidas que revelassem IPs e dados cadastrais de cada doador.

Chamaram mais atenção de Ribeiro rees específicos de três servidores públicos que, somados, alcançam R$ 70.850 - foram 27 doações, no total de R$ 40.350; mais 31, que contabilizam R$ 15.500; e mais três, que atingem R$ 15.000. Outra servidora, ligada ao BNDES, doou diretamente na conta do sócio de Allan, Ítalo Lorenzon, ao menos R$ 70.000, quantia oficializada por meio de mensagem. Nomes e números estão indicados na página 11 da decisão de julho de Moraes, que abriu investigações a partir das provas coletadas pela PF no âmbito do extinto inquérito dos atos antidemocráticos.

"A quantidade de doações, o valor reado por servidores públicos, a forma do ree, a preocupação demonstrada (...) quanto à exigência de indicação de F" indicam "a necessidade de compreender os fatos e as circunstâncias", defendeu na ocasião a delegada, disposta a verificar se a monetização decorre apenas de títulos sensacionalistas, conteúdos reacionários, desinformação rasteira e alegadas condutas criminosas, ou se também é turbinada por esquemas ilícitos atrelados à máquina estatal.

De acordo com o pedido de prisão, Allan atua "nas redes sociais e na articulação com agentes públicos e políticos nacionais e estrangeiros, sempre utilizando a aparência de cobertura jornalística para validar seu discurso, embora os autos apontem para o rompimento da linha que separa o discurso radical da prática de crimes". O relatório de análise de polícia judiciária apontou também "a reiteração de condutas" do blogueiro.

Até o Google, em batalha jurídica, pediu a condenação de Allan por litigância de má-fé, acusando "postura deliberada e sistemática de falsear a verdade para induzir percepções erradas no Poder Judiciário e/ou se valer do processo para fins de agitação midiática".

O reacionarismo aloprado e oportunista é lucrativo, enquanto reações institucionais e consequências legais não atrapalham os planos de seus líderes e adeptos. Jair Bolsonaro, por exemplo, foi domado pelo STF e pelo Centrão, que souberam explorar o pavor do presidente de que seus filhos e ele próprio sejam presos por rachadinhas, picaretagens virtuais ou crimes apontados pela I da Pandemia. Depois da conversa telefônica com Moraes, Bolsonaro deixou de atacar o Supremo e focou sua estupidez em dribles eleitoreiros no teto de gastos e em bravatas contra vacinas anti-Covid, como a mentira infame sobre causarem Aids. Mas talvez Eduardo ainda fique à disposição dos blogueiros de crachá para ajudar em contatos com empresários, boquinhas em gabinete ou mudança de país.

Enquanto isso, o verdadeiro jornalismo independente continua muito bem, obrigado, denunciando mamatas, distinguindo conceitos, antecipando cenários, apontando caminhos e, sem motivos venais nem xingamentos anais, incomodando impostores.

***

PS: Para votar em mim na final do Prêmio iBest de Melhor do Brasil em Política, basta ar este link e confirmar o voto. Concorro sozinho com dois grupos de comunicação nos TOP 3 e agradeço muito a todos pelo reconhecimento do meu trabalho. Obrigado.