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

Grêmio usa titulares no fim, vence Aimoré de virada e segue líder do Gaúcho

Jogadores do Grêmio-comemoram gol de Villasanti na vitória sobre o Aimoré - Maxi Franzoi/AGIF
Jogadores do Grêmio-comemoram gol de Villasanti na vitória sobre o Aimoré Imagem: Maxi Franzoi/AGIF

Do UOL, em Porto Alegre

09/02/2022 22h25

O Grêmio botou os reservas para jogar contra o Aimoré, hoje (9), na quinta rodada do Gauchão, e precisou recorrer aos titulares, ao longo da partida, para vencer por 2 a 1, fora de casa, para manter a liderança do campeonato. Todos os gols saíram depois do intervalo e a virada gremista ocorreu perto do fim do confronto em São Leopoldo. A atuação gremista teve altos e baixos e, também, cartão vermelho para o zagueiro Gustavo Marins perto do apito final.

Wesley abriu o placar para o Aimoré, mas Villasanti empatou. E no final, Rodrigues virou.

O Grêmio chega a 13 pontos e segue líder da fase de classificação do Gauchão. O Aimoré estaciona nos sete pontos.

Na próxima rodada, o Grêmio recebe o Juventude e o Aimoré joga em casa contra o União Frederiquense. A partida em Porto Alegre será no domingo (13), enquanto a partida em São Leopoldo será no sábado (12).

Quem brilhou: Villasanti

Paraguaio empatou o jogo de cabeça, em meio à pressão gremista. Ao longo do jogo, o camisa 27 oscilou entre uma atuação discreta e lampejos para ajudar no ataque.

Quem decepcionou: Gabriel Silva

Meia-atacante que havia entrado bem contra São José-RS e Guarany foi discreto em São Leopoldo. Improvisado pelo lado, Gabriel não lembrou nem de perto o jogador que foi um dos destaques da campanha gremista na Copa São Paulo, em janeiro.

Lei do ex é aplicada

Wesley, autor do gol do Aimoré, ou pela base do Grêmio. Foi entre 2011 e 2014, com direito a empréstimos ao Novo Hamburgo, Pelotas e Red Bull Brasil.

Grêmio sofre com e sem a bola

O gramado atrapalhou, mas o Grêmio em si também não ajudou. Depois de um início com aposta em bolas longas e Benítez ativo como peça criativa, o time gremista caiu de rendimento. Mais: ficou com linhas distantes e ou a viver de jogadas individuais.

Quando teve a bola, o Grêmio cometeu erros na saída de jogo. E viu a defesa ficar exposta.

Aimoré acerta a trave e sai na frente

O time da casa cuidou bastante da defesa, fechou os lados e esperou o Grêmio errar. Ainda no primeiro tempo, o Aimoré criou duas boas chances para abrir o placar. Uma delas, pouco antes do intervalo, parou na trave.

Na etapa final, com velocidade e oportunismo dentro da área, o clube de São Leopoldo saiu na frente. E a estratégia ficou ainda mais clara: esperar o contra-ataque.

Grêmio apela para os titulares

No intervalo, Vagner Mancini sacou Lucas Kawan e botou Bruno Alves — deslocando Rodrigues para a lateral direita. Além disso, botou Ferreira no lugar de Rildo. Logo depois de levar 1 a 0, o Grêmio foi além: lançou mão de Janderson e Diego Souza nos lugares de Gabriel Silva e Diego Churín, respectivamente. Com os titulares, o volume ficou maior. A pressão aumentou. E o empate saiu.

FICHA TÉCNICA:

AIMORÉ 1 x 2 GRÊMIO
Data e hora:
09/02/2022 (quarta-feira), às 20h30 (horário de Brasília)
Local: estádio Cristo Rei, em São Leopoldo (RS)
Árbitro: Roger Goulart
Auxiliares: Claiton Timm e Artur Avelino Birk Preissler
Cartões amarelos: Fabian Volpi, Wellington, Wesley, Henrique (AIM); Fernando Henrique, Nicolas, Gustavo Marins (GRE)
Cartão vermelho: Gustavo Marins (GRE)
Gols: Wesley, aos 15 minutos do segundo tempo (AIM); Villasanti, aos 34 minutos do segundo tempo (GRE); Rodrigues, aos 42 minutos do segundo tempo (GRE)

AIMORÉ: Fabian Volpi; Bruno Ferreira, Henrique, Darlan, Raphael Soares; Wellington Reis, Adriano, Mardley e Wagner; Vinicius Baiano e Wesley. Técnico: Rafael Lacerda

GRÊMIO: Brenno; Lucas Kawan (Bruno Alves), Rodrigues, Gustavo Marins e Nicolas; Fernando Henrique, Villasanti, Gabriel Silva (Janderson), Benítez e Rildo (Ferreira); Diego Churín (Diego Souza). Técnico: Vagner Mancini