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

Abel diz que Endrick chorou e lamenta abraço não dado após substituição

Do UOL, em São Paulo

23/02/2023 00h48

O técnico Abel Ferreira, do Palmeiras, falou sobre a fase de Endrick após a vitória sobre o Bragantino — o atacante chegou ao 12° jogo sem marcar com a camisa do clube, deixou o gramado chateado e escondeu o rosto com um colete.

Veja o que falou Abel:

Frustração de Endrick. "Eu sou um crítico a mim porque não lhe dei um abraço. Ele precisa continuar a sorrir. Foi um moleque que, nos momentos certos, fez gols decisivos no ano ado. O que peço a ele é que não perca o sorriso no rosto, só peço isso. Ele vai falhar e vai acertar. Ele tem 16 anos, se jogar normalmente, vai até os 38 ou 40 anos. Ele tem que entender, e entende, que treinador, elenco e clube estão aqui para ajudar. Tudo no tempo de Deus. Ele vai fazer o gol na altura certa como fez ano ado em jogos decisivos. É verdade que colocou o colete [no rosto] porque chorou, mas não vi. Só vi depois quando me disseram. Se eu pudesse, lhe daria um abraço. Não sou pai dele, mas sou o treinador. Ele tem uma carreira absolutamente extraordinária pela frente."

Frieza europeia? "Eu, com os meus jogadores, sou muito brasileiro, coração mole, aberto... isso fora das câmeras, vocês não veem. Quando estou competindo [e vejo] meu comportamento, quem paga sou eu... por um erro do outro. Depois, analiso: 'por que tive aquele comportamento quando chutei o microfone?' O maior prejudicado sou eu por um erro que é do outro. Isso vou melhorar. Eu tive um presidente do PAOK que era russo. Tinha muitas reuniões com ele, e ele falava 'você é latino, você tem que ser frio'. Talvez uma parte da frieza veio daí. Vou melhorar isso, mas no resto, eu sou uma pessoa muito coração mole fora daqui, por isso não quero que conheçam minha fragilidade."

Mais um jogo sem tomar gols. "Temos a melhor defesa e temos o melhor saldo de gols. Há quem diga que defender é mais fácil do que atacar, mas vejo de maneira diferente. Defender também é uma arte. É preciso ter tanto tesão para atacar quanto para defender. Para se ganhar campeonatos, é preciso saber atacar bem e defender bem. Nós somos a melhor defesa. É verdade que este adversário chutou muito ao gol, muitos deles de fora da área e alguns de falta. O futebol é isso."

Marca de 100 vitórias. "Eu não ganho jogos, não gosto nada quando começam a falar sobre o treinador. O treinador não é ninguém sem os jogadores. Isso é consequência do trabalho dos jogadores. Hoje conseguimos segurar o jogo com as cinco substituições que fizemos. Há treinadores que são criticados por não fazer as alterações, como hoje foi o Guardiola, e outros que são criticados por fazer todas. Quero dar parabéns ao Giovani, ao Breno Lopes, ao Bruno Tabata, ao Jailson e Mayke. Me sangra o coração quando vejo reclamações de torcedores quanto aos jogadores. O recorde é consequência do trabalho dos jogadores."

Weverton muito exigido? "Não sei dizer, vocês são peritos em encontrar coisas negativas, eu prefiro valorizar um dos melhores goleiros do mundo. Prefiro valorizar uma grande defesa que tenho, uma linha de quatro espetacular, um trio na frente que independentemente da posição, cria uma metamorfose. Se não fosse preciso o Weverton, eu jogaria com mais um centroavante. Acho piada quando dizem que o Palmeiras tem o melhor elenco. Eu vejo equipes como o São Paulo e Corinthians com grande elenco. Vejo o Bragantino muito bem."

Weverton vem fazendo boas defesas nesta edição do Paulistão -  REUTERS/Ueslei Marcelino -  REUTERS/Ueslei Marcelino
Weverton vem fazendo boas defesas nesta edição do Paulistão
Imagem: REUTERS/Ueslei Marcelino

Gana dos adversários. "Se este time do Bragantino jogar toda vez assim... noto que, quando as equipes jogam contra nós, vêm com tudo. Todas elas. Olham para o Palmeiras e falam: 'é esta equipe que temos que derrotar'. Infelizmente, temos o mesmo desejo."

Consistência do time. "Trabalhamos no silêncio e deixamos o nosso trabalho brilhar. Parabéns aos meus jogadores, que continuam com fome de ganhar, isso é o que mais me ira neles. Fácil é chegar, difícil é manter e mais difícil é continuar ganhando. Fizemos no ado e queremos fazer no futuro."

Trabalho da imprensa. "Acho que vocês não me entendem. Quem tem um microfone, tem todo o direito de dar a opinião que quiser, e vocês tem capacidade de influenciar as pessoas. Há coisas que concordo e outras não, são opiniões. Eu também tenho minhas estratégias quando sento aqui. Me interessa ter uma relação distante com a imprensa. Posso decidir não querer dar entrevistas. Há treinadores que decidem o contrário. Olho para o futebol brasileiro e vejo margem para melhorar em tudo: nos jogadores, nos árbitros e no jornalismo também. Os jornalistas são como jogadores e árbitros: têm sites, comentaristas, ex-jogadores tops e também alguns fracos. Não tenho nada contra vocês."

Relação profissional x pessoal. "A única coisa que quero é preservar o meu lado pessoal, e vocês gostam de saber de tudo. Quero que vocês me julguem como treinador. Quero esconder uma parte de mim e não quero que vocês saibam. Vocês são um produto fundamental para a divulgação do futebol, mas aqui também uso estratégias. Eu faço o que acho que é melhor para mim e para meus jogadores. Uns gostam, outros não, e eu entendo. Nem Deus agradou a todos, vou eu, um menino de Penafiel [agradar]? Não. Estou aqui para aprender. iro o trabalho de vocês. Acho que não é uma profissão bem remunerada, mas isso não sou eu que mando."

Palmeiras