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

Rafael Reis

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

Como guerra 'esconde' shows de Malcom na Rússia e prejudica seu futuro

Malcom é o artilheiro e melhor jogador do futebol russo nesta temporada - Mike Kireev/NurPhoto/Getty Images
Malcom é o artilheiro e melhor jogador do futebol russo nesta temporada Imagem: Mike Kireev/NurPhoto/Getty Images

Colunista do UOL

12/05/2023 04h20

Receba os novos posts desta coluna no seu e-mail

Email inválido

Malcom já destruiu o seu recorde pessoal de gols em uma única temporada, pela primeira vez na carreira deve ser o artilheiro de um campeonato nacional e tem tudo para escolhido como o melhor jogador da Rússia em 2022/23.

O problema é que, por conta da guerra na Ucrânia, quase ninguém no Ocidente tem acompanhado o melhor momento da carreira do atacante revelado nas categorias de base do Corinthians.

O boicote a tudo que é ligado à Rússia desde que as tropas de Vladimir Putin resolveram invadir o país vizinho, em fevereiro do ano ado, fez com que sua liga nacional parasse de ser transmitida na maior parte da Europa e levou à exclusão dos clubes do país das competições continentais, como a Liga dos Campeões.

Por isso, só mesmo os russos e alguns poucos dos seus aliados puderam acompanhar os 25 gols marcados por Malcom nesta temporada (sua melhor marca era de 12 tentos em um ano, quando jogava no Bordeaux, da França) e o protagonismo exercido por ele na conquista do quinto título nacional consecutivo do Zenit São Petersburgo.

Só na Premier League russa, o brasileiro já meteu 22 bolas nas redes. Desde 2012, quando o marfinense Seydou Doumbia marcou 28 vezes, a competição não tinha um artilheiro com números tão altos.

Na atual temporada, Malcom também conseguiu pela primeira vez na carreira anotar quatro gols em uma mesma partida (no 5 a 1 sobre o Krylya Sovetov, na semana ada) e participou de pelo menos três jogadas (com finalizações suas ou assistências) que terminaram com o placar movimentado em outras duas oportunidades.

É claro que alguém pode questionar que o futebol russo, especialmente depois da saída de muitos jogadores estrangeiros por conta da guerra e com a consequente queda de nível técnico, não é um parâmetro tão alto assim de sucesso.

Mas até aí Malcom acabou sendo prejudicado pelos reflexos do conflito bélico. Afinal, no auge da sua forma, acabou sendo impedido de medir forças contra potências do porte de Manchester City e Real Madrid e mostrar qual é o seu patamar máximo.

Essa escassez de testes de alto nível (leia-se participação na Champions, na Liga Europa e afins) diminui a possibilidade de transferência do atacante para algum centro mais importante do futebol internacional e também as chances de ser convocado para a seleção brasileira.

No começo do ano, o Paris Saint-Germain sondou a possibilidade de levar Malcom de volta para a França. No entanto, achou a pedida de 30 milhões de euros (R$ 161,8 milhões) alta demais para alguém que está afastado da elite e que requer uma avaliação tão complexa.

Um outro fator que pode atrapalhar a ida do atacante para um outro futebol é o fato de ele estar nos planos da seleção local. Putin já concedeu cidadania russa para o camisa 10. Mas, pelas regras da Fifa, ele precisa ter cinco anos de residência ininterrupta no país para estar apto a defender uma nova equipe nacional.

No Zenit desde 2019, Malcom irá completar esse período necessário para completar a naturalização em agosto do próximo ano. Caso deixe a Rússia antes disso, não poderá ser convocado pela seleção, que negocia com a Fifa para derrubar sua suspensão e poder participar das eliminatórias da Copa do Mundo-2026.

Além de Malcom, outros seis jogadores brasileiros fazem parte do elenco que deu continuidade à hegemonia do Zenit no futebol russo: os zagueiros Robert Renan e Rodrigão, o lateral esquerdo Douglas Santos, capitão do time, o meia Wendel e os meias-atacantes Claudinho e Gustavo Mantuan. O goleiro Ivan também chegou a defender o clube na primeira metade da temporada, mas foi emprestado ao Vasco em janeiro.

Já campeã nacional (tem 13 pontos de vantagem para o CSKA Moscou, vice-líder), a equipe de São Petersburgo tem mais quatro compromissos oficiais até o fim da temporada. Mas a tendência é que os brasileiros saiam de férias antecipadas após a partida contra o Krasnodar, amanhã.