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

Atlético-MG

Atlético-MG conquista um título a cada quatro meses desde a estreia de Hulk

Hulk, do Atletico-MG comemora na vitória contra o America-MG em partida no estádio Mineirão - Fernando Moreno/AGIF
Hulk, do Atletico-MG comemora na vitória contra o America-MG em partida no estádio Mineirão Imagem: Fernando Moreno/AGIF

Victor Martins

Colaboração para o UOL, em Belo Horizonte (MG)

10/04/2023 04h00

Desde que Hulk chegou à Cidade do Galo, em 2021, o Atlético-MG se acostumou a levantar taças. A conquista do Campeonato Mineiro foi a sexta do atacante com a camisa alvinegra, em dois nos de clube.

O que aconteceu

Hulk estreou pelo Atlético em 7 de março de 2021, na goleada por 4 a 0 sobre o Uberlândia, no Mineirão, pela primeira fase do Mineiro. O atacante não fez gol, mas deu a assistência para o gol de Diego Tardelli, o quarto na goleada atleticana.

Em 25 meses de Atlético, Hulk já conquistou seis títulos: Campeonato Brasileiro, Copa do Brasil, Supercopa do Brasil e três vezes o Campeonato Mineiro.

O camisa 7 do Galo fez a "dobradinha" em quatro oportunidades, levando o prêmio de artilheiro além do títulos. Isso aconteceu no Brasileirão e na Copa do Brasil, ambos em 2021, e duas vezes no Mineiro, em 2022 e 2023.

Com Hulk em campo o Atlético não foi derrotado em nenhuma final. O artilheiro esteve em cinco decisões com o Galo e saiu vitorioso em todas: Copa do Brasil, Supercopa do Brasil e três Mineiros.

Vir para o Atlético foi uma das melhores decisões da minha carreira. Estou muito feliz. Olho para trás e vejo o quanto essa caminhada foi gratificante para mim. Cada dia minha sinto mais em casa, mais à vontade e parte desse clube que me acolheu tão bem. Hoje, o clube mora não só no meu coração como no de todos os meus familiares. Todos são Galão da Massa Declarou Hulk, em março, quando completou dois anos de Atlético

Outros feitos

Com 78 gols anotados pelo Atlético, Hulk é o segundo maior artilheiro do clube no Século 21. O atual camisa 7 do Galo está atrás apenas de Diego Tardelli, que marcou 112 vezes.

O jogador paraibano já é o 26º maior goleador em toda a história do Atlético. O 20º lugar é de Paulo Isidoro, que marcou 98 vezes. O líder isolado é Reinaldo, com 255 gols.

Hulk tem 48 gols marcados no Mineirão, o que faz dele o maior goleador do estádio desde a reforma para receber a Copa do Mundo de 2014.

O Gigante da Pampulha é também o estádio em que o jogador mais fez gols na carreira. Até a decisão do Mineiro, o Mineirão dividia o posto com o Estádio do Dragão, do Porto, de Portugal.

Atlético-MG