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

Rogério Gentile

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.

Ministério Público pede a absolvição da mãe de Gael por razões psicológicas

Gael tinha 3 anos - Reprodução
Gael tinha 3 anos Imagem: Reprodução

Colunista do UOL

20/09/2022 09h41

Receba os novos posts desta coluna no seu e-mail

Email inválido

O Ministério Público de São Paulo pediu à Justiça a absolvição sumária de Andréia Freitas de Oliveira, mãe do garoto Gael Freitas Nunes de Farias, morto aos três anos em maio do ano ado.

Andréia havia sido denunciada pelo próprio Ministério Público sob acusação de ter matado o filho por asfixia, mas uma perícia médica concluiu que ela sofre de transtornos psiquiátricos e é inimputável.

Ao pedir a absolvição, o promotor Neudival Mascarenhas Filho disse que a Justiça deve determinar que a mãe de Gael seja internada em um hospital de custódia para tratamento.

De acordo com o laudo anexado ao processo judicial, Andréia sofre de "transtorno dissociativo", um distúrbio no qual o doente apresenta alterações na consciência, na identidade, na memória, na percepção do ambiente e no controle de movimentos e do comportamento. A pessoa se distancia, involuntariamente, da realidade e tem dificuldades para lembrar dos acontecimentos depois.

O perito Richard Rigolino, do Instituto de Medicina Social e de Criminologia de São Paulo (IMESC), escreveu no documento que a mãe de Gael estava, por ocasião do homicídio, "privada de sua capacidade de compreensão e volição", estando "inteiramente incapaz de entender o caráter ilícito" dos seus atos.

De acordo com ele, "sob a ótica médico-legal psiquiátrica", Andréia é inimputável e, considerando "as características do mal, há a possibilidade de reincidência no delito ou no cometimento de outros".

O perito recomendou que, pelo distúrbio neuropsiquiátrico apresentado, Andréia deve receber "tratamento psiquiátrico compulsório em regime de internação, em vista do caráter imprevisível e episódico do transtorno, com encaminhamento posterior para tratamento semi-intensivo de manutenção".

As investigações concluíram que, no dia dos fatos, Gael acordou e, na companhia de uma tia-avó, tomou uma mamadeira na sala do apartamento na Bela Vista, em São Paulo, enquanto assistia televisão.

Minutos depois, o garoto teria ido à cozinha atrás da mãe, onde ela ou a agredi-lo na região da cabeça e a asfixiá-lo com as próprias mãos.

Em entrevista ao UOL, em maio do ano ado, o advogado Fábio Gomes da Costa, que a representa, afirmou que Andréia não se lembrava de nada.

"A primeira coisa que ela fez quando me viu foi colocar a mão na cabeça e perguntar: 'o senhor sabe onde está o Gaelzinho?'. Eu tive de dar a notícia", afirmou na entrevista. "Ela desandou a chorar e só consegui continuar a conversa 40 minutos depois."

Segundo o advogado, Andréia sofreu um apagão. Segundo seu relato, ela disse que estava na cama quando teria sentido febre. "Foi tomar uma chuveirada e apagou no banheiro", afirmou.

Andréia teria recobrado a consciência apenas no momento em que foi retirada do banheiro pela polícia, colocada numa cadeira de rodas e visto na rua "carros com luzes".

A Justiça ainda não analisou o pedido de absolvição sumária.