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

Rede entra com ação no STF para anular perdão de Bolsonaro a Silveira

A Rede argumenta que o decreto deve ser anulado porque o processo de Daniel Silveira ainda não transitou em julgado - Reprodução/Twitter
A Rede argumenta que o decreto deve ser anulado porque o processo de Daniel Silveira ainda não transitou em julgado Imagem: Reprodução/Twitter

Weudson Ribeiro e Sara Baptista

Colaboração para o UOL, em Brasília, e do UOL, em São Paulo

22/04/2022 10h17

A Rede Sustentabilidade entrou com ação no STF (Supremo Tribunal Federal) questionando o perdão que o presidente Jair Bolsonaro concedeu ao deputado federal Daniel Silveira (PTB-RJ). Leia a íntegra do pedido aqui.

Na ação protocolada ontem, a Rede argumenta que o decreto deve ser anulado porque o processo de Daniel Silveira ainda não transitou em julgado, ou seja, não foram esgotados todos os recursos possíveis.

"Ora, como conceder graça constitucional, extinguindo os efeitos da punibilidade penal, quando ainda não há pena a ser cumprida, considerando ainda não ter ocorrido o trânsito em julgado?", questiona o partido no documento.

Para a sigla, o decreto também viola os preceitos da impessoalidade e da moralidade, uma vez que Silveira e Bolsonaro têm uma relação próxima.

O desvio de finalidade, portanto, é patente: o ato que concedeu a graça no dia seguinte ao resultado do julgamento não foi praticado visando ao interesse público, em respeito aos princípios constitucionais da impessoalidade e da moralidade, mas sim visando ao interesse pessoal do Sr. Jair Messias Bolsonaro, o qual se encontra nas vésperas de disputar uma reeleição ao Palácio do Planalto.
ADPF protocolada pela Rede Sustentabilidade

A Rede argumenta que é necessário agir com rapidez no caso e por isso requer que o relator conceda uma medida liminar antes do julgamento da ADPF em si. A ação já está registrada no sistema do STF, mas ainda não foi distribuída para um ministro.

Perdão foi concedido um dia depois da condenação

Daniel Silveira foi condenado pelo plenário do STF a 8 anos e 9 meses de prisão na última quarta-feira (20) por ameaças a ministros da Corte. No dia seguinte, Bolsonaro concedeu a ele o instituto da graça, uma espécie de indulto individual.

Bolsonaro justificou seu ato afirmando que a sociedade "se encontra em legítima comoção em vista da condenação" de Daniel Silveira, que estaria "resguardado pela inviolabilidade de opinião deferida pela Constituição".

Ele também afirmou que o perdão será concedido independente dos recursos que o parlamentar venha a apresentar. Silveira ainda pode questionar aspectos dos votos dos ministros.

Graça é prerrogativa presidencial

Especialistas ouvidos pelo UOL concordam que o decreto de Bolsonaro está dentro das prerrogativas presidenciais. No entanto, há divergências sobre se ele poderia ter sido usado neste momento, uma vez que o processo não transitou em julgado.

O presidente do Senado, Rodrigo Pacheco, que é advogado e presidiu a OAB (Ordem dos Advogados do Brasil) de Minas Gerais, afirmou ontem que o decreto é constitucional e não poderia ser questionado. Ele, porém, disse que mesmo assim Silveira continuará inelegível.

Pacheco também sustentou que o ato do presidente pode fragilizar a Justiça Penal e suas instituições. "No caso concreto, a possível motivação político-pessoal da decretação do benefício, embora possa fragilizar a Justiça Penal e suas instituições, não é capaz de invalidar o ato que decorre do poder constitucional discricionário do chefe do Executivo."

  • No UOL News, a deputada Sâmia Bomfim explica ação do PSOL sobre o decreto, e os colunistas Tales Faria e Alberto Bombig analisam a decisão de Bolsonaro: