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

Julgamento do pedido de impeachment de Witzel é marcado para 30 de abril

Wilson Witzel será julgado por Tribunal Misto - Flickr/Governo do Estado do Rio de Janeiro
Wilson Witzel será julgado por Tribunal Misto Imagem: Flickr/Governo do Estado do Rio de Janeiro

Do UOL, em São Paulo

21/04/2021 19h40

O julgamento do pedido de impeachment do governador afastado do Rio, Wilson Witzel (PSC), foi marcado para dia 30 de abril. A decisão é do desembargador Henrique Carlos de Andrade Figueira, presidente do TJ-RJ (Tribunal de Justiça do Estado do Rio de Janeiro), e do TEM (Tribunal Especial Misto).

O relator do processo, deputado estadual Waldeck Carneiro (PT), protocolará o relatório final até o dia 29 de abril e dará seu voto na sessão de julgamento do TEM.

O prazo das alegações finais da Defesa do governador afastado venceria hoje (21), até 23h59, mas houve uma solicitação de prorrogação de cinco dias, aceita pelo Tribunal. Assim, poderão ser apresentadas até dia 26, às 23h59.

"Os advogados atuais de Witzel, que não estavam no início do processo, solicitaram cinco dias a mais de prazo para suas alegações finais e o presidente do TEM agiu com prudência aceitando essa dilatação para que não paire nenhuma dúvida quanto ao mais amplo direito de defesa. Meu voto vai levar em conta tudo o que li a respeito deste processo: os documentos, as oitivas e as alegações finais da acusação e da defesa", explicou Waldeck.

O governador afastado foi denunciado pelo MPF (Ministério Público Federal) e se tornou réu pelos crimes de corrupção iva e lavagem de dinheiro. Ele é acusado de envolvimento em desvios de recursos na área da saúde do Rio. O suposto envolvimento de Witzel foi apontado na delação do ex-secretário de Saúde Edmar Santos.

Os dez integrantes do Tribunal Misto que julgará o processo de impeachment do governador Wilson Witzel têm perfis diversos de atuação —entre parlamentares e desembargadores, são seis homens e quatro mulheres.

Para se salvar do impeachment, Witzel precisa de 4 dos 10 votos do Tribunal Especial Misto, que é composto por 5 deputados e 5 desembargadores. Com 7 votos contrários, ou dois terços, Witzel perde o cargo.