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

Quem é Rodrigo Pacheco, o novo presidente do Senado

Pacheco assume a presidência do Senado com apoio de Bolsonaro, Alcolumbre e até de partidos de esquerda - Waldemir Barreto/Agência Senado
Pacheco assume a presidência do Senado com apoio de Bolsonaro, Alcolumbre e até de partidos de esquerda Imagem: Waldemir Barreto/Agência Senado

01/02/2021 19h34Atualizada em 02/02/2021 07h32

O senador Rodrigo Pacheco (DEM-MG) foi eleito nesta segunda (1/2) o novo presidente do Senado, substituindo David Alcolumbre (DEM-AP).

Pacheco obteve 57 votos, contra os 21 da senadora Simone Tebet (MDB-MS). Ele chega à liderança da Casa contando tanto com uma declaração pública de "simpatia" do presidente Jair Bolsonaro quanto com o apoio de partidos da oposição, como PT e PDT.

Teve também o apoio de Alcolumbre, que o apresentou como alguém que não criaria problemas para o Planalto e garantiu o apoio de Bolsonaro ao candidato. Pacheco já viajou bastante com o presidente: integrou a comitiva presidencial em viagens ao Japão, China, Emirados Árabes Unidos, Catar e Arábia Saudita.

No entanto o senador Humberto Costa disse ao UOL que Pacheco não teria compromisso com os interesses de Bolsonaro nem pautaria medidas de cunho autoritário do governo.

Pacheco angariou até mesmo apoio dentro do MBD, partido que tinha a própria candidata à presidência do Senado, Simone Tebet (MDB-MS).

Nascido em Rondônia, Pacheco fez carreira profissional e política em Minas Gerais, onde atuou como advogado e onde foi eleito deputado federal pelo MDB e depois senador pelo DEM.

Ao formalizar sua candidatura à presidência do Senado, Pacheco falou em "união" e disse que o Brasil precisa enfrentar as dificuldades trazidas pela pandemia.

Nesta segunda, disse à Globo News que a atuação legislativa deve "se pautar no trinômio saúde pública, crescimento econômico e desenvolvimento social". Pacheco já havia defendido, em entrevista ao jornal O Estado de S. Paulo, que se retomasse a discussão sobre a volta do auxílio emergencial ou sobre um aumento no Bolsa Família.

Herdeiro do ramo de transportes

Em Minas, a família de Pacheco é dona de empresas no ramo de transporte rodoviários, das quais ele é herdeiro.

No ano ado, o ex-deputado Arnaldo Silva Júnior, próximo ao senador Pacheco e assessor de seu gabinete, se tornou o novo diretor da ANTT (Agência Nacional de Transportes), órgão regulador da área de transporte — e que tem como uma das atribuições fiscalizar empresas do ramo, incluindo as da família de Pacheco.

O Ministério da Infraestrutura e a Secretaria-Geral da Presidência da República fizeram a nomeação, que contraria a Lei das Agências Regulatórias — pela lei, políticos não podem ser indicados à diretoria de órgãos reguladores. Silva Júnior não tem experiência no setor de transporte, mas a Secretaria-Geral da Presidência afirmou que ele "preenchia os requisitos para o cargo".