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

Vítima de feminicídio alertou amiga sobre risco de ser morta em presídio

iStock
Imagem: iStock

José Maria Tomazela

Em Sorocaba

06/02/2019 15h19

A jovem Nicolly Guimarães Sapucci, de 22 anos, assassinada durante visita ao namorado no Centro de Detenção Provisória (CDP) de Jundiaí, no dia 27 de janeiro, revelou a uma amiga que tinha medo de ser morta por ele durante a visita. Em áudio juntado ao inquérito que apura o feminicídio, ela diz que precisava ir ao CDP, mas poderia ser assassinada pelo companheiro, Michael Denis Freitas, de 25 anos, preso por roubo. "Vou tentar desenrolar, se ele não me matar. Você sabe que estou indo no CDP, se acontecer qualquer coisa comigo, você já sabe que foi ele", disse à amiga.

Conforme os áudios que estão em poder da Delegacia de Defesa da Mulher (DDM), responsável pela investigação do crime, Nicolly revela que pretendia ir ao CDP para esclarecer boatos sobre uma comemoração de aniversário de que havia participado na companhia de outros homens. Ela temia que a mãe do preso, que também o visitaria, dissesse que era "patifaria" o que ela havia feito. No áudio, a jovem afirma que "não tinha mais nada" com o preso e que ele era "um louco". De acordo com a Secretaria da istração Penitenciária (SAP), Nicolly estava cadastrada como visitante íntima desde maio de 2018 e realizava visitas regulares.

No dia do crime, a jovem entrou no presídio no horário regular, mas não saiu da cela onde acontecia a visita íntima no horário determinado. Por volta das 15h50, alguns detentos solicitaram socorro alegando que a visitante teria sofrido um acidente na cela. A jovem foi encontrada com hematomas e inconsciente. Levada para o Hospital São Vicente, ela acabou morrendo em consequência de um traumatismo craniano. À polícia, o preso relatou que, durante briga motivada por ciúme, derrubou a mulher da cama e a agrediu com socos e pontapés.

A polícia já ouviu os depoimentos do agressor, da mãe da vítima e dos funcionários do CDP, inclusive o diretor. A investigação indica que o casal, que se relacionava há dois anos, havia rompido duas semanas antes do crime, tanto que a jovem criou uma nova página em rede social em que se apresenta como solteira. Ela não pediu, no entanto, a retirada do nome do rol de visitas do preso. Segundo familiares, Nicolly queria seguir sua vida com o filho de 4 anos e só voltou ao presídio para explicar isso ao ex e esclarecer os boatos. Após ser autuado em flagrante pelo feminicídio, Freitas foi transferido para uma cela de segurança máxima na penitenciária de Presidente Venceslau, no oeste paulista.