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

Quatro brasileiros são isolados após contato com contaminado, mas competem

Thiago Rosário, atleta brasileiro dos 800m que está nos Jogos Olímpicos de Tóquio - Reprodução/Instagram
Thiago Rosário, atleta brasileiro dos 800m que está nos Jogos Olímpicos de Tóquio Imagem: Reprodução/Instagram

Demétrio Vecchioli

Do UOL, em Tóquio

01/08/2021 00h25

Quatro atletas do atletismo brasileiro foram colocados em isolamento depois de terem tido contato, em voos diferentes, com pessoas que testaram positivo para covid. Os casos mais recentes são de Thiago André e Caio Bonfim, que vieram da Suíça. Ambos estão em isolamento, mas podem competir. Por enquanto, nenhum brasileiro testou positivo para covid em Tóquio, onde está sendo realizada as Olimpíadas.

Thiago, que competiu ontem nos 800m, e Caio, da marcha atlética, vieram para Tóquio em voo saído da Suíça e, no avião, estavam sentados próximos a pessoas que testaram positivo para covid seis dias depois da viagem. Já em Tóquio, eles e a mãe e técnica de Caio, Gianetti Sena, foram procurados anteontem (29) pela organização, que os avisou da necessidade de ficarem em isolamento.

O Comitê Olímpico do Brasil (COB), porém, tem aplicado um protocolo de testes mais rígido que o dos organizadores, com testagem diária por PCR de todos os integrantes da delegação. Assim, o COB demonstrou que Caio, Thiago e Gianetti não estavam contaminados e conseguiu que as restrições a eles fossem menos duras.

Os três foram levados a um apartamento no prédio ao lado do laboratório olímpico, dentro da Vila Olímpica. Thiago teve que levar a própria cama do prédio do Time Brasil para essa nova hospedagem, um dia antes de competir. Ontem (30), ele participou das eliminatórias dos 800m, sem conseguir avançar à final.

Além de ficar isolado, Thiago precisa usar máscara N95 o tempo todo, mas não tem nenhuma restrição em competir. O mesmo vale para Caio e Gianetti, que já viajaram para Sapporo, no norte do Japão, onde serão realizadas as provas de maratona e marcha atlética. Lá, também ficarão isolados.

Antes, o Brasil já havia tido problemas parecidos com outros dois atletas. Felipe Vinicius dos Santos veio de Frankfurt sentado próximo a uma pessoa que testou positivo, enquanto Erica Sena, que mora no Equador, estava com a delegação daquele país que teve um caso positivo, também. Nenhum dos casos foi relatado pelo COB à imprensa.

Errata: este conteúdo foi atualizado
A matéria inicial informa, erradamente, no título e no corpo do texto, que um dos atletas que estava em isolamento era Thiago Braz, quando na verdade era outro Thiago, que também competiu ontem, Thiago André do Rosário. A informação também constou na homepage do UOL. O erro foi corrigido.