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

Doria aceita criar comissão externa em investigação de Paraisópolis

Viela da comunidade de Paraisópolis, na zona sul de São Paulo, onde pessoas morreram pisoteadas durante tumulto após ação da Polícia Militar (PM) - TIAGO QUEIROZ/ESTADÃO CONTEÚDO
Viela da comunidade de Paraisópolis, na zona sul de São Paulo, onde pessoas morreram pisoteadas durante tumulto após ação da Polícia Militar (PM) Imagem: TIAGO QUEIROZ/ESTADÃO CONTEÚDO

Felipe Resk

05/12/2019 17h47

O governador João Doria (PSDB) vai criar uma comissão externa, formada por membros da sociedade civil, para acompanhar a investigação da operação da Polícia Militar que terminou com nove jovens pisoteados e mortos no baile funk em Paraisópolis, na zona sul de São Paulo, no fim de semana. A proposta era uma reivindicação de familiares de vítimas da tragédia e de órgãos de direitos humanos, que foram recebidos por Doria na noite de quarta-feira, 4.

A reunião aconteceu após centenas de pessoas marcharem de Paraisópolis até o Palácio dos Bandeirantes, no Morumbi, em protesto para pedir apuração rápida da tragédia e também punição aos responsáveis. Por enquanto, a versão sobre os fatos são conflitantes. A PM relata que o tumulto começou após dois suspeitos em uma moto atirarem contra policiais e irem se esconder no baile funk. Já os moradores afirmam que foi a própria PM que teria provocado a tragédia ao tentar realizar uma dispersão truculenta no pancadão. Na segunda-feira, 2, a gestão Doria decidiu afastar das ruas seis policiais militares que participaram da ação.

"A comissão externa e independente é a nossa conquista mais importante até o momento", diz Dimitri Sales, presidente do Conselho Estadual de Defesa da Pessoa Humana (Condepe), um dos participantes do encontro. "É uma forma de assegurar que a investigação vai a fundo e não ficará restrita a corporativismos ou nenhuma pressão externa."

Segundo Sales, a comissão vai poder requerer intimação de testemunhas para ser ouvidas no inquérito e também fazer análise de relatórios produzidos pela investigação policial - o caso é apurado pelo Departamento de Homicídios e de Proteção à Pessoa (DHPP), da Polícia Civil, e pela Corregedoria da PM. Outras prerrogativas serão convidar especialistas para discutir laudos e até mesmo sugerir quesitos que devem ser respondidos nas perícias. "A sociedade a a ser um sujeito ativo no processo investigatório", afirma.

De acordo com Sales, a comissão será formada por um representante da família de cada vítima, além de dois líderes comunitários e de representantes do Condepe e da Ordem dos Advogados do Brasil (OAB) - órgãos que estavam presentes no encontro. O nome dos representantes ainda não foi definido.

A reunião no Palácio dos Bandeirantes durou cerca de duas horas e teve a participação, ainda, de integrantes do governo Doria. Entre os presentes, também estava o secretário da Segurança Pública, o general João Camilo Campos, responsável por chefiar as polícias de São Paulo. "No encontro, o Governador ouviu relatos de duas mães que perderam seus filhos e reiterou o compromisso de rigor e transparência em relação a investigação das mortes ocorridas na madrugada de domingo", diz nota do governo.

Uma nova reunião foi marcada para a próxima segunda-feira, 9, e a previsão é que representantes de todas as famílias de vítimas participem. Na ocasião, a comunidade também deve apresentar pautas como a "não criminalização do funk" e outras questões de Paraisópolis.

"Fizemos um acordo de melhoria do diálogo com o governo, buscando uma articulação pela paz, e a criação de uma agenda positiva, com programas e projetos que pudessem beneficiar os jovens principalmente na área da cultura", afirma o líder comunitário Gilson Rodrigues. Entre as reivindicações está a abertura do Parque Paraisópolis, canalização de córrego na comunidade e instalação de unidade de saúde para atender dependentes químicos.