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

Queniana que venceu meia de Paris corria 12 km por dia para estudar

Queniana Sheila Chepkirui venceu a meia-maratona de Paris - Arquivo Pessoal
Queniana Sheila Chepkirui venceu a meia-maratona de Paris Imagem: Arquivo Pessoal

Do UOL, em Paris (França)

05/03/2023 07h52

Única menina e a mais velha entre cinco irmãos, Sheila Chepkirui assumiu desde muito cedo a responsabilidade pela casa em que morava, em uma vila pequena, no Quênia. A rotina não era gentil: para chegar à escola, ela precisava percorrer três quilômetros —trajeto que era repetido quatro vezes ao dia.

"Eram três quilômetros para chegar à escola. No intervalo do meio do dia, eu precisava voltar para preparar o almoço para os meus irmãos. Eles almoçavam e nós voltávamos para a escola. Mais três quilômetros. E outros três ao fim do dia", ela conta em entrevista ao UOL, concedida durante evento da Adidas, marca que a patrocina. Só que, em cada trajeto, Sheila tinha de correr.

O tempo era curto para istrar todos os afazeres. Ela, então, corria o mais rápido que podia para não se atrasar para a aula. À medida que os irmãos foram crescendo, as idas e vindas até a escola se tornaram uma brincadeira competitiva: eles apostavam corrida e, quem chegasse mais rápido, ganhava. "Não deixava que ganhassem, não. Mesmo quando já estavam maiores que eu, eu continuava mais rápida", conta.

Aos 33 anos, ela continua a mais rápida. Pelo menos entre as mulheres que disputaram neste domingo (5) a meia-maratona de Paris. Sheila terminou a prova de 21 quilômetros em 1h06m01. A disputa foi apertada entre as também quenianas Vivian Melly e Marion Kibor, mas Sheila levou a melhor.

Sonho olímpico

O protagonismo queniano nas corridas é uma realidade que, segundo Sheila, só é possível com treino, dedicação, mas com um contato com esse esporte que vem desde a infância. A corrida é o esporte do Quênia. Mas, entre muitos atletas, não existe uma relação tão amigável. Segundo a corredora, o instinto competitivo é tanto, que fica cada um no seu quadrado. "Todo mundo é muito bom e todo mundo quer ganhar. Tenho alguns amigos, mas não é todo mundo amigo, não", ri.

A timidez de Sheila se permite transparecer por meio de um sorriso largo e de mãos inquietas, que tentam compor as palavras que às vezes faltam. Ela diz, esperançosa, que seu sonho é estar nos Jogos Olímpicos de Paris. E é versátil no que diz respeito às modalidades de corrida: ganhou medalha de bronze nos 10 mil metros dos Jogos da Commonwealth de 2022; foi campeã africana de 5 mil metros em 2016, com o recorde do campeonato. No último setembro, se fincava no quarto lugar na lista mundial de todos os tempos dos 10 quilômetros de estrada.

É um sonho, mas é difícil chegar às Olimpíadas. Não sei se vai ser possível. No Quênia, tem muito corredor excelente. Há muitas opções de convocação. Ainda assim, já comecei a treinar intensamente, a me preparar, para voltar a Paris daqui a um ano."

Dobradinha queniana e francês em terceiro

Os ses celebraram, numa ala de torcedores animados e amparados pela temperatura -6ºC em Paris-, o tempo do corredor foi o terceiro melhor do dia: 59m55. Ficou atrás dos quenianos Roncer Kipkorir, que conquistou o primeiro lugar com 59m38, e Josphat Chumo, que terminou a prova aos 59m53.

Finalista olímpico nos 5 mil metros, Gressier se consagra como o terceiro francês mais rápido na distância -21 quilômetros.

torna-se o terceiro francês mais rápido na distância (21,0975 km), atrás de Julien Wanders (59'13''), que representa a Suíça em competição internacional, e Morhad Amdouni (59'40'' ).