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

Esse conteúdo é antigo

"Novo" Heleno surpreende ala militar do governo

10,jul.2019 - General Augusto Heleno, chefe do GSI, durante audiência na Câmara dos Deputados - FÁTIMA MEIRA/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO
10,jul.2019 - General Augusto Heleno, chefe do GSI, durante audiência na Câmara dos Deputados Imagem: FÁTIMA MEIRA/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO

Tânia Monteiro

Em Brasília

10/11/2019 11h34

O general reformado do Exército Augusto Heleno Ribeiro, de 72 anos, deixou de vez no cabide a farda de militar de bastidor. Na semana ada, seu estilo político agressivo ficou mais em evidência e Heleno virou figura em ascensão do bolsonarismo nas redes sociais. A nova postura do ministro-chefe do Gabinete de Segurança Institucional (GSI) surpreendeu antigos companheiros de quartel, que sempre o consideraram um nome da estratégia, do consenso e da moderação.

Ao aparecer ao lado do então candidato à Presidência Jair Bolsonaro, em 2018, Heleno ajudou a vencer a resistência ao nome do ex-capitão nas Forças Armadas. Os oficiais refratários a Bolsonaro avaliaram que o general poderia segurar possíveis rompantes do presidente.

Nos últimos dias, porém, Heleno ou a ocupar a linha de frente da guerra contra a imprensa e a esquerda, alimentada pelo bolsonarismo. O último embate o deixou exposto a críticas, inclusive da caserna. No último dia 31, em entrevista ao Estado, o general comentou a defesa feita pelo deputado Eduardo Bolsonaro (PSL-SP), filho do presidente, de um "novo AI-5" para conter eventuais distúrbios de rua. As declarações levaram Heleno a ter que se explicar na Câmara.

Decretado em 13 de dezembro de 1968, o Ato Institucional n.º 5 foi a mais dura medida da ditadura militar (1964-1985). Autorizava o chefe do Executivo, sem apreciação judicial, a fechar o Congresso, intervir nos estados e municípios, cassar mandatos de parlamentares, retirar direitos políticos de qualquer cidadão e suspender a garantia de direitos como o habeas corpus.

Heleno teve de se explicar. Na Câmara, disse que jamais pensou em resgatar o AI-5, mas adotou um tom agressivo com deputados da oposição em audiência na Comissão de Integração Nacional e partiu para ataques nas mídias sociais. Criticado pela atitude radical, Heleno não recebeu apoio público de nenhum nome de destaque das Forças Armadas nem do presidente.

No Planalto, há quem diga que sua postura está relacionada à sobrevivência política em um governo com alto grau de belicosidade. Foi isso que levou o ministro do GSI a se reinventar, mais uma vez.

Oficiais-generais da ativa e da reserva receberam com preocupação o comportamento do companheiro, que é querido e respeitado na área. Consideram que Heleno "exagerou" e "perdeu o tom" ao partir para o enfrentamento político, ao estilo dos filhos do presidente. A avaliação é a de que o ministro foi "engolido" pela guerra palaciana ao se associar à militância, e dá sinais de esgotamento na missão de seguir cada o de Bolsonaro. A sugestão é que ele deveria se preservar em nome da biografia.

Na redemocratização, Heleno construiu um perfil de general de boa relação com a imprensa. Ao comandar o Centro de Comunicação do Exército, foi reconhecido pela melhoria da imagem do Exército, afetada pelo período militar. O general soube usar a mídia a favor da Força Terrestre, abrindo os quartéis e mostrando o trabalho para o público externo, aproximando-a da sociedade. Repetiu o gesto quando foi comandante militar da Missão das Nações Unidas para a Estabilização no Haiti (Minustah) e chefiou o Comando Militar da Amazônia. Foi na Amazônia que Heleno entrou em confronto com a esquerda. Ele classificou a política indigenista do governo de Luiz Inácio Lula da Silva como "lamentável, para não dizer caótica".

Confronto

Até o meio do ano, Heleno usava pouco as mídias sociais. Em agosto, abriu conta no Twitter. Já alcançou 230 mil seguidores, 20 mil a mais que o guru bolsonarista Olavo de Carvalho, que tem 210 mil, e quase empatando com o presidente da Câmara, Rodrigo Maia (DEM-RJ). O deputado tem 234 mil seguidores.

Após declaração sobre o AI-5, Heleno foi chamado por Maia de "auxiliar do radicalismo do Olavo". Em reação, o general subiu o tom nas postagens contra a imprensa.

Também durante a audiência na Câmara, na semana ada, Heleno teve de responder por outro momento vivido no centro do poder. Em 1977, o capitão recém-promovido assumiu a função de ajudante de ordens do então ministro do Exército, Sylvio Frota, período que marcou sua vida.

Defensor fervoroso dos ideais do regime, Frota discordava da distensão proposta pelo presidente Ernesto Geisel, a quem sonhava suceder. Acabou demitido em 12 de outubro de 1977. O grupo de Frota ensaiou um levante. Mais de cem oficiais foram exonerados e transferidos para quartéis distantes de Brasília. Heleno sempre minimizou sua participação no episódio, que já classificou como "irrelevante". Lembra que tinha apenas 30 anos na época.

As informações são do jornal O Estado de S. Paulo.

Ouça o podcast Baixo Clero com análises políticas de blogueiros do UOL.

Os podcasts do UOL estão disponíveis no Spotify, Apple Podcasts, Google Podcasts e outras plataformas de áudio.