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

Esse conteúdo é antigo

Polícia diz que suspeito de ataque em SC era quieto e sofria bullying

Fachada do CEI Pró-Infância Aquarela, em Saudades (SC), recebeu flores e cartaz em homenagem às vítimas - Hygino Vasconcellos/Colaboração para o UOL
Fachada do CEI Pró-Infância Aquarela, em Saudades (SC), recebeu flores e cartaz em homenagem às vítimas Imagem: Hygino Vasconcellos/Colaboração para o UOL

Do UOL, em São Paulo

04/05/2021 18h25Atualizada em 05/05/2021 11h46

A Polícia Civil disse hoje que o suspeito pelo ataque que deixou três crianças e duas mulheres mortas numa creche em Saudades (SC) tinha o perfil de um jovem reservado e que vinha sofrendo bullying na escola. A apuração inicial dos policiais também aponta que o homem de 18 anos vinha maltratando animais e não queria mais ir à escola, onde cursava o ensino médio.

A gente já tem algumas informações que conseguiu colher no dia de hoje, que dão mais ou menos um perfil, ainda incipiente, mas de um rapaz problemático. Quem me relatou isso foram pessoas próximas a ele. [O jovem] vinha enfrentando bullying na escola, vinha maltratando alguns animais, [era] muito introspectivo.
Delegado Jeronimo Marçal, responsável pelo caso

O atentado aconteceu na CEI (Centro de Educação Infantil) Pró-Infância Aquarela, voltado para crianças de até 3 anos. Duas funcionárias da instituição e duas crianças morreram após terem sido golpeadas com uma arma branca, tipo facão.

Após o ataque, o jovem tentou se matar, mas foi interrompido por populares e está internado. Até o meio da tarde, seu estado de saúde era estável.

Segundo o delegado Marçal, o jovem pode ser descrito como uma pessoa "relativamente simples" e proveniente de uma "família humilde". Ele trabalhava em uma empresa no município de Saudades e, segundo relatos de familiares, guardava dinheiro em espécie em casa.

"Como ele não era de socializar, estava guardando dinheiro", disse. O delegado afirmou ainda que o jovem gostava de jogos online, sendo alguns deles "com violência". O homem não tinha antecedentes criminais ou agens pela polícia. Até o momento, não se sabe qual foi a motivação do crime.

Segundo a polícia, o jovem portava duas armas brancas, mas apenas uma delas teria sido utilizada no ataque. Ambas teriam sido compradas há pouco tempo. De acordo com o delegado Marçal, o jovem chegou a afirmar que usaria os instrumentos para maltratar um animal de uma familiar.

"Ele brincou com ela que era para maltratar o bichinho que ela tinha em casa. Ninguém imaginava que ele faria isso", declarou.

Como foi o ataque

De acordo com a Polícia Civil, o jovem invadiu a escola por volta das 10h. Ele primeiro atacou uma professora de 30 anos que estava na entrada do prédio. A vítima chegou a correr do suspeito, mas foi alcançada pelo homem e morreu na escola.

Após atacá-la, ele teria entrado em uma sala de aula e desferido os golpes em crianças. No local havia quatro alunos e uma funcionária da escola na sala.

"Ele começou a atacar a professora, que correu para uma sala onde tinham crianças. Lá nessa sala, ele agrediu outras pessoas", disse o delegado Jerônimo Marçal, em entrevista à Rádio Vale FM.

Ao perceberem o ataque, professoras da instituição trancaram as salas em que havia aulas no momento para proteger as crianças. Segundo a Polícia Civil, o jovem tentou entrar em todas as salas da creche.