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

Ageless

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

Aos 50 anos, professora vira campeã de fisiculturismo depois de ficar cega

Reprodução/Instagram
Imagem: Reprodução/Instagram

Colunista do UOL

19/08/2022 04h00

Receba os novos posts desta coluna no seu e-mail

Email inválido

Aos 27 anos, a catarinense Laura Bopreé Justino perdeu a visão de um olho depois de um erro médico. Aos 46, uma segunda notícia: o outro olho também estava comprometido e a visão estava indo embora. "Eu fiquei apavorada. Achei que a vida ia acabar", diz a professora aposentada. Quatro anos depois, Laura se tornou, aos 50 anos, a primeira campeã de fisiculturismo com deficiência visual do país.

Foi justamente o esporte que a ajudou a lidar com a perda da visão. "Quando recebi o diagnóstico, procurei uma escola para deficientes visuais. Vi que as pessoas ali eram independentes e eu queria chegar lá. Uma amiga nessa época me presenteou com a mensalidade de uma academia para me ajudar a me sentir melhor", conta ela. "O instrutor me disse: eu te ajudo. Mas mesmo assim eu levei uma semana para voltar, eu tinha medo de me machucar numa academia sem enxergar."

Em algumas semanas, Laura conta que começou a se sentir mais segura. E ou a levar os treinos a sério. O próximo o foi procurar um médico do esporte. "Meus hormônios estavam detonados. Ele me ajudou a melhorar tudo e eu disse a ele: tenho 46 anos e sonho em ser atleta. Ele me respondeu: você pode tudo. Isso me fez acreditar."

A partir daí Laura ou a viver uma vida de atleta. Cuidados com a alimentação, treinos intensos, sono reparador. E foi vendo os resultados aparecerem. Mas participar de competições parecia algo muito distante de sua realidade. "As pessoas diziam: já é hora de parar e ela está começando agora", conta Laura.

O empurrão para levá-la ao primeiro campeonato veio do famoso fisiculturista Fernando Sardinha, que soube da história da Laura pelas redes sociais. "Eu disse a ele: mas como eu vou subir num palco, de salto alto? Eu não enxergo. E ele disse: 'pode deixar, eu vou conduzir você'."

Assim foi. E a estreia de Laura foi em grande estilo. Campeã de sua categoria no primeiro campeonato. Desde então ela já foi vencedora em mais uma competição.

"A bandeira da inclusão, carrego comigo. Tento mostrar para as pessoas com limitações, ou aquelas que não têm limitação nenhuma, que os desafios estão aí para serem superados", diz a atleta.

Reposição hormonal e menopausa

Laura conta que não pode fazer uso de anabolizantes, comuns no esporte para aumentar o ganho de músculos, porque isso poderia prejudicar ainda mais sua saúde. "Mas a menopausa chegou aos 47 anos e faço reposição hormonal com acompanhamento médico."

Além de toda a transformação do corpo, Laura também resolveu inovar no visual. Raspou os cabelos e assumiu os fios grisalhos. "A vida a rápido. A gente tem que entender que nunca é tarde para começar nada."