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

Palmeiras

Além de Borré: Palmeiras amplia leque de opções no mercado por centroavante

Sebastián Ferreira (à direita) em ação pelo Libertad contra o Jorge Wilstermann - Aizar Raldes/AFP
Sebastián Ferreira (à direita) em ação pelo Libertad contra o Jorge Wilstermann Imagem: Aizar Raldes/AFP

Bruno Andrade e Thiago Ferri

Do UOL, em Lisboa e em São Paulo

18/03/2021 19h13

Com o longo ime na negociação envolvendo Santos Borré, o Palmeiras resolveu aumentar o leque de opções no mercado da bola para reforçar o ataque. O UOL Esporte apurou que o clube e Abel Ferreira têm vasculhado nomes e pelos menos dois foram debatidos internamente: o paraguaio Sebastián Ferreira, do Libertad, do Paraguai, e o brasileiro Tiquinho Soares, que está perto de rescindir contrato com o Tianjin Teda, da China.

Ferreira e Soares se juntam à dupla argentina Taty Castellanos, do New York City, dos Estados Unidos, e Juan Dinenno, do Pumas, do México. Todos foram avaliados positivamente pela comissão técnica, interessaram e receberam sondagens, numa tentativa de descobrir valores e detalhes de um eventual acordo. O clube, contudo, também discute outros possíveis alvos com a análise de mercado e ainda não se vê próximo de um reforço para a posição.

Aos 23 anos, Sebastián Ferreira está no Libertad desde o ano ado, depois de uma agem de duas temporadas pelo México, onde defendeu o Morelia. Foi revelado pelo Olimpia, do Paraguai, e tem várias presenças nas seleções sub-17 e sub-20. Enfrentou o Palmeiras nas quartas de final da Copa Libertadores de 2020.

Veterano, Tiquinho Soares, de 30 anos, está sem receber salários desde que chegou ao futebol chinês, em outubro do ano ado. Por isso, solicitou a rescisão na Fifa, que, em breve, deve confirmar uma decisão favorável. Rodou por diversos clubes pequenos do Brasil, entre eles Treze-PB e CSP-PB, antes de fazer sucesso no Porto, de Portugal, de 2016 e 2020.

Recentemente, o jogador recebeu consultas de Atlético-MG, Grêmio e São Paulo. No caso do Verdão, as conversas não avançaram por se considerar a pedida inicial alta demais. O contato com os empresários de Tiquinho não avançou de uma consulta até aqui.

Incomodado com a demora para ter uma resposta definitiva de Borré, Abel Ferreira deixou claro diversas vezes, inclusive de forma pública, que faz questão de contar com mais um atacante de área —para jogar ao lado ou fazer sombra para Luiz Adriano.

Na visão interna do Verdão, a contratação do artilheiro colombiano, que tem contrato até junho deste ano com o River Plate, da Argentina, é ainda a prioridade. O clube alviverde ofereceu, por intermédio do empresário André Cury, contrato de quatro anos, com US$ 4,8 milhões (cerca de R$ 26,8 milhões) em luvas e US$ 2 milhões (R$ 11,17 milhões) em salários, livres de impostos.

Os recentes acontecimentos no futebol brasileiro com o agravamento da pandemia da covid-19, no entanto, fizeram a cúpula do Palmeiras ar a reavaliar os valores colocados na mesa para Santos Borré. O Campeonato Paulista está por enquanto suspenso até o dia 30 de março e, agora, há o temor de que este seja mais um ano sem público nos estádios. Isto fez o negócio esfriar, e pessoas na diretoria adotarem um tom mais pessimista.

Palmeiras