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

Testemunhas relatam horror em ataque com arco e flecha na Noruega: 'Ouvi um clique'

13.out.2021 - Ataque com arco e flechas deixou cinco mortos na Noruega; na imagem, uma flecha cravada no local do crime - Reuters
13.out.2021 - Ataque com arco e flechas deixou cinco mortos na Noruega; na imagem, uma flecha cravada no local do crime Imagem: Reuters

14/10/2021 11h15

As testemunhas do ataque com arco e flechas que deixou cinco mortos no sudeste da Noruega relataram os momentos de horror.

Kongsberg, uma cidade montanhosa e geralmente tediosa, se viu no centro de uma tragédia na quarta-feira (13), quando, durante mais de meia hora, um homem armado com um arco percorreu suas ruas, repleta de casas de madeira, e disparou flechas letais de maneira aleatória.

O homem, que matou cinco pessoas e feriu outras três, foi detido.

Ele foi identificado como Espen Andersen Bråthen, um dinamarquês de 37 anos, residente na cidade de 25.000 habitantes e que, segundo a polícia, era suspeito de radicalização. Apesar das informações, a motivação do crime ainda não foi determinada.

O ataque parece "um ato terrorista", afirmaram os serviços de segurança hoje.

Thomas Nilsen estava em casa quando ouviu os gritos e começou a pensar em cenas de conflito.

A tragédia aconteceu em vários pontos da cidade, incluindo um supermercado, diante do qual a polícia estabeleceu um perímetro de segurança. Em outras áreas, a presença policial era mínima.

As vítimas fatais são quatro mulheres e um homem, com idades entre 50 e 70 anos, mas a polícia ainda não divulgou suas identidades. Diante da igreja local foram acesas velas em homenagem.

"Escutei gritos de crianças, latidos e o barulho de um helicóptero sobre minha casa", declarou Terje Kristiansen, outra testemunha. "Não dormi muito esta noite", acrescentou.

noruega - Hakon Mosvold/NTB/via REUTERS  - Hakon Mosvold/NTB/via REUTERS
13.out.2021 - Ataque com arco e flechas deixou cinco mortos na Noruega
Imagem: Hakon Mosvold/NTB/via REUTERS

Hoje, ele precisou fazer compras e seguiu até um estabelecimento no outro extremo da cidade. "Eu ficava olhando um pouco por cima do ombro", itiu.

O supermercado local foi a área em que o dinamarquês feriu uma pessoa, um policial que não estava em serviço. De acordo com as autoridades, o agente está fora de perigo.

Knut Olav, de 50 anos, pretendia fumar um cigarro na porta de casa quando assistiu uma cena até então inimaginável.

"Vi um de meus amigos escondido atrás de um carro e, de repente, escutei algo como um 'clique'. Já fui arqueiro e reconheci o barulho do arco e o impacto de uma flecha contra a calçada", disse.

"Depois, vi um homem retirando uma criança do carro e correndo para minha casa", completou.

Como em um filme, antes de ser detido o autor do ataque lançou flechas na direção dos policiais, que responderam com tiros de advertência. Interrogado durante a noite, o homem itiu os crimes.

O acusado será submetido a exames psiquiátricos e, amanhã, comparecerá a uma audiência com um juiz que deve determinar a prisão provisória.

Svein Westad estava preparando o jantar quando ouviu a agitação, gritos e um tiro, certamente da polícia. Estava com a janela aberta.

"Continuei cozinhando. Nem pensar em sair", contou.

Após o barulho do ataque, os moradores ouviram as sirenes das ambulâncias e das viaturas policiais.

Westad conhecia uma das vítimas.

"Não sou do tipo de pessoa que pega o telefone para fazer fotos nestas situações", declarou. "Liguei para a polícia e me disseram para ficar em casa. Mais uma razão para não sair."