;(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

Leonardo Sakamoto

OPINIÃO

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

Bolsonaro culpa Bruno e Dom Phillips pelo próprio desaparecimento no AM

Jornalista Dom Phillips e indigenista Bruno Araújo - Divulgação
Jornalista Dom Phillips e indigenista Bruno Araújo Imagem: Divulgação

Colunista do UOL

07/06/2022 12h27

Receba os novos posts desta coluna no seu e-mail

Email inválido

Jair Bolsonaro responsabilizou o indigenista Bruno Araújo Pereira e o jornalista inglês Dom Phillips por seu próprio desaparecimento, em entrevista ao SBT News, nesta terça (7). "Realmente... Duas pessoas apenas, em um barco, em uma região daquela, né, completamente selvagem, é uma aventura que não é recomendável que se faça. Tudo pode acontecer. Pode ser um acidente, pode ser que eles tenham sido executados", afirmou.

Isso é um descaramento sem tamanho. Não se sabe até agora a causa do sumiço, mas o que sabemos bem é que foi o seu governo que deu um salvo-conduto a qualquer grupo que atropele as políticas de proteção ao meio ambiente e aos povos e comunidades tradicionais na Amazônia, tornando a região ainda mais violenta.

Aliás, a apreensão pelo desaparecimento de ambos, desde domingo (5), no Vale do Javari, Estado do Amazonas, é altíssima não só por causa das ameaças contra Bruno, mas também porque fiscais e repórteres, profissionais responsáveis por monitorar o cumprimento da lei e as ações do poder público, são hoje vistos como inimigos a serem abatidos na Amazônia.

Não que os conflitos não existissem antes da chegada do capitão ao poder, mas ele fez questão de jogar gasolina sobre o fogo com suas declarações, que empurraram garimpeiros para dentro de territórios indígenas, protegeram madeireiros e pecuaristas ilegais e grileiros de terra e deram um salvo-conduto a pescadores e caçadores predatórios.

Enquanto isso, sua gestão agiu sistematicamente para enfraquecer a fiscalização da Funai, do Ibama, do ICMBio, tratada como inimigos infiltrados no governo. E a ausência de Estado contribui para que traficantes e outros criminosos operem livremente, tocando o terror.

Bolsonaro também disse na entrevista que "a gente espera e pede a Deus que sejam encontrados brevemente" e garantiu que "as Forças Armadas estão trabalhando com muito afinco na região".

Balela. Quem, inicialmente, estava tocando as buscas eram os próprios indígenas com a ajuda de policiais militares dada a inoperância do poder público federal. O Exército chegou a soltar uma nota bizarra, afirmando que era capaz de fazer as buscas, mas aguardava ordens. Após muita pressão da imprensa, um contingente de forças de segurança foi enviado, mas até agora insuficiente para fazer frente ao desafio. E o tempo corre contra.

Tendo isso em vista, Bolsonaro - visto como ameaça ambiental global - deveria ser a pessoa mais interessada em ver os dois sãos e salvos. E dado ordens para que, neste momento, os céus daquela região da Amazônia estivessem coalhados de helicópteros e aeronaves e os rios e igarapés vasculhados por dezenas de lanchas e embarcações, usando centenas de agentes de segurança.

Porque se algo acontecer com eles, que estavam trabalhando porque o presidente não faz o trabalho dele, Bolsonaro será responsabilizado internacionalmente por isso. No Brasil de Jair, não é ele quem puxa o gatilho, mas é ele quem autoriza, com suas palavras, suas ações e inações, o ato.

E, neste caso, não adianta tentar terceirizar. O seu mimimi pode atingir incautos por aqui, mas vai ser difícil ele impor uma cortina de fumaça global.