;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

Acionistas aprovam criação da maior operadora de shopping da América Latina

Rafael Bevilacqua

10/06/2022 09h22

A Aliansce Sonae (ALSO3) anunciou, via fato relevante, a aprovação da combinação de negócios com a brMalls (BRML3) em assembleias gerais extraordinárias (AGE) das duas empresas.

Confira a seguir o comentário de Rafael Bevilacqua, estrategista-chefe e sócio-fundador da casa de análise Levante Ideias de Investimento, sobre o tema. Todos os dias, Bevilacqua traz notícias e avaliações de empresas de capital aberto para você tomar as melhores decisões de investimento. Este conteúdo é ível para os s do UOL. O UOL tem uma área exclusiva para quem quer investir seu dinheiro de maneira segura e lucrar mais do que com a poupança. Conheça!

Em carta, os CEOs de ambas, Rafael Sales (Aliansce) e Ruy Kameyama (brMalls), definiram este dia como histórico para o varejo brasileiro, com a empresa combinada tendo potencial de expandir fronteiras em sua nova etapa.

Avaliada em R$ 12 bilhões, a companhia resultante da fusão será a maior plataforma de shoppings da América Latina, contemplando 69 shoppings em seu portfólio, com cerca de 13 mil lojas em seus estabelecimentos. Com cerca de 60 milhões de visitantes por mês, a expectativa é que a combinação de negócios abra um leque de oportunidades para todos os seus parceiros e colaboradores.

A assembleia sobre a operação teve a participação dos detentores de 79,2% do capital das companhias, com os acionistas detentores de 68% do capital aprovando a transação e detentores de apenas 11,2% votando contra, sendo necessária maioria simples para que a transação fosse aprovada.

Como etapa final do processo, as empresas aguardam a análise do Cade (Conselho istrativo de Defesa Econômica), de modo que investimentos robustos em seus ativos só poderão ser realizados após a aprovação da operação pelo órgão. Enquanto aguardam a decisão, as empresas seguirão atuando de maneira independente uma da outra.

A notícia é positiva para as operadoras de shopping, e coloca a nova companhia em uma posição de destaque no mercado brasileiro de shopping centers.

Na quinta-feira (9), as ações da Aliansce Sonae fecharam em queda de 2,04%, cotadas a R$ 18,29, enquanto os papéis da brMalls recuaram 2,81%, cotados a R$ 8,30.

Este material foi elaborado exclusivamente pela Levante Ideias e pelo estrategista-chefe e sócio-fundador Rafael Bevilacqua (sem qualquer participação do Grupo UOL) e tem como objetivo fornecer informações que possam auxiliar o investidor a tomar decisão de investimento, não constituindo qualquer tipo de oferta de valor mobiliário ou promessa de retorno financeiro e/ou isenção de risco . Os valores mobiliários discutidos neste material podem não ser adequados para todos os perfis de investidores que, antes de qualquer decisão, deverão realizar o processo de suitability para a identificação dos produtos adequados ao seu perfil de risco. Os investidores que desejem adquirir ou negociar os valores mobiliários cobertos por este material devem obter informações pertinentes para formar a sua própria decisão de investimento. A rentabilidade de produtos financeiros pode apresentar variações e seu preço pode aumentar ou diminuir, podendo resultar em significativas perdas patrimoniais. Os desempenhos anteriores não são indicativos de resultados futuros.