;(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 ironiza após nova expulsão e sugere comandar Palmeiras do sofá de casa

Do UOL, em São Paulo (SP)

31/05/2023 22h37

O técnico Abel Ferreira, do Palmeiras, ironizou ao responder sobre ter sido expulso mais uma vez e disse que vai descansar e comandar a equipe do sofá.

Lado 'positivo': "Se levar mais cartões, vou descansar. Levar para esse lado positivo: não viajar, ficar em casa, curtir a família, comandar sentado no sofá. Como foi contra o Santos, bebendo minha água com gás, tranquilo, perna cruzada. Desfrutar do orgulho que tenho de ver esse time jogar".

Do sofá: "Se o clube quiser prolongar meus contratos nessas condições, o a comandar a equipe de casa se deixarem".

1º amarelo: "O 1º amarelo veio por reclamar com o juiz por uma falta por trás do capitão do Fortaleza que ele não deu amarelo. Falei que queria que fosse assim para os dois lados. No lance seguinte teve dividida do Rony, de ombro, o árbitro entendeu que foi para amarelo e tomei amarelo por reclamar.

2º amarelo: "No segundo, reclamei de uma falta que na minha opinião foi para o Veiga. Não sei o que lhe dizer, importante é que o Palmeiras continua a cumprir seus objetivos. Isso que é mais importante: o Palmeiras".

Descanso aos árbitros: "Não sou só eu e meus jogadores que precisam descansar. Sinto que os árbitros também precisam. Não vejo que eles estão frescos para correr para cima e para baixo e nas decisões. Tenho a sensação que eles não estão descansados".

O que aconteceu

Abel Ferreira foi expulso no segundo tempo na derrota do Palmeiras para o Fortaleza, no Castelão, pelo jogo de volta das oitavas de final da Copa do Brasil.

O treinador palmeirense levou dois amarelos por reclamação e criticou na coletiva a falta de critério do árbitro Sávio Pereira Sampaio.

O Alviverde avançou às quartas por 3 a 1 no placar agregado, devido à vantagem construída no jogo de ida, no Allianz Parque.

O que mais Abel disse na coletiva

Críticas à arbitragem: "Se árbitro estivesse fresco, antes no lance do meu primeiro amarelo ele devia ter dado cartão ao zagueiro [do Fortaleza]. Um minuto depois, amarelou o Rony pelo mesmo lance e no mesmo jogador e no mesmo lance. Não são só treinadores e jogadores que estão cansados".

Dificuldades no Castelão: "Trazemos uma vantagem boa que construímos em nossa casa. Difícil jogar aqui por variadas razões: viagem, dois dias de descanso que tivemos, a qualidade do nosso adversário, o calor que é dificil de jogar aqui, gramado nas condições que vocês viram. Uma série de condições que não é bom para nós nem para o Fortaleza, que estava à procura do resultado".

Ida e volta: "Eliminatória em duas mãos, fomos melhores e merecemos estar na próxima fase. parabéns ao fortaleza pelo jogo dois, pela vitória, como se entregam no jogo em sua casa. E parabéns aos meus jogadores por estarmos onde queremos estar".

Endrick fora do banco: Não sei porque essa pergunta, já ficaram fora Jailson, Fabinho... Sua função é fazer perguntas, a minha é escolher os jogadores que entendo que devem jogar. Para essa partida, escolhi que os centroavantes deveriam ser outros".

Palmeiras para torcedores

Camisa 23/24

Camisa feminina

Camisa 23

Camiseta feminina

Rodapé content commerce -  -

Palmeiras