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

Flamengo

De ignorado a xodó: como Hugo mudou história do gol do Flamengo em um mês

Hugo Souza defende o pênalti cobrado por Walter, na partida entre Athletico e Flamengo - Gabriel Machado/AGIF
Hugo Souza defende o pênalti cobrado por Walter, na partida entre Athletico e Flamengo Imagem: Gabriel Machado/AGIF

Leo Burlá

Do UOL, no Rio de Janeiro

29/10/2020 04h00

Já são 12 anos de Flamengo, mas bastaram 30 dias para a vida de Hugo de Souza Nogueira mudar. Quis o destino que, neste curto espaço de tempo, coubesse ao jovem formado na casa trocar o posto de quarto goleiro pelo de xodó dos rubro-negros. Escalado após um surto de covid-19 que vitimou quase todo o elenco, Hugo foi acionado contra o Palmeiras, se destacou jogo a jogo e virou a cara (e o cara) de um Flamengo que não sabe mais o que é perder.

Desde que atuou no Allianz Parque, no empate por 1 a 1 contra o Alviverde, no dia 27 de setembro, Neneca entrou em campo outras nove vezes e vem impressionando. Com 1,96m, o jogador conjuga envergadura com velocidade e foi peça decisiva em muitos triunfos. Com ele no gol, o Fla venceu sete e empatou três. Para se ter uma ideia da participação direta do camisa 45 nesta série, os números são bons aliados. Nestes jogos, ele praticou 38 defesas, fez 12 intervenções consideradas difíceis, somou 83% de bolas defendidas e sofreu apenas oito gols, segundo dados do "SofaScore".

A importância de Hugo para o Rubro-negro já era notória, mas a cereja do bolo veio na Arena da Baixada. Aos 32 minutos da etapa final, defendeu um pênalti cobrado por Walter, do Athletico-PR, e saiu como herói do primeiro jogo das oitavas de final da Copa do Brasil (vitória do Fla por 1 a 0). Nada mal para quem não via um empréstimo com maus olhos no início do ano.

"Estou feliz, é um sonho. Estou desde garoto no Flamengo, sempre foi um sonho defender essa camisa. Mas ser importante para o grupo vale mais, fico feliz pela vitória. É dar continuidade para as coisas seguirem da melhor forma possível", disse ele à "Globo".

A ascensão meteórica de Hugo embaralhou as cartas e aqueceu a disputa pelo gol da equipe. Seja pela pandemia ou por outras questões, Domènec Torrent já precisou usar os quatro jogadores disponíveis para a posição. César e Gabriel Batista não chegaram a comprometer, mas não agarraram a camisa com firmeza. Antes absoluto, Diego Alves se contundiu, contraiu a doença e acompanhou a subida daquele que era o seu último concorrente. Em meio a um processo de renovação de contrato que se arrasta, Alves teve de aplaudir, do banco de reservas, a noite de herói de Neneca. Ciente de que tem uma situação delicada em mãos, Dome tratou de valorizar todos:

"Temos a sorte de ter quatro goleiros. Quando precisamos que joguem, todos são excelentes. Agora, o Diego está voltando aos treinamentos. Já falamos com os goleiros, vamos falar de novo, mas o mais importante agora é estar focado no próximo jogo. Temos quatro jogadores muito bons, podem jogar todos. Temos muitos jogos. Mais importante é que temos quatro excelentes".

No dia a dia do Ninho do Urubu, o jovem, de 21 anos, é considerado dos mais íveis e queridos pelo elenco. A diretoria e o técnico espanhol, por sua vez, tentam cercar de cuidados o atleta para que ele não se perca no meio do caminho. Com muita conversa e conselhos, a cúpula do futebol lapida uma joia que era vista como o futuro, mas que furou a fila e antecipou os fatos.

"São quase 50 anos de jornalismo esportivo. Sinceramente, não me recordo de um início de um goleiro assim. Nem o Júlio César, quando subiu para os profissionais do Flamengo substituindo o Clemer. A vitória teve nome e sobrenome: "Hugo Souza". Ele é espetacular. O Neneca foi um monstro", opinou Renato Maurício Prado, colunista do UOL Esporte.

Com o garoto do Ninho em alta, os rubro-negros viram suas atenções para o Brasileirão. No domingo (1), às 16h, no Maracanã, o time encara o São Paulo, em jogo que pode valer a liderança da competição para os atuais campeões. Com três dias de treino pela frente, não é improvável que Torrent promova o retorno de Diego Alves contra o Tricolor paulista. Para muitos torcedores, porém, o coração dos rubro-negros já tem um outro titular.

Flamengo