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

Fala, Maurão: "Final da Libertadores é um jogo sem favorito nenhum"

Do UOL, em São Paulo (SP)

23/11/2021 11h30

Palmeiras e Flamengo fazem a final da Copa Libertadores no sábado (27), às 17h (de Brasília), no estádio Centenário, em Montevidéu, no Uruguai. A decisão foi um dos temas abordados por Mauro Cezar Pereira no quadro "Fala, Maurão". Na opinião do colunista do UOL Esporte, apesar do Rubro-negro viver um momento melhor, com quatro vitórias consecutivas — enquanto o Alviverde vem de três jogos com derrota — a partida entre as duas equipes não tem nenhum favorito.

"É uma gangorra. O Palmeiras vinha mal, uma sequência grande sem vencer, e venceu alguns bons jogos, depois perdeu três. E o Flamengo, que foi eliminado na Copa do Brasil jogando ridiculamente contra o Athletico-PR, perdeu pontos para outras equipes e acaba nesses últimos jogos se recuperando", disse.

"Os dois times foram muito irregulares nessa temporada, especialmente nesses últimos meses. Isso evidencia um jogo sem favorito nenhum no Uruguai", acrescentou.

Hoje, às 21h30, o Palmeiras recebe o Atlético-MG no Allianz Parque. A equipe não tem mais ambição no Campeonato Brasileiro, mas o time mineiro pode consagrar-se campeão nesta rodada. Sendo assim, os reservas de Abel Ferreira devem encontrar um Galo com vontade de vencer a partida desde o primeiro minuto. Para Mauro Cezar, o jogo contra o time de Cuca é importante ao clube Alviverde para deixar o ambiente mais "calmo e tranquilo" às vésperas da final.

"O Palmeiras vinha de uma sequencia de vitórias e perdeu seus últimos 3 jogos e faz uma partida importante contra o Atlético-MG hoje no Allianz Parque, pelo Brasileirão. Importante porque o Galo busca o título, e o Palmeiras que mesmo jogando com o time reserva precisa dar satisfação ao seu torcedor ou vai perder de novo? Quatro derrotas seguidas antes da final da Libertadores? Isso não é bom, não deixa as coisas calmas e tranquilas às vésperas de uma partida dessa importância", afirmou.

Também na noite de hoje, às 21h, o Flamengo visita o Grêmio, na Arena do Grêmio, para manter o seu bom momento mesmo atuando com o time reserva. O time de Renato Gaúcho venceu o Bahia por 3 a 0, o São Paulo por 4 a 0, o Corinthians por 1 a 0 e o Inter por 2 a 1.

Na opinião do jornalista, o Fla se encontra em uma situação mais "equilibrada e tranquila" do que a de seu rival na final. E só precisa de um jogo "minimamente aceitável" contra o Tricolor gaúcho para manter o bom clima no elenco.

"Com reservas, o Flamengo foi bem e venceu o Corinthians, e com reservas vai encarar o Grêmio. Arrascaeta poderá estar em campo para recuperar ritmo de jogo, depois de um mês e meio parado. Isso não significa muita coisa, mas temos o Flamengo em uma situação mais equilibrada e tranquila, e o Palmeiras com jogadores discutindo em campo, embora isso seja normal, evidencia não uma crise, mas uma instabilidade que precisa ser corrigida para sábado", falou.

"Ao Flamengo resta fazer um jogo minimante aceitável contra o Grêmio e rumar para o jogo de sábado com um clima de equilíbrio e tranquilidade, que há 15 dias não tinha", concluiu.