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

São Paulo

São Paulo faz último treino antes ir para a Bolívia; veja provável time

Jogadores trabalham na última atividade antes da viagem para a Bolívia - Twitter/São Paulo
Jogadores trabalham na última atividade antes da viagem para a Bolívia Imagem: Twitter/São Paulo

[email protected] (Redação)

27/04/2022 13h50

O São Paulo encerrou na manhã desta quarta-feira, no CT da Barra Funda, sua preparação para enfrentar o Jorge Wilstermann, da Bolívia, pela terceira rodada do Grupo D da Copa Sul-Americana, quinta, às 19h15 (de Brasília), no estádio Félix Capriles.

Gabriel Neves, que desfalcou o treinamento da última terça devido a um trauma no pé direito, voltou a trabalhar com o elenco nesta quarta-feira e pode reforçar a equipe no duelo com o Jorge Wilstermann.

Uma provável escalação do São Paulo tem Jandrei (Volpi); Igor Vinícius, Arboleda, Miranda e Welington (Reinaldo); Luan (Pablo Maia), Gabriel Sara, Nestor e Alisson; Rigoni e Luciano.

Nesta quarta-feira, o técnico Rogério Ceni comandou um trabalho de 11 contra 11, promovendo ajustes táticos e testando variações.

A delegação do São Paulo embarca nesta tarde para Cochabamba, em voo fretado.

Altitude

Depois de ter se livrado da altitude de Cusco (3400m) em sua estreia na Sul-Americana, já que o governo peruano mudou o local da partida contra o Ayacucho para a capital do Peru, Lima, o São Paulo desta vez terá de lidar com o jogo contra o Jorge Wilstermann a mais de 2500m acima do nível do mar.

Os efeitos da altitude são mais moderados em comparação com uma partida que aconteceria em Cusco, porém, os atletas do São Paulo certamente terão de superar algumas dificuldades impostas pelo ar rarefeito.

O São Paulo é o líder do Grupo D da Copa Sul-Americana, com seis pontos, e pode ampliar sua vantagem na primeira colocação caso vença o Jorge Wilstermann, já que o Ayacucho foi derrotado pelo Everton na última terça e perdeu a chance de seguir perseguindo de perto o Tricolor na tabela.

São Paulo