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

Papo de vagina

Sangue no sexo a vazamento no bar: só quem menstrua tem histórias assim

Natália Eiras

Da Universa

08/01/2019 04h00

Assim como menstruar todos os meses é algo completamente natural, acidentes recorrentes disso também são. E com algum jogo de cintura, senso de improvisação e ajuda de amigos é fácil lidar com vazamentos e manchas que, no fim das contas, se tornam boas histórias para contar. A Universa reuniu relatos que qualquer pessoa que menstrua vai se identificar: 

via GIPHY

Melecada no banco

"Turistando em Belo Horizonte, não saquei que tinha descido (veio três dias antes do esperado), sentei para esperar um amigo usar o banheiro. Quando levantei, deixei aquela melecadinha no banco cor de marfim. Fui bem tranquila sacando o álcool em gel da bolsa e um lencinho, limpei, coloquei um panfleto em cima e continuei sentada. Fingindo que nada aconteceu. Meu amigo voltou e até hoje não sabe a vergonha que a vontade de fazer xixi dele me causou."
Mylena Rocha, 28, designer, de São Paulo (SP)

Cena de crime

"Trabalhava em uma agência de comunicação superpequena, com banheiros individuais, ao invés de cabines. Eu não tinha muita prática com o coletor menstrual e ele começou a vazar. Na hora de trocá-lo, eu não sei como, escapou da minha mão e caiu no chão, fazendo uma verdadeira cena de crime. Eu peguei todo o papel higiênico que podia e limpei, enquanto ria de desespero. Ninguém ficaria sabendo se eu não tivesse saído do banheiro segurando o riso. Não me aguentei e contei para o meu melhor amigo do trabalho, mas ficou entre a gente."
Paula Oliveira, 25, publicitária, de São Paulo (SP)

Caindo de boca

"Estava no rala e rola com um menino. Ele desceu para fazer um oral em mim. Estranhei que eu estava 'molhada' demais, deixei o jogo seguir porque estava gostoso. Quando ele levantou o rosto, estava com a boca toda ensanguentada. A minha menstruação decidiu descer bem quando ele estava com a boca na bendita. Não sabia onde enfiar a cara, mas tudo correu bem, no fim das contas. Ele lavou o rosto e continuamos a brincadeira no banho." 
Isabela Silva, 31, vendedora, de Mauá (SP)

via GIPHY

Lavando roupa na pia

"Mês ado, véspera de feriado, happy hour da firma, jogando truco com a galera no boteco. Levantei da cadeira e senti a 'cachoeira' de sangue. A cadeira ficou melada (sorte que ela era vermelha), levantei arrastando a bunda para já dar uma limpada com a calça mesmo, disfarçadamente. Corri para o banheiro e vejo que metade do sangue do meu corpo vazou do absorvente, deixando a calcinha e a calça completamente ensanguentadas. Tirei a calça e a calcinha, lavei na pia do bar e vesti de novo. Fui embora como se nada tivesse acontecido."
Elea Proença, 29, a, de Santo André (SP)

Virou mocinha

"Na primeira vez que a minha menstruação desceu, minha mãe gritou pela casa 'A Amanda virou mocinha!'. O bairro inteiro ficou sabendo, certeza"
Amanda Sousa, 24, publicitária, de Embu das Artes (SP)

Absorvente interno (muito interno)

"Coloquei absorvente interno e fui trabalhar de moto. No caminho, senti que ele havia subido demais. Fui ao banheiro e cadê a cordinha? Tive que ir ao médico, porque eu estava com medo de infecção, cheguei lá com muita vergonha, mas ele foi muito gentil comigo e me disse que eu já era a quarta no dia a ar por isso."
Natalia Santiago, 29, a, de São José do Rio Preto (SP)

via GIPHY

"Perdi o ponto"

"Fui levantar do banco do ônibus e vi que deixei um rio de sangue para trás. Sentei de novo, perdi o ponto e esperei todo mundo descer para levantar arrastando a bunda para tentar limpar a tragédia toda com o bumbum mesmo."
Halini Varela, 28, web designer, de Londres (Inglaterra)

Sangue em alto mar

"Estava na praia e decidi dar um mergulho. No mar, senti uma colicazinha que eu sabia que não podia significar boa coisa. Dei aquela checada e percebi que tinha menstruado. E não tinha sido pouco sangue, era bastante. Aí lá vai eu ficar acenando para a minha mãe que estava na areia e pedir para ela me encontrar com uma canga na beira do mar. Fui voando até uma farmácia, comprei um absorvente e ei o dia com a canga na cintura." 
Silvana Moreira, 27, engenheira, de Barueri (SP)

Acidente noturno

"Estava dormindo na casa do boy, meu fluxo sempre é maior à noite, mas nunca havia tido problemas com isso. Mas, na hora que a gente acordou, eu levantei e ele 'seu short está com sangue!' Eu falei 'normal, vou tirar e lavar'. Fui ao banheiro, quando voltei, vi que estavam lençol, capa do colchão e colchão todos sujos."
Leticia Rodrigues, 20, auxiliar de cozinha, São José dos Campos (SP) 
 

Papo de vagina