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

STM punirá militares que cometeram crimes no 8/1, diz futuro presidente

O ministro Francisco Joseli Parente Camelo, do STM (Superior Tribunal Militar), durante sessão do tribunal - Reprodução / STM
O ministro Francisco Joseli Parente Camelo, do STM (Superior Tribunal Militar), durante sessão do tribunal Imagem: Reprodução / STM

Do UOL, em Brasília

10/02/2023 04h00

O ministro Francisco Joseli Parente Camelo, futuro presidente do STM (Superior Tribunal Militar), afirmou ao UOL que a Corte atuará "com toda a Justiça" caso receba processos envolvendo militares acusados de participação ou omissão nos atos de 8 de janeiro, e que, se provado o crime, o militar será punido.

Nós julgaremos com toda a Justiça, com todo o pleno direito à defesa e ao contraditório, e se tiver realmente cometido crimes, se chegar a nós, será punido"
Francisco Joseli Parente Camelo

"Essa decisão (se os casos ficam no STM ou no STF) ainda não saiu, mas acredito que muita coisa tenha condições de ir para o Superior Tribunal Militar", completou.

Camelo assume o comando do tribunal em março e esteve quarta-feira (8) no STF (Supremo Tribunal Federal) para uma reunião com a ministra Rosa Weber.

Dentro do Supremo, ainda é discutido se eventuais ações contra militares devem ser direcionadas ao STM ou permanecerem com os processos envolvendo civis, que estão sob relatoria de Alexandre de Moraes. É esperado que o ministro busque concentrar os casos.

Atualmente, não há denúncias prestadas contra militares em tramitação no STM, que tem competência sobre casos envolvendo integrantes das Forças Armadas.

O Ministério Público Militar abriu oito apurações preliminares, as chamadas notícias de fato, desde o ataque. Há, ainda, dois inquéritos policiais militares na primeira instância da Justiça Militar, na auditoria militar de Brasília.

Na semana ada, o procurador-geral da Justiça Militar, Antônio Pereira Duarte, disse ao UOL News que não há lentidão na investigação do envolvimento de militares nos atos golpistas.

"As notícias de fato decorrem de investigação direta do próprio Ministério Público Militar. Não há a identificação de militares, a não ser que estivessem à paisana, durante estes atos. Portanto, a investigação se torna muito mais complexa", disse.

Novo presidente do STM toma posse no mês que vem. Francisco Camelo esteve no STF para uma reunião de cortesia com a presidente do tribunal, ministra Rosa Weber. O encontro serviu para a entrega do convite para a posse do magistrado, que assume o STM no dia 16 de março. Rosa teria dito que compareceria à cerimônia.

Piloto de Lula e Dilma. Francisco Joseli Parente Camelo é tenente-brigadeiro do Ar e integrante do STM desde 2015, por indicação da então presidente Dilma Rousseff (PT).

Antes de ser ministro, ele pilotou o avião presidencial durante os oito anos do governo Lula e por mais cinco na gestão de Dilma.