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

A vida dele dentro de mim

Silvia Poppovic perdeu o marido, seu melhor amigo, há dois meses. Chora todo dia, mas quer viver por ele

Luciana Bugni Colaboração para Universa, em São Paulo Julia Rodrigues/UOL

Marcelo descobriu que tinha leucemia em novembro de 2021. Fizemos um tratamento clínico que não deu certo: a ideia era segurar a leucemia para tentar prolongar a vida dele. Em junho de 2022, o médico disse que teríamos que tentar o transplante de medula óssea. Aos 77 anos, era um teste ar pelo procedimento, mas as condições físicas dele eram tão boas que a equipe médica deu o aval, e ele estava pronto para transplantar.

Começamos a buscar a medula compatível: das quatro filhas dele, duas já tiveram filhos, o que impede a doação, e uma tinha mais de 40 anos. A mais nova, Ana, minha filha com ele, tem 22 anos e era compatível. Foi uma grande alegria.

ei dois meses dentro do quarto do hospital com o Marcelo após o transplante. De manhã, à tarde, à noite, não colocava a cara nem no corredor. Ele era muito comprometido com o tratamento, tinha uma resiliência incrível. Deu certo: houve a pega da medula.

Estava se recuperando em casa, mas a imunidade seguia baixa. Ele teve uma apendicite que acabou evoluindo para outros problemas respiratórios e renais, não aguentou e morreu [o médico Marcelo Bronstein, marido de Silvia, morreu em 25 de novembro de 2022].

"Ele foi intubado e me falou: 'Foi um prazer te conhecer'"

A primeira coisa que gosto de dizer é que o transplante de medula óssea é um procedimento muito delicado, mas tem grandes chances de sucesso. Conosco funcionou. O que o levou foram intercorrências que aconteceram depois de o processo ter dado certo.

Mas tudo isso foi muito frustrante. Foi tanto sofrimento, teve tanta dureza, foi tão complicado... Durante o tempo todo, Marcelo tinha controle da situação. Esteve lúcido sobre o que acontecia e envolvido com a própria recuperação. O que ele lutou não foi brincadeira [Silvia faz uma pausa, chorando]. Marcelo foi muito, muito forte. Ele gostava da vida. Viveu bem e sempre falava pra mim que nós tínhamos muita cumplicidade nesses 27 anos de relacionamento. Afirmava que há coisas piores que a morte. Uma delas é levar uma vida sem dignidade.

A gente nunca se consolou sobre o que acontece porque realmente achávamos que ele ia sobreviver, mas quando ele foi ser intubado, dessa última vez, me falou: "Olha, foi um prazer te conhecer". Ele falava essas coisas, como "você foi muito importante na minha vida". Mas eu dizia que nem precisava falar disso porque estaria melhor em breve.

"Eu escolho a vida"

Marcelo era um médico muito respeitado pelo trabalho que fazia. Tinha uma baita repercussão internacional, foi homenageado pelos quatro continentes, e eu não estou exagerando. Quando eu o conheci, já era essa figurona: eu tinha 40 anos e ele, aos 50, estava no auge. Ele tinha muitos interesses: era uma pessoa que gostava de medicina, era professor na USP [Universidade de São Paulo], gostava muito de música clássica, se aprofundava, ouvia todos os concertos... A gente viajava pelo mundo atrás de óperas.

Ele também estudava Segunda Guerra, então vimos muitos filmes juntos. Tivemos uma vida cheia de trocas. Esses dois quadros que estão na sala são do mesmo artista [estão na imagem no início desta reportagem]. Compramos antes de morar juntos. Sabíamos que um dia os quadros ficariam lado a lado. Ficou lindo, não ficou?

Depois que ele se foi, decidi: vou viver por ele e por mim. Marcelo está aqui dentro de mim completamente presente. Tenho um espaço faltante que é alimentado por lembranças boas.

Também por sofrimento. E muitas vezes com choro, com saudade. Com verdade.

Mas tenho uma expectativa de vida grande ainda. Eu escolho a vida.

A essa altura não posso perder a coisa mais importante, pela qual o Marcelo batalhou tanto: o prazer de viver.

"Nossa, que viuvez, hein" custou a sanidade de Ana Vilela, mas cantora quer transformar dor em novas canções

Ler mais

Zô Guimarães/UOL

'Você é minha mãe, né?'

A história da influenciadora Gabi Oliveira, que aos 28 adotou, sozinha, dois filhos, de 9 e 4 anos

Ler mais
Topo