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

Criminosos clonam carros da PF e roubam 720 kg de ouro dentro de Cumbica

Luís Adorno

Do UOL, em São Paulo

25/07/2019 18h05Atualizada em 25/07/2019 19h37

Criminosos clonaram dois carros da PF (Polícia Federal), entraram no terminal de cargas do Aeroporto Internacional de Guarulhos, na Grande São Paulo, e roubaram 720 kg de ouro que estavam em um carro-forte dentro do local na tarde de hoje. Não houve troca de tiros e ninguém ficou ferido.

Investigadores da PF informaram à reportagem que a ação durou cerca de cinco minutos. Oito criminosos entraram no terminal munidos de fuzis, carabinas, pistolas, coletes à prova de bala e balaclavas. Eles ameaçaram os funcionários --fazendo um segurança refém-- e anunciaram o assalto. O refém foi liberado ao fim do crime.

Depois de renderem os funcionários, os criminosos obrigaram os servidores do aeroporto a ajudarem a levar o ouro até um dos carros utilizados por eles.

Após o assalto, os carros clonados foram encontrados na rua Papiro do Egito, na zona leste da capital, próximo do aeroporto.

Em outra etapa da fuga, a quadrilha embarcou em uma Ford Ranger e em uma van branca. A PRF suspeita que eles seguiram pela rodovia Presidente Dutra ou pela rodovia Hélio Smidt, no sentido Rio de Janeiro. Helicópteros da Polícia Civil e da Polícia Militar foram acionados para tentar localizá-los, o que não ocorreu até o fim da tarde.

A PRF informou, às 17h50, que carros com características semelhantes às utilizadas pelos criminosos na fuga foram vistos, em alta velocidade, na região da cidade de Guararema.

Carro clonado da PF encontrado na zona leste de SP depois de ter sido utilizado para roubar ouro no aeroporto de Cumbica - 25.jul.2019 - Divulgação/PRF - 25.jul.2019 - Divulgação/PRF
Carro clonado da PF encontrado na zona leste de SP depois de ter sido utilizado para roubar ouro no aeroporto de Cumbica
Imagem: 25.jul.2019 - Divulgação/PRF

A GRU Airport, responsável pelo aeroporto, afirmou que o episódio não prejudicou o embarque nem o desembarque. "A ação está sendo investigada por todas as autoridades de polícia em atuação no aeroporto. Mais informações serão divulgadas conforme as conclusões", disse a concessionária em nota.

Sob sequestro, familiar de segurança teria ado informações

PF, PRF (Polícia Rodoviária Federal) e Polícia Civil de São Paulo tentam identificar como os criminosos sabiam do transporte do ouro.

De acordo com a PRF, um familiar de um dos seguranças foi sequestrado na noite anterior e teria cedido aos criminosos informações privilegiadas sobre a carga. O ouro seria levado para a Suíça e para os Estados Unidos.

Segundo a PF, como o roubo ocorreu fora da área restrita, o caso é de responsabilidade da Polícia Civil. O Deic (Departamento Estadual de Investigações Criminais) informou que o caso é investigado pela 5ª Delegacia Patrimônio (Investigações dobre Roubo a Banco).