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

SP: projeto de área que desabou foi alterado irregularmente, diz prefeitura

Desabamento em Itapecerica da Serra (SP) deixou mortos e feridos na terça-feira - 20.set.2022 - Reprodução/Record TV
Desabamento em Itapecerica da Serra (SP) deixou mortos e feridos na terça-feira Imagem: 20.set.2022 - Reprodução/Record TV

Do UOL, em São Paulo

21/09/2022 16h06

A Prefeitura de Itapecerica da Serra, cidade da Grande São Paulo, informou hoje que interditou o terreno da empresa Multiteiner, onde ocorreu um desabamento que deixou nove mortos e 31 feridos na manhã de ontem. Segundo a istração municipal, o projeto aprovado pela Cetesb (Companhia Ambiental do Estado de São Paulo) foi irregularmente alterado.

Segundo a secretaria municipal de Planejamento e Meio Ambiente, o projeto anteriormente aprovado pela Cetesb foi irregularmente alterado, e sua regularização junto aos órgãos públicos estava em trâmite. O arquiteto Marcelo Mota, que assessora a secretaria, afirmou que um outro proprietário pediu, em 2008, a aprovação do projeto para a Cetesb. No entanto, o imóvel foi negociado com a Multiteiner, que fez alterações ao longo do tempo.

Em pronunciamento a jornalistas na tarde de hoje, o prefeito da cidade, Francisco Nakano (PL), e técnicos explicaram que, por estar inserido em uma área de proteção e recuperação de mananciais, a regularização do imóvel deveria ser feita na Cetesb antes da obtenção da licença municipal.

Segundo Mota, a finalidade do local também foi alterada de comercial para industrial. Questionado se é possível dizer que a obra estava irregular, ele respondeu que, "de certa forma sim, porque a gente exigiu a regularização". "Ele executou de forma irregular aquilo que ele executou. Ele não alterou só o prédio como a finalidade do prédio."

Em nota, a Cetesb disse que "não lhe cabe avaliar as questões estruturais das edificações nem a possibilidade de realização de eventos públicos ou privados". E que, no caso da Multiteiner, a atribuição da companhia "se restringe à expedição do alvará de licença, tomando em consideração exclusivamente as questões ambientais".

O UOL Notícias tenta contato com representantes da Multiteiner. O espaço está aberto para manifestação.

O que aconteceu? O acidente matou ao menos nove pessoas, que assistiam a uma palestra de dois candidatos das eleições deste ano: Jones Donizette (Solidariedade), que disputa uma vaga na Alesp (Assembleia Legislativa do Estado de São Paulo), e Ely Santos (Republicanos), que tenta ser deputada federal.

Eles tinham acabado de discursar para os funcionários quando o local desabou. Ambos ficaram feridos, mas estão bem.

Cerca de 60 pessoas estavam no local no momento do desabamento. O prefeito disse que os nomes das vítimas não seriam divulgados em respeito às famílias.

Prefeitura decretou luto. O prefeito decretou luto de três dias na cidade após o desabamento. Médico socorrista, ele ajudou no atendimento às vítimas no local.

"Recebi uma ligação e, quando tomei conhecimento, fui direto para lá. Trabalhei como resgatista e fui fazer atendimento como médico. Fizemos de tudo, todo o grupo, para salvar todas as vidas", disse.

O que diz a polícia? Em nota, a SSP (Secretaria de Segurança Pública) informou que foram solicitados exames junto ao IC (Instituto de Criminalística) e ao IML (Instituto Médico Legal).

"O caso segue em investigação na Delegacia de Itapecerica da Serra, que apura todas as circunstâncias para a elucidação dos fatos. Testemunhas serão ouvidas e imagens do local estão sendo analisadas pela equipe da unidade para auxiliar nas investigações."

Sobrevivente viu parede rachar. A empregada doméstica Vera Lucia do Nascimento, 48, contou ao UOL que estava no trabalho quando recebeu uma ligação avisando que seu filho, Kleber Erlei do Nascimento, 34, havia sofrido um acidente no trabalho.

Vera Lucia relatou que, após a palestra, as pessoas se aglomeraram para comer quando o filho viu a parede rachar e a área desabar.

Mesmo machucado na perna esquerda, Kleber conseguiu se arrastar dali, mas a parte inferior do local estava cheia de ferros. Um dele perfurou o braço do funcionário.

O funcionário fraturou a perna e o braço direito e precisou ar por uma cirurgia, na perna, para colocar pinos. Ele ficará internado no Hospital Geral da cidade, sem previsão de alta.