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

Paulo Sousa cobra intensidade do Flamengo, vê evolução e elogia torcida

Paulo Sousa antes da partida entre Flamengo x Vasco, pela semifinal do Carioca - Jorge Rodrigues/AGIF
Paulo Sousa antes da partida entre Flamengo x Vasco, pela semifinal do Carioca Imagem: Jorge Rodrigues/AGIF

Colaboração para o UOL, no Rio de Janeiro

20/03/2022 19h29

O técnico Paulo Sousa entendeu que, durante a vitória do Flamengo neste domingo (20), no Maracanã, a equipe evoluiu com o desenrolar da partida. Para o português, a equipe não começou com a intensidade necessária, mas soube se recuperar. O comandante ainda elogiou a torcida que esteve presente no estádio.

"Eu penso que nossa intensidade, sobretudo a mental, não foi boa. Os protagonistas, como Arrasca, não esteve no melhor nos 20 minutos. Muita precipitação, perda de bolas simples, linhas de e identificadas sob pressão. A procura de jogadores livres, para termos posse, para chegar mais próximo ao gol adversário não aconteceu. As intensidades, seja na mobilidade, seja nas transições defensivas, nem sempre foram as melhores", analisou.

O treinador pontuou que com o ar do tempo, aproveitando o desgaste do adversário e contando com boa partida dos volantes Willian Arão e João Gomes, o Fla ou a dominar a partida. "Depois a equipe foi crescendo, com o desenrolar do jogo, há um desgaste grande do adversário. Quem quer correr atrás da bola, pressionar mais alto, tem desgaste físico e isso foi concretizado na segunda parte", completou.

Além de cobrar uma melhor intensidade, Paulo Sousa também pontuou que a equipe rubro-negra precisa melhorar nas finalizações. Ele ficou satisfeito com o volume de jogo e com o número de chances criadas, mas afirmou que é preciso converter para dar a real dimensão do domínio exercido pela equipe durante a partida.

"Nós, seja na primeira parte ou na segunda, sobretudo na segunda parte, criamos situações de gol que poderíamos ter definido o confronto mais cedo e podermos estar logo na final mais cedo. Vamos continuar porque tecnicamente temos jogadores com qualidade, quanto mais eficaz formos, sabemos que vamos ser mais controladores do próprio jogo e do adversário", afirmou.

Apoio da torcida

O português também destacou a importância da torcida e projetou também a importância de ter o apoio dos torcedores ao longo da temporada. De acordo com Paulo Sousa, a sinergia criada entre jogadores e arquibancada ajuda o time em momentos complicados dentro do próprio jogo.

"Também a uma mensagem porque a uma mensagem porque vai ser importante, vamos ar por momentos delicados, difíceis dentro do próprio jogo. Vamos ter adversários que vão nos criar mais dificuldades, vamos precisar deles para nos dar intensidade, nos empurrar para nunca abaixar a intensidade mental", finalizou.