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

Bonner intervém em briga com Lula e diz que Kelmon 'instituiu nova regra'

Do UOL, em São Paulo, no Rio e em Brasília*

30/09/2022 00h37Atualizada em 30/09/2022 01h22

Mediador do último debate entre presidenciáveis antes do primeiro turno, William Bonner se irritou com a insistência do candidato Padre Kelmon (PTB) em descumprir regras do programa, realizado hoje pela TV Globo. O jornalista também precisou intervir em uma troca de farpas entre o petebista e o ex-presidente e candidato do PT, Luiz Inácio Lula da Silva.

Bonner repreendeu Kelmon depois que o petebista fez sucessivas interrupções durante falas de outros candidatos. O mediador disse então que o religioso "instituiu nova regra" para o debate e pediu que ele corrigisse sua postura.

"O senhor realmente decidiu instituir uma nova regra nesse debate. O senhor poderia olhar para mim respeitosamente? O senhor instituiu uma nova regra nesse debate! Ela não existia, eu pedi ao senhor diversas vezes. Eu vou pedir apenas que o senhor aguarde a conclusão da fala do seu oponente! E retorne ao seu assento, como fizeram todos os demais."

A confusão ocorreu no terceiro bloco do programa, quando um candidato poderia fazer questionamentos com tema livre a outro previamente escolhido.

Kelmon escolheu Lula e apontou supostos casos de corrupção revelados pela Operação Lava Jato.

Vários de seus comparsas foram presos e disseram que você era o chefe do maior esquema de roubo de corrupção da história mundial. Renato duque, Palocci são alguns exemplos, o seu próprio vice disse que você quer voltar a cena do crime para voltar... por que tanta gente próxima de você foi presa, te denunciou, você era o chefe do esquema?
Padre Kelmon

Lula tentou responder à questão, mas logo foi interrompido pelo sacerdote, o que irritou o apresentador.

"Candidato Kelmon, eu não consigo entender. Eu já falei algumas vezes, o senhor compreendeu que tem regra o debate? O senhor concordou com elas. E que basta cumpri-las? Quando o seu adversário, candidato, por favor, quando o seu adversário está falando é só o senhor aguardar, o senhor vai ter direito a réplica. É assim que funciona. Por favor, em respeito ao público, candidato, candidato Lula, o senhor pode recomeçar", afirmou Bonner.

Ao iniciar o tempo para a sua resposta, Lula chamou o padre Kelmon de "candidato laranja".

"É que candidato laranja não tem respeito por regras, candidato laranja faz o que quer. Deixa eu lhe dizer uma coisa. Eu tive 26 denúncias. Mentirosas. De uma pessoa que depois foi ser ministro do atual governo. Eu tive uma quadrilha montada no Ministério Público que nós conseguimos provar a culpabilidade deles", disse o ex-presidente, sem citar o nome do ex-ministro e ex-juiz Sergio Moro

Na sequência, o padre Kelmon culpou Lula pela corrupção no Brasil, e o ex-presidente, por sua vez, o acusou de estar fantasiado de padre. "Você não é padre, está fantasiado. Você é padre?"

Visivelmente irritado, Bonner novamente precisou intervir na discussão entre os dois candidatos, momentos depois.

*Participam desta cobertura:
Em São Paulo: Ana Paula Bimbati, Beatriz Gomes, Caê Vasconcelos, Gilvan Marques, Isabela Aleixo, Juliana Arreguy, Letícia Mutchnik e Rafael Neves.
No Rio de Janeiro: Felipe Pereira e Lucas Borges Teixeira.
Em Brasília: Camila Turtelli, Gabriela Vinhal, Hanrrikson de Andrade e Letícia Casado.