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

Fora da propaganda, Crivella lembra Costinha da Loterj ao rasgar figurino

À esq, o comediante Costinha em propaganda de loteria nos anos 80; à dir., Crivella em programa eleitoral na  TV - Reprodução
À esq, o comediante Costinha em propaganda de loteria nos anos 80; à dir., Crivella em programa eleitoral na TV Imagem: Reprodução

Matheus Pichonelli

Colunista do UOL

19/11/2020 14h46Atualizada em 19/11/2020 18h12

Tem alguma coisa familiar na voz, nos trejeitos e no tom contido de Marcelo Crivella (Republicanos) na propaganda da TV. Demorei a identificar o que era, mas identifiquei.

Toda vez que o prefeito do Rio cita alguma cifra relativa ao quanto investiu e/ou economizou em sua gestão ele lança uma falsa empolgação embrulhada para presente. "Você ganha 70 milhõõõõõõõõõões".

Onde já ouvimos isso?, pensava.

Até que um dia, ao ouvir uma dessas frases esticaaaaaaaaadas do Crivella, com um sorriso tão autêntico quanto uma nota de R$ 3, me veio à memória alguém dizendo: "O senhor e a senhora devem estar pensando que já viram esse comercial. Só que esse aqui é pra vender os jogos das Raspadinhas no Rio".

Bingo!

Na hora mostrei a um amigo. Ele respondeu: "cara, o Crivella tá parecendo o Costinha naquela propaganda da Loterj".

Lírio Mário da Costa, o Costinha, ficou conhecido pelo jeitão desbocado (e homofóbico, não custa lembrar) em seus shows e programas da TV. Ao falar sobre os prêmios na propaganda, estava visivelmente incomodado no figurino de senhor bonzinho que fala baixo e finge se empolgar com a possibilidade de alguém realmente se dar bem com aquela promessa vendida na TV. No caso, ficar rico comprando as Raspadinhas da Loterj, a Mega Sena da época.

Costinha, que morreu em 1995, nunca soube que se tornaria um dos primeiros hits da internet, num tempo ainda pré-YouTube, ao rasgar o figurino e fazer uma paródia, ao seu estilo, da própria fala. Ali o verdadeiro comediante se mostrava, desbocado e sem censura, como os que já assistiram ao plano B do comercial sabem.

Era como se matasse a pauladas o personagem inofensivo e espirituoso que a propaganda tentava embrulhar. Um personagem que se contentava com uma piada leve com aquele primo lá de Piracicaba que, infelizmente, não poderia concorrer aos prêmios porque as raspadinhas só tinham validade no Rio.

Nesta semana, Crivella gravou a sua versão eleições 2020 das Raspadinhas da Loterj. Não a que deveria ir ao ar, mas a proibidona. E ficou ainda mais parecido com o comediante que se revelou sem saber que era gravado.

Num encontro com apoiadores, como se estivesse sob a posse do demo que ele jura querer expurgar, converteu o senhor contido e educado da propaganda num prefeito raivoso e desbocado. A ponto de chamar o governador João Doria, a versão 2.0 do primo de Piracicaba, de "vagabundo" e "viado".

Justo ele, que em sua propaganda usou até crianças do programa Orelhinha Bonitinha para dizer que o programa de cirurgias estéticas para correção das orelhas de abano era uma importante ferramenta de combate ao bullying. (Os jovens atacados em sua ofensiva por causa de um beijo gay numa HQ não conta porque não cabem no reino dos céus que ele quer proclamar).

Como a história da propaganda da Loterj, o prefeito candidato à reeleição mostra seu lado autêntico e real quando pensa não estar sendo gravado.

Querendo ou não, acaba de produzir uma das peças mais baixas da campanha até aqui. O Costinha ainda tinha a desculpa de ser um comediante das antigas. Crivella é só, por enquanto, um prefeito sem graça tentando resolver os desafios do século 21 com as ferramentas enferrujadas do ado.

Na última pesquisa Ibope, o candidato do Republicanos, que é recordista de rejeição em sua cidade, aparece 30 pontos percentuais atrás de Eduardo Paes (DEM) —53% contra 23%.

O vídeo que já viraliza pode e certamente deve ser usado pelos apoiadores do rival. Provavelmente será a pá de cal para a pretensão reeleitoreira do lobo vestido de cordeiro.

Mas quem sabe assim aquele amigo lááááááááááá de Eldorado paulista que hoje mora em Brasília não arranje para ele uma vaguinha em algum ministério. Credenciado para o gabinete do ódio ele já está.