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

Seleção terá seis mudanças e meio-campo com Paquetá e Coutinho no Mineirão

Lucas Paquetá volta de suspensão e será titular amanhã (1), contra o Paraguai, pelas Eliminatórias - Lucas Figueiredo/CBF
Lucas Paquetá volta de suspensão e será titular amanhã (1), contra o Paraguai, pelas Eliminatórias Imagem: Lucas Figueiredo/CBF

Gabriel Carneiro e Igor Siqueira

Do UOL, em Belo Horizonte

31/01/2022 16h53

Tite escalou a seleção brasileira no treino de hoje (31) com seis mudanças em relação ao time que empatou com o Equador na semana ada, pelas Eliminatórias da Copa do Mundo do Qatar. A principal novidade é o meia Lucas Paquetá, que volta de suspensão e será escalado na vaga de Fred, o que indica uma equipe mais ofensiva para enfrentar o Paraguai nesta terça, às 21h30.

Ederson; Daniel Alves, Marquinhos, Thiago Silva e Alex Telles; Fabinho; Raphinha, Lucas Paquetá, Philippe Coutinho e Vinicius Júnior; Matheus Cunha é a escalação trabalhada na Toca da Raposa II, numa formação tática mais próxima do 4-1-4-1, mas facilmente adaptável para o 4-3-3 a depender da exigência do jogo.

Além de Paquetá no lugar de Fred, as novidades são Ederson (sai Alisson), Daniel Alves (sai Emerson Royal), Marquinhos (sai Éder Militão), Alex Telles (sai Alex Sandro) e Fabinho (sai Casemiro). O quarteto mais ofensivo é o mesmo da rodada ada, sendo o terceiro jogo seguido do trio de atacantes formado por Raphinha, Vinicius Júnior e Matheus Cunha, de média de idade inferior a 23 anos.

Para enfrentar o Paraguai no Mineirão, Tite não conta com Emerson Royal e Éder Militão, suspensos, além de Alex Sandro, que testou positivo para covid-19 e ficará em isolamento no hotel da seleção, em Belo Horizonte. Isso além dos habituais titulares Danilo e Neymar, que estão lesionados e nem foram chamados.

O revezamento no gol é um padrão do trabalho de Tite. Já na zaga, Marquinhos foi preservado do primeiro jogo e agora será usado — processo oposto vive Casemiro, que atuou no Equador e agora fica no banco diante do Paraguai, enquanto Fabinho volta de suspensão como titular.

Tite aprimorou a formação com um treinamento tático na tarde desta segunda-feira. Ele pedia insistentemente por mais movimentação ofensiva, com jogadas de linha de fundo que terminassem com o quarteto de ataque na área para finalizar, além do ponta responsável pela articulação do lance, seja com cruzamento ou e no chão. É um modelo parecido com a da goleada por 4 a 1 sobre o Uruguai, em outubro.

A seleção brasileira já está classificada com 36 pontos após 11 vitórias e três empates e cumpre tabela nas Eliminatórias, enquanto o Paraguai é o penúltimo colocado e praticamente não tem mais chances de ir para o Qatar.