;(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; // 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(); })();
Topo
Notícias

Deus deixou sertão sem água porque sabia que eu seria presidente, diz Lula

do UOL

Do UOL, em São Paulo

28/05/2025 21h49Atualizada em 29/05/2025 00h17

O presidente Lula (PT) afirmou em evento hoje que Deus deixou o sertão sem água porque sabia que ele seria presidente do Brasil.

O que aconteceu

"Eu, graças a Deus, descobri uma coisa: Deus deixou o sertão sem água, porque ele sabia que eu seria presidente da República e que eu ia trazer água para cá", disse Lula. A fala foi durante cerimônia de entrega do 1º Trecho do Ramal do Apodi, na Barragem Redondo, próximo a Cachoeira dos Índios, no sertão da Paraíba.

Fazia 179 anos que se prometia levar água para região, segundo Lula. "Essa decisão foi a mais importante que eu tomei na minha vida, porque era uma obra que muita gente não acreditava que a gente pudesse fazer, porque fazia 179 anos que se prometia água para essa região."

Lula também destacou seu empenho em levar água para os brasileiros. "O que eu quero é pegar um pouquinho de água, antes dela chegar no mar, e trazer de volta para dar para o meu povo do sertão beber, comer, tomar banho e lavar", afirmou.

Fome existir por causa da seca é "falta de vergonha" de governadores e prefeitos, disse presidente. "A seca é um fenômeno da natureza, sempre vai existir a seca, mas a fome por causa dela é falta de vergonha na cara das pessoas que governam esse país e seus estados. Quando pensamos em trazer as águas do São Francisco para a região seca, muita gente foi contra."

Mais cedo, presidente criticou seu antecessor, o ex-presidente Jair Bolsonaro (PL), em evento em Pernambuco. "Dou dois minutos para quem se lembrar de obras em Pernambuco no governo ado", disse. Lula afirmou que pegou obras paradas no Minha Casa, Minha Vida e na construção de creches. "Porque tudo o que ele sabia fazer era contar mentira e ficar no gabinete do ódio o tempo inteiro", criticou.

"Não se pode votar em qualquer tranqueira para governar o país", prosseguiu o petista. A fala foi durante a autorização da obra que amplia a capacidade de bombeamento no eixo norte da transposição do rio São Francisco.

Notícias