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

MPF vê Governo omisso no combate a vazamento de óleo e entra com ação

Divulgação/Adema
Imagem: Divulgação/Adema

Do UOL, em São Paulo

18/10/2019 14h04

O Ministério Público Federal (MPF) moveu uma ação pedindo que a Justiça obrigue o Governo Federal a acionar em 24 horas o Plano Nacional de Contingência para Incidentes de Poluição por Óleo em Águas sob Jurisdição Nacional.

O pedido, em caráter de urgência, busca ampliar o combate ao derramamento de óleo que atinge a costa do Nordeste do Brasil. Na ação, o MPF alega omissão com a situação.

"Não obstante a extrema gravidade do desastre ambiental, com todos os dados e impactos demonstrados, e ainda a decretação de emergência pelos Estados de Sergipe e da Bahia, fato é que a União se mantém omissa, inerte, ineficiente e ineficaz. Não há, pois, razão plausível mínima para não se implementar, de imediato, o Plano Nacional de Contingência para Incidentes de Poluição por Óleo em Águas sob Jurisdição Nacional. É, pela legislação e pelos fatos reais, medida que se impõe", diz a ação.

No processo, é pedido que o Governo seja obrigada a acionar em 24 horas o Plano Nacional de Contingência, com multa diária de R$ 1 milhão em caso de descumprimento.

Além disso, é solicitado que um representante de cada órgão estadual de Meio Ambiente dos Estados afetados integre o comitê de e ao Plano de Contingência e que os Estados tenham autonomia para fiscalizar as medidas.

"Por fim, o MPF registra na ação que, para fins de operacionalização, fiscalização e com respeito à independência e autonomia de cada Estado da Federação envolvido, que uma vez implementado o Plano Nacional de Contingência para Incidentes de Poluição por Óleo em Águas sob Jurisdição Nacional, membros do Ministério Público Federal em cada Estado da Federação atingido acompanharão a execução do PNC de acordo com as circunstâncias e especificidades socioambientais locais", complementa o comunicado do MPF.

O Plano Nacional de Contingência para Incidentes de Poluição por Óleo em Águas sob Jurisdição Nacional (PNC) foi instituído em 2013, através de decreto do Governo Federal, com o objetivo de preparar o País para casos semelhantes.

O documento, bastante detalhado, descreve responsabilidades, diretrizes e procedimentos para o governo responder a vazamentos de petróleo com foco em "minimizar danos ambientais e evitar prejuízos para a saúde pública".

A contaminação começou no início de setembro em praias dos nove estados do Nordeste. O derramamento de óleo é considerado o maior acidente ambiental em extensão do país, com 2.100 km de manchas oleosas, que atingem da Bahia ao Maranhão.

Relatório do Ibama, atualizado na quarta, aponta que nos nove estados do nordeste há 72 municípios afetados com 178 praias atingidas. Até agora, 29 animais marinhos foram encontrados oleados, sendo 15 tartarugas e duas aves mortas. Atualmente, há 486 filhotes de tartarugas marinhas retidos de forma preventiva por conta da poluição causada pelo óleo.