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

'Não consegui gritar': Brasileira estuprada em Paris foi seguida após crime

Irmãs brasileiras iam embora da Torre Eiffel quando foram abordadas por dois homens; uma delas foi estuprada - AndreaAstes/Getty Images
Irmãs brasileiras iam embora da Torre Eiffel quando foram abordadas por dois homens; uma delas foi estuprada Imagem: AndreaAstes/Getty Images

De Universa, em São Paulo

10/02/2023 11h14Atualizada em 10/02/2023 11h16

A turista brasileira estuprada nos arredores da Torre Eiffel, em Paris (França), foi perseguida pelo abusador depois de conseguir fugir. A irmã mais velha da jovem, que flagrou o abuso, conseguiu resgatar a caçula batendo com o celular no homem que a atacava, mas afirmou que ele e um amigo ainda tentaram segui-las na rua. Eles teriam fugido após ver que as vítimas falavam com policiais. A vítima falou pela primeira vez sobre o caso à TV Record.

Eu fui falar com a patrulha, tentei explicar para o policial o que estava acontecendo e ele me disse que não poderia ser feito nada. Eu peguei e chamei a polícia outra vez (por telefone), falei: 'a polícia está aqui na minha frente e ninguém esta fazendo nada. Estou aqui 45 minutos'.
Brasileira vítima de estupro em Paris, em entrevista ao Jornal da Record

Os homens abordaram as irmãs no Campo de Marte, jardim nos arredores da Torre Eiffel, no sábado (4). Elas já estavam indo embora do ponto turístico, em direção ao metrô, quando os suspeitos se aproximaram e se ofereceram para acompanhá-las. O estupro da caçula ocorreu quando ela decidiu ir ao banheiro, se afastando da irmã, que mora na Espanha e estava na França a turismo. Depois de quase ser atacada, a mulher de 20 anos decidiu buscar a irmã e conseguiu resgatá-la.

Ele me empurrou e eu caí no chão. Ele veio para cima de mim e tapou a minha boca. Eu não conseguia gritar, eu tentava sair dali, mas eu não conseguia, porque ele era muito, muito forte.

As irmãs afirmaram que se sentiram desprotegidas pela polícia sa, reclamaram da falta de ação das autoridades e decidiram não se identificar. A polícia de Paris emitiu nota afirmando apenas que "no que diz respeito aos elementos dessa investigação, o caso foi enviado para a procuradoria". O caso está sendo investigado pela 3ª circunscrição da Direção de Polícia Judiciária de Paris.

O Consulado Geral do Brasil na França declarou que oferece apoio jurídico e psicológico para as vítimas. O órgão também afirma que segue acompanhando o caso.

Casos semelhantes já foram registrados no mesmo local. Em setembro de 2022, segundo o jornal francês Le Parisien, uma turista canadense foi sequestrada e estuprada por um jovem de 19 anos na mesma região. Em 2016, três homens foram presos suspeitos de um estupro coletivo também próximo à Torre Eiffel, em Paris, segundo o jornal britânico The Independent.