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

Eurocopa - 2021

Vilão ou herói? Unai Simón é aposta de técnico e tem fama de 'paçoqueiro'

Unai Simón tem fama de "entregador", mas virou herói um jogo pós falhar de forma bizarra na Euro - Martin Rose - UEFA/UEFA via Getty Images
Unai Simón tem fama de 'entregador', mas virou herói um jogo pós falhar de forma bizarra na Euro Imagem: Martin Rose - UEFA/UEFA via Getty Images

Bernardo Gentile

Do UOL, no Rio de Janeiro

03/07/2021 04h00

O técnico Luis Enrique surpreendeu a todos ao entregar a titularidade do gol da Espanha a Unai Simón. O goleiro do Athletic Bilbao tem 24 anos e superou o badalado De Gea, do Manchester United. Apesar de o camisa 1 não viver um bom momento na Inglaterra, a escolha pelo jovem gerou surpresa.

Isso porque, na Espanha, Unai Simón tem uma fama de 'paçoqueiro', que, na gíria do futebol, quer dizer o jogador que entrega o jogo. Para se ter uma ideia, ele cometeu seis falhas que resultaram em gols na última temporada. Os erros em série renderam o 'título' de goleiro que mais falhou entre as cincos principais ligas da Europa neste período.

Principalmente por isso, a aposta de Luis Enrique gerou polêmica na Espanha. Por mais que esteja em má fase, De Gea é um jogador mais experiente: tem 30 anos e atua por um grande clube. Os questionamentos sobre a escolha do técnico espanhol se acentuaram nas oitavas de final da Eurocopa, no jogo contra a Croácia.

Unai Simón fez o que dele se esperava. Apesar de boas defesas, novamente mostrou seu outro lado. Falhou de forma grotesca ao receber e do companheiro: errou o domínio e viu a bola morrer no fundo das redes. A 'paçocada' ocorreu aos 19 minutos do primeiro tempo e colocou o adversário na frente do placar.

Menos mal que a Espanha reagiu e virou para 3 a 1 - ainda cedeu o empate nos acréscimos e conseguiu triunfar na prorrogação. Simón, no entanto, voltou a conviver com a desconfiança por parte dos torcedores. A falha veio em momento complicado: no primeiro jogo eliminatório da Eurocopa.

Mas o futebol permite que as histórias mudem completamente de um jogo para o outro. E foi justamente o que Simón fez. Nas quartas de final, contra a Suíça, a Espanha novamente sofreu para avançar. Só chegou às semifinais (vai enfrentar a Itália) graças ao vilão do jogo ado.

Simón foi gigante nas decisões de pênalti e fez três defesas importantíssimas. Com a vaga nas mãos, o goleiro ainda foi eleito o craque do jogo pela Uefa. "O futebol tem sido justo, somos vencedores justos. Devemos apagar rapidamente os erros, mas também redefinir esses sucessos porque um adversário muito difícil está chegando, seja ele quem for", disse o goleiro antes da Itália despachar a Bélgica.

Formado no Athletic Bilbao e com histórico de convocações para a seleção de base, Unai Simón tem valor de mercado avaliado em aproximadamente 20 milhões de euros (R$ 120 milhões) e contrato até junho de 2025.