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

Bolsonaro nega chapa com Moro vice: "Estou casado com Mourão, sem amante"

26.set.2019 - O presidente Jair Bolsonaro e o ministro Sergio Moro durante a cerimônia de posse do procurador-geral da República Augusto Aras - Evaristo Sa/AFP
26.set.2019 - O presidente Jair Bolsonaro e o ministro Sergio Moro durante a cerimônia de posse do procurador-geral da República Augusto Aras Imagem: Evaristo Sa/AFP

Do UOL, em São Paulo

04/12/2019 09h18

O presidente Jair Bolsonaro negou que, neste momento, tenha planos para colocar o atual ministro da Justiça, Sergio Moro, como vice para uma chapa na disputa das eleições de 2020. "Por enquanto estou casado com o Mourão. Sem amante", riu ele, falando sobre o atual vice-presidente, Hamilton Mourão.

Questionado na saída do Palácio da Alvorada sobre as chances de a chapa se concretizar, ele brincou: "Não quero saber de política. É um saco a minha vida, cara. Falar para 2022? Chego em casa igual a um zumbi".

E acrescentou, elogiando o ministro: "O Moro, o que eu vejo dele. Ele vinha de uma linha. Eu vim de uma linha militar. Ele tinha uma linha dele. Quando você vai para a política, é muito comum dizer que vai fazer isso e aquilo e não é bem assim. O Moro e os outros ministros, todo mundo aprende na vida. Tem que conversar com o parlamento? Tem que conversar. Ele tá indo bem pra caramba."

"As coisas têm que se conseguir dessa maneira, pelo convencimento. Ele tá indo bem. O Moro tá ficando quase um político", riu.

Um repórter perguntou: "Está se habilitando a vice?". Bolsonaro respondeu: "Não, não, não... Quem sabe. Por enquanto estou casado com o Mourão. Sem amante."

Disputa com Trump sobre o aço

Bolsonaro falou sobre a disputa com Donald Trump e os Estados Unidos, que prometem retomar as tarifas sobre metais brasileiros como aço e alumínio. Questionado se ligou para Trump, Bolsonaro nem confirmou, nem negou. "Vou dar uma dica para você. Se eu já liguei ou não, você não vai ficar sabendo. Tem certas questões que são de Estado. Já temos todas as informações do que aconteceu".

"Estou conversando. Pode ver, nós importamos etanol deles. Eles querem, já está bastante avançado, mandar trigo para gente. Agora, nós somos os pobres da história. Não sei quantas vezes a economia deles é maior que a nossa. A gente tá com chumbinho, eles estão com ponto 50. Acho um certo exagero no que está acontecendo. Por enquanto não foi sobretaxado nada, só tem a promessa dele no Twitter."

Sobre a acusação de que o Brasil desvalorizou sua moeda, afirmou que "não é um exagero. O mundo ta globalizado, a própria briga comercial [entre] Brasil e China influencia o preço do dólar aqui. Várias vezes o Roberto Campos interferiu vendendo dólares. Nós não queremos aqui aumentar artificialmente... Nós não estamos aumentando artificialmente o preço do dólar."

"Eu acredito no Trump. Não tenho nenhuma idolatria por ninguém. Temos uma amizade... Não vou falar amizade - não visito a casa dele nem ele a minha. Temos um contato bastante cordial. Não tenho decepção, porque não bateu o martelo ainda. Não é porque um amigo falou grosso numa situação que vou dar as costas para ele", concluiu.

Ouça o podcast Baixo Clero com análises políticas de blogueiros do UOL.

Os podcasts do UOL estão disponíveis no Spotify, Apple Podcasts, Google Podcasts e outras plataformas de áudio.