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

Cinco mulheres da mesma família se unem para ajudar 600 famílias em SP

O "Bumerangue do Bem" nasceu da necessidade da uma família inteira de fazer o bem ao outro - Marcelo Warick
O 'Bumerangue do Bem' nasceu da necessidade da uma família inteira de fazer o bem ao outro Imagem: Marcelo Warick

Rayane Moura

Colaboração para Ecoa, em São Paulo

28/10/2021 06h00

A pandemia de covid-19 e toda a crise sanitária e econômica que ela trouxe fizeram com que a sociedade civil se mobilizasse de uma maneira pouco vista. Muitas pessoas, diante do aumento do desemprego e da desigualdade social, organizaram-se em ações individuais, coletivas e até em família. É o caso do projeto "Bumerangue do Bem", formado por cinco mulheres da mesma família, entre mãe, tia, sobrinhas e irmãs.

Criado em março de 2021 por Ana Maria Warick, Carmel Simões, Carla Warick, Paula Warick e Débora Sousa, o projeto tem como objetivo desenvolver um trabalho de promoção humana e combate à pobreza, por meio de atividades sócio educacionais, empreendedorismo e desenvolvimento comunitário.

"A gente queria um nome que representasse a ação e reação, aí espontaneamente surgiu 'bumerangue'. Pensamos, então, no que combinaria para representar isso e surgiu o 'Bumerangue do Bem'", explica Ana Maria Warick, de 70 anos, microempresária e presidente do projeto.

Ela conta que a família sempre foi formada por mulheres fortes. "A exemplo da matriarca da família, que era uma mulher além do seu tempo. Isso foi ado de geração para geração. Sempre ajudamos frente aos acontecimentos sociais da pandemia, e resolvemos nos juntar porque a situação estava nos incomodando."

O "Bumerangue do Bem" recebe doações recorrentes, que vêm de pessoas que apoiam com dinheiro e itens que compõem as cestas básicas. O projeto apoia mensalmente cerca de 600 famílias nas comunidades Sítio Barrocada, Vila Ede, Recanto São João e Nascer do Sol, localizadas na Zona Norte de São Paulo, com a doação de alimentos e roupas.

Bumerangue do bem - Marcelo Warick - Marcelo Warick
Objetivos do projeto são amplos, mas o mais urgente no momento é combater a fome
Imagem: Marcelo Warick

Além disso, o projeto realiza eventos pontuais em datas festivas, como Páscoa, Dia das Mães e Dia das Crianças. "As nossas quatro comunidades são invasões, onde, de fato, o governo não chega. Queremos ajudá-los para conseguir a legalização, incentivar a geração de renda própria para não depender de doações, mas com fome não dá. Atualmente nós conseguimos doação de alimentos, mas nosso objetivo é maior que isso", explica Ana Maria.

Para selecionar as comunidades e famílias que recebem auxílio do projeto, o "Bumerangue do Bem" participa do Ecos Coletivos, uma instituição que congrega alguns grupos que têm por objetivo atender pessoas em situação de vulnerabilidade.

"Eles nos indicaram a líder de uma comunidade que não tinha nenhum instituto ajudando, nós fomos até lá e conhecemos esses líderes de quatro comunidades próximas, que foram as que elegemos para serem ajudadas de forma recorrente", conta a presidente.

Desde março de 2021, o projeto já distribuiu cerca de 4 mil cestas básicas, 16 toneladas de legumes e frutas, 48 mil ovos, 4 mil quilos de proteínas, 6 mil kits de Higiene, 2.500 brinquedos, 900 ovos de Páscoa, 6 mil pares de meias, 400 camisetas, 3 mil cobertores e 4 cadeiras de rodas, além de eletrodomésticos, móveis usados, roupas e sapatos.

Nos planos do Bumerangue está agora conseguir apoio para a criação de oficinas, compra de itens, indicação de emprego para os moradores desempregados e ajuda educacional. "Nosso principal diferencial é a nossa história. O 'Bumerangue do Bem' nasceu de uma necessidade da nossa família de fazer o bem para os outros, contagiada pelo nosso carisma com os coletivos, instituições e pessoas que ajudamos", diz Ana Maria.

O projeto aceita doações de itens básicos, como alimentos, produtos de higiene e roupas, mas é necessário entrar em contato para agendar a retirada. O telefone é (11) 99933-7212, falar com Ana Maria. Além disso, é possível fazer doações em dinheiro pelo Pix (chave- e-mail): [email protected]. Para mais informações, entrar em contato por meio do perfil do Instagram do projeto.