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

Ágatha e Duda estreiam nas Olimpíadas com vitória fácil sobre argentinas

Aghata e Duda enfrenta as argentinas Gallay e Pereyra - Wander Roberto/ COB
Aghata e Duda enfrenta as argentinas Gallay e Pereyra Imagem: Wander Roberto/ COB

Beatriz Cesarini

Do UOL, em Tóquio

24/07/2021 00h03

Ágatha e Duda venceram a dupla argentina Gallay e Pereyra na noite dessa sexta-feira (23), na estreia das Olimpíadas 2020, por 2 sets a 0, com parciais de 21 a 19 e 21 a 11. Após um primeiro set mais equilibrado, as brasileiras, que são a dupla número 1 do mundo, tiveram vida fácil para fazer 2 a 0 e iniciar os Jogos com o pé direito.

O primeiro set começou com as adversárias mais efetivas e conseguindo se manter na liderança do placar por quase metade da etapa inicial. A dupla argentina chegou a abrir quatro pontos de vantagem, mas Ágatha e Duda correram atrás e equilibraram bem a partida. Foi a partir do 15º ponto que as brasileiras tomaram a frente e seguraram a ponta no placar. Mesmo sem conseguir abrir uma boa margem, a dupla fechou o primeiro set em 21 a 19, sem sustos na reta final.

O segundo set teve um começo avassalador das brasileiras, com bonitos pontos e uma vantagem que chegou a ser de seis pontos. Gallay e Pereyra tentaram se manter vivas, mas viram a distância aumentar ainda mais e o Brasil despontar na liderança. Com tranquilidade, Ágatha e Duda istraram a partida, levando o segundo set sem nenhum problema, do começo ao fim.

Após a partida, a dupla brasileira itiu o nervosismo no começo da partida e disseram que "já estavam contando" com um início difícil depois de finalmente entrarem em quadra dois anos depois de garantirem vaga nas Olimpíadas de Tóquio. Esta é a primeira Olimpíada de Duda, a mais jovem da dupla.

"No segundo set foi o time Ágatha a Duda jogando. A gente conversando mais, a gente se divertindo em quadra, colocando a nossa tática em prática, melhor que o primeiro set", afirmou Ágatha, que está em sua segunda edição de Jogos Olímpicos.

"Eu estava muito feliz de estar ali dentro, é um sonho", contou Duda.

Calor e arena vazia são fatores

A temperatura alta em Tóquio foi uma dificuldade durante a partida. Apesar de já estarem há mais de dez dias na cidade, dentro de quadra ainda parecia "um caldeirão" para Ágatha.

"Muito quente. Tiveram momentos do jogo que eu tive que puxar o ar, tirar, para poder aguentar e fazer o próximo jogo. Teve até uma hora que o árbitro me lembrou que tinha que tomar água", contou a atleta.

A falta de torcida no estádio também foi lembrada pela dupla. Depois de jogar no Rio-2016, com uma grande torcida a favor, Ágatha disse que gostaria de poder contar com pessoas acompanhando a partida.

"Eu gosto de torcida, para mim é muito difícil chegar num estádio maravilhoso desse, lindo, e não ter ninguém. Mas é uma coisa que a gente vai se acostumar, já estamos desde o ano ado. Mas que seria muito massa ter gente, seria".

A dupla número 1 do mundo volta à areia diante das chinesas Wang/X.Y.Xia. A partida será na terça-feira, às 10h (de Brasília).