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

Paulista - 2023

Com dois a mais, São Paulo atropela o Santos e faz torcida gritar 'olé'

Adriano Wilkson e Eduardo Nunes

Do UOL e colaboração para o UOL, em São Paulo

12/02/2023 21h00

Debaixo de muita chuva no Morumbi, o São Paulo se adaptou melhor ao campo encharcado e venceu o Santos por 3 a 1 hoje (12), pela oitava rodada do Campeonato Paulista. O time da Baixada ainda teve dois jogadores expulsos: Lucas Pires, no primeiro tempo, e João Lucas no segundo.

O triunfo, alcançado com os gols de Calleri, de cabeça, Galoppo, de pênalti, e Luan, com um chute de fora da área, mantém o Tricolor na liderança do Grupo B do Estadual, com 14 pontos ganhos.

Já o Peixe, que descontou com Rwan nos acréscimos da segunda etapa, amarga a lanterna do Grupo A com apenas 9 pontos e ainda não poderá contar com seus dois laterais titulares na próxima rodada.

Festa para Ceni e com 'olé'

Após o terceiro gol, a torcida são-paulina aproveitou os minutos finais do confronto para soltar a voz e celebrar o técnico Rogério Ceni. O treinador colocou Luan em campo aos 25 minutos, justamente após o pedido das arquibancadas.

Em seguida, os tricolores também gritaram 'olé' enquanto o clube tocava a bola, com a partida já definida.

Como foi o jogo

A partida começou equilibrada, mas os donos da casa logo fizeram valer o fator campo e, apostando na bola aérea, abriram o placar. Cinco minutos depois, em nova bola levantada na área, Lucas Pires tirou o gol com o braço, foi expulso e ainda deu um pênalti para o adversário, que ampliou.

Apesar de ter a vantagem numérica e ficar mais com a bola, o clube da capital não pressionou o adversário no restante da primeira etapa.

No intervalo, Ceni fez três alterações e Hellmann fez uma troca, mas o cenário do jogo mudou mesmo aos oito minutos, quando João Lucas deu uma solada em Calleri e também foi expulso. Com dois a menos, o Alvinegro se limitou, basicamente, a defender no restante do confronto.

Lances importantes

São Paulo 1x0 Santos. Em cobrança de falta de Wellington Rato, Calleri foi mais rápido que toda defesa santista, inclusive o goleiro João Paulo, e cabeceou firme para desencantar na temporada.

São Paulo 2x0 Santos. Após cabeçada, Lucas Pires tira a bola na linha do gol com o cotovelo. Em campo, o árbitro Flávio Rodrigues de Souza anota a penalidade e expulsa o lateral santista. Na cobrança, Galoppo amplia a vantagem.

42 minutos do primeiro tempo. Com um a menos, Marcos Leonardo ficou mais isolado à frente e recebeu na esquerda. Ele rola a bola para Mendoza, que bate forte e obriga Rafael a fazer uma grande defesa no chão.

10 minutos do segundo tempo. João Lucas, lateral direito que ou a atuar na esquerda com a saída de Lucas Pires, também sai de campo mais cedo. O jogador deixou a sola da chuteira em uma dividida de bola com Calleri e o árbitro de vídeo chamou Flávio Rodrigues ao monitor para rever a jogada e aplicar o cartão vermelho.

12 minutos do segundo tempo. Galoppo finalizou cruzado da esquerda e a bola tirou tinta da trave de João Paulo. Cinco minutos depois, ele apareceu de novo para cabecear, contudo sem levar tanto perigo.

São Paulo 3x0 Santos. Luan arriscou um chute de muito longe e a bola quicou antes de chegar ao gol. João Paulo se esticou, mas não conseguiu evitar que a bola entrasse no canto direito.

São Paulo 3x1 Santos. Beraldo erra ao recuar a bola, Rwan fica com ela e Rafael derruba o atacante santista. O próprio centroavante foi para a cobrança e mandou no canto esquerdo alto, sem chances de defesa.

Agenda

As duas equipes voltam a campo pela nona rodada do Estadual. Na quarta (15), às 21h30, o Tricolor recebe a Inter de Limeira, enquanto o Peixe visita o Santo André um dia depois, na quinta (16), às 19h30.

FICHA TÉCNICA
SÃO PAULO 3 x 1 SANTOS

Competição: oitava rodada do Campeonato Paulista
Local: Estádio Cícero Pompeu de Toledo, o Morumbi, em São Paulo
Dia e hora: 12 de fevereiro, domingo, às 19h (horário de Brasília)
Árbitro: Flávio Rodrigues de Souza
Assistentes: Alex Ang Ribeiro e Mauro André Freitas
VAR: Rodrigo Guarizo Ferreira

Cartões amarelos: Luciano, Belém, Pablo Maia, Calleri, Caio Paulista, Rafael (SPA); Camacho, Nathan (SAN)
Cartões vermelhos: Lucas Pires e João Lucas (SAN)
Gols: Calleri, aos 15'/1ºT, Galoppo, aos 23'/1ºT, e Luan, aos 42'/2ºT para o São Paulo; Rwan, aos 49'/2ºT, para o Santos.

Público: 42.311 torcedores

São Paulo: Rafael, Orejuela (Nathan Mendes), Beraldo, Alan Franco (Matheus Belém) e Welington; Jhegson Méndez, Pablo Maia (Luan) e Luciano (Marcos Paulo); Wellington Rato (Caio Paulista), Calleri e Galoppo. Técnico: Rogério Ceni.

Santos: João Paulo, João Lucas, Maicon, Eduardo Bauermann e Lucas Pires; Camacho (Balieiro) e Dodi; Ângelo (Nathan), Lucas Braga (Rwan), Mendoza (Messias) e Marcos Leonardo (Lucas Barbosa). Técnico: Odair Hellmann.