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

Henrique Meirelles anuncia que será candidato a senador por Goiás em 2022

"É chegado o momento de colocar minha experiência a disposição do povo goiano", justificou Meirelles - Leco Viana/TheNews2/Estadão Conteúdo
"É chegado o momento de colocar minha experiência a disposição do povo goiano", justificou Meirelles Imagem: Leco Viana/TheNews2/Estadão Conteúdo

Do UOL, em São Paulo

04/11/2021 18h09Atualizada em 04/11/2021 18h26

O secretário da Fazenda e Planejamento do estado de São Paulo, Henrique Meirelles, anunciou hoje sua candidatura ao Senado por Goiás — onde nasceu — nas eleições de 2022. Segundo Meirelles, que se comprometeu a cumprir os oito anos de mandato, objetivo é fazer avançar reformas que possam gerar recursos e empregos em seu estado.

"Depois de uma longa estrada, ando pela iniciativa privada, ministério, presidência do Banco Central, é chegado o momento de colocar minha experiência a disposição do povo goiano para geração de recursos e empregos no meu estado", justificou o secretário, que também foi ministro da Fazenda (2016-2018) e presidente do Banco Central (2003-2011).

As conversas que tive com políticos, líderes empresariais e comunitários no último fim de semana foram muito produtivas. Estamos ganhando velocidade e força. A receptividade está enorme.
Henrique Meirelles, no Twitter

Meirelles ainda reforçou que não há a possibilidade de aceitar qualquer cargo no Poder Executivo — como o que está agora — em 2023.

"O que eu pretendo fazer é uma articulação intensa no Senado. Existe uma vasta possibilidade de entendimentos comuns para projetos de reformas que permitam Goiás e o Brasil crescerem como um todo. Isso que pretendo fazer pelo país", explicou. "Minha meta é trabalhar por Goiás e vou cumprir os oito anos de mandato."

Quem é Henrique Meirelles

Nascido em Anápolis (GO), Henrique Meirelles, 76, é engenheiro formado pela USP (Universidade de São Paulo), com mestrado em economia e istração pela UFRJ (Universidade Federal do Rio de Janeiro).

Foi o presidente do Banco Central mais longevo, tendo ocupado o cargo por oito anos, de 2003 e 2011. Também comandou o Ministério da Fazenda entre 2016 e 2018, ano em que concorreu à presidência da República pelo MDB.

Já na iniciativa privada, foi presidente mundial do BankBoston, onde trabalhou por 28 anos, além de presidente do Conselho de istração do banco de investimentos Lazard Americas e consultor sênior na gestora global KKR. Ainda fez parte dos conselhos de istração de empresas como Lloyds of London, Azul Linhas Aéreas e Bestfoods, entre outras.