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

Rubens Valente

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.

Ibama orienta fiscais usarem instrução que foi revogada por Salles

Fiscalização do Ibama - Fernando Werneck/Ibama
Fiscalização do Ibama Imagem: Fernando Werneck/Ibama

Colunista do UOL

21/04/2021 04h01

O Ibama orientou seus servidores a desconsiderar, em alguns trechos, uma instrução normativa publicada no último dia 12 e a continuar usando a instrução anterior, de 2020, que, no entanto, foi revogada pelo mesmo ato conjunto assinado pelo ministro do Meio Ambiente, Ricardo Salles, e pelos presidentes do Ibama e do ICMBio.

As orientações contraditórias expõem o estado de confusão e paralisia instalado no órgão depois que o governo alterou o sistema de aplicação de multas ambientais. Desde o dia 12, há a necessidade de uma "autoridade hierarquicamente superior" determinar a abertura de um processo sancionador contra infratores ambientais.

Em uma carta aberta ao presidente do Ibama, Eduardo Bim, nesta terça-feira (20), servidores do Ibama denunciaram que as alterações provocaram, na prática, a paralisação do sistema de aplicação de multas em todo o país. A carta foi subscrita por mais de 500 servidores do órgão.

No último dia 14, diante de várias reclamações e dúvidas levantadas pelos servidores, o Ibama tentou remediar a situação, mas a insegurança jurídica, no entender de servidores ouvidos pela coluna, só aumentou. A coluna teve o a dois ofícios-circulares distribuídos internamente no dia 14 pelo coordenador-geral de fiscalização ambiental, Ricardo José Borrelli, e pelo superintendente de Apuração de Infrações Ambientais, Wagner Tadeu Matiota. Ambos são policiais militares de São Paulo, que estão nos cargos há poucos meses - nomeados entre outubro e dezembro do ano ado.

"Até que sejam expedidas tais diretrizes, no que diz respeito aos trabalhos da conciliação ambiental, os processos em andamento até a presente data deverão continuar recebendo o tratamento dado pela antiga Instrução Normativa Conjunta nº 02/2020, para que as atividades não sofram paralisação", escreveu Matiota.

Contudo, a instrução normativa conjunta do MMA (Ministério do Meio Ambiente), Ibama e ICMBio do último dia 12, assinada por Salles e Bim, diz em seu artigo final: "Fica revogada a Instrução Normativa Conjunta nº 2, de 29 de janeiro de 2020".

Em outro ofício-circular, a coordenação de fiscalização em Brasília, o principal órgão de comando e controle das operações de campo do Ibama, orienta "que a lavratura do auto de infração ambiental e a elaboração do relatório devem ocorrer de acordo com os procedimentos até hoje estabelecidos, não havendo modificações de entendimento por parte da fiscalização".

"Neste caso, deve a fiscalização proceder como vem acontecendo no sistema do AI-e, aprovando relatórios que não apresentam erros ou vícios, e retornando ao agente autuante aqueles insuficientes para saneamento, até que o MMA [Ministério do Meio Ambiente] apresente regra transitória para este caso", diz o ofício de Borrelli.

Um servidor do Ibama, que pediu para não ser identificado, disse que os ofícios mostram que "o coordenador geral de fiscalização assume que não há como cumprir o que foi estabelecido na nova Instrução Normativa e orienta a fazer como antes. Só que a norma que orientava fazer como antes foi revogada".

Um fiscal disse que na verdade "nós já estamos paralisados". "As mudanças realizadas travaram todo o processo de punição contra os infratores ambientais. Se eu encontrar uma área desmatada agora, não consigo lavrar o auto de infração nem embargar a área porque os sistemas que nos dão e para que isso possa acontecer legalmente estão alinhados com a Instrução Normativa anterior que foi revogada por essa mais recente."

Os sistemas de informática usados atualmente no órgão "não comportam o novo procedimento".

Em nota à imprensa no dia 16 divulgada em seu site na internet, o Ibama argumentou que a instrução normativa conjunta de fevereiro "não modificou as regras sobre multas aplicadas contra crimes ambientais, apenas atualizou os ritos do processo istrativo para os autos de infração ambiental, já previstos na INC Nº 2, de 29 de janeiro de 2020".

"Pela INC Nº 1, não houve redução no poder de atuação dos fiscais, mas definiu os prazos desde a emissão do auto de infração até a audiência de conciliação. Com as mudanças, haverá celeridade no trâmite dos processos de infração que poderá ser concluído em até 30 dias, atuando em favor do interesse público. Nos casos em que a conciliação não for possível, os processos seguem o rito ordinário, que pode levar mais tempo", diz a nota do Ibama.