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

Sem Suelen e Baby, judô do Brasil pode voltar ao patamar de 2004

Brasileiro Rafael Baby (de branco) em ação contra Ushangi Kokauri nas Olimpíadas de Tóquio - Sergio Perez/Reuters
Brasileiro Rafael Baby (de branco) em ação contra Ushangi Kokauri nas Olimpíadas de Tóquio Imagem: Sergio Perez/Reuters

Beatriz Cesarini

Do UOL, em Tóquio

30/07/2021 05h27

A sexta-feira (30) olímpica não reservou capítulo feliz para o judô brasileiro nas Olimpíadas de Tóquio. Após avançarem às quartas de final da categoria pesado, Maria Suelen Altheman (+78kg) e Rafael Silva, o Baby (+100kg) acabaram derrotados e, na repescagem, viveram dramas diferentes, mas com o mesmo destino: ambos viram o sonho de medalhar na disputa individual chegar ao fim. Sem a dupla, o judô brasileiro pode voltar ao patamar de 2004, quando saiu dos Jogos de Atenas com dois bronzes.

A tradição de ao menos um atleta no pódio foi mantida — no Japão o meio-leve (66kg) Daniel Cargnin e a meio-pesada (78kg) Mayra Aguiar ficaram com o bronze. Já são dez edições dos Jogos Olímpicos seguidos assim. A tendência de alta dos últimos anos, porém, deve parar.

Depois dos quatro pódios de Londres-2012 e dos três da Rio-2016, ambos com medalhas de ouro (Sarah Menezes em 2012 e Rafaela Silva em 2016), os dois bronzes deste ano vieram na repescagem após derrotas nas quartas (Mayra) e semis (Cargnin).

Em 2008, o Brasil também não chegou às semifinais, mas subiu ao pódio três vezes, com Leandro Guilheiro (73kg), Tiago Camilo (81kg) e Ketleyn Quadros (67kg).

Em 2004, foram também duas medalhas de bronze, com Guilheiro (73kg) e Flavio Canto (81kg). É bom ressaltar, porém, que mesmo com o mesmo número de medalhas individuais, o desempenho brasileiro em Tóquio já é superior ao de Atenas: além dos dois terceiros, o Brasil fez também três sétimos (os atletas que se classificaram para a repescagem), com Ketleyn Quadros (57kg), Maria Suelen (+78kg) e Baby (+100kg). Em 2004, só Edinanci Silva (78kg) alcançou o feito.

O Brasil ainda tem chances de somar uma medalha a mais no judô em 2021: na competição por equipes, que é disputada pela primeira vez nas Olimpíadas em Tóquio.

Eliminações de Baby e Suelen

Eliminado nas quartas de final pelo georgiano Guram Tushishvili, Baby teve o imenso desafio de encarar o francês Teddy Riner, considerado o melhor de todos os tempos da categoria. Batendo os 180,5 kg, o brasileiro acabou sendo derrotado de maneira fácil, sofrendo um ippon com 46 segundos de luta e pondo fim ao sonho da terceira medalha olímpica individual. Agora o judoca de 34 anos terá pela frente os combates por equipes.

Suelen, por sua vez, nem subiu ao tatame por conta de uma lesão no joelho ocorrida após levar ippon da sa Romane Dicko. Ela precisou ser levada ao hospital da Vila Olímpica, onde realizará exame de imagem. Caso a suspeita de rompimento do tendão patelar seja confirmada nas próximas horas, a judoca de 32 anos não disputará as lutas por equipe e está, oficialmente, fora dos Jogos Olímpicos.

Competição por equipes

A competição por equipes começa neste sábado (31) e funciona da seguinte maneira: os times serão formados por três mulheres e três homens, dos pesos leve (-57 kg e -73 kg), médio (-70 kg e -90 kg) e pesado (+78 kg e +100 kg), e que necessariamente se classificaram para a disputa individual.