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

'Só faltou cervejinha': avião vira bar gigante em voo durante jogo da Copa

Televisões coloridas de verde em avião; voo ocorreu exatamente na hora do jogo Brasil x Coreia do Sul - Camila Corsini/UOL
Televisões coloridas de verde em avião; voo ocorreu exatamente na hora do jogo Brasil x Coreia do Sul Imagem: Camila Corsini/UOL

Camila Corsini

DO UOL, em São Paulo

06/12/2022 04h00

Classificação e Jogos

No exato momento em que os jogadores da seleção brasileira entravam em campo para o jogo contra a Coreia do Sul nesta segunda-feira, um avião partia do Aeroporto de Guararapes, no Recife, rumo a Guarulhos, em São Paulo.

Os poucos minutos de atraso serviram para a manutenção das televisões, disse o piloto. Não incomodou. Afinal, era tarde de jogo da Copa do Mundo, e a transmissão da partida no voo precisava estar em pleno funcionamento.

Nas três horas de viagem, o avião lotado virou um "bar gigante", com festa, conversas e gritos. Entre os cerca de 200 ageiros do Airbus, havia torcedores a caráter, vestidos com a camisa amarelinha e outras variações de cores.

E, quando as rodas da aeronave da Azul levantaram, houve aplausos e berros de "vai, Brasil".

Antes mesmo da decolagem, um ageiro disse em alto e bom som que "poderia ser uma cervejinha" no lugar da água de cortesia.

Os petiscos a bordo do voo 2748 até ensaiaram uma lembrança do boteco — havia torresminho e amendoim —, mas o clima de bar ficou mesmo a cargo dos ageiros animados.

Assim que Vini Jr marcou o primeiro gol, com apenas 7 minutos de jogo, o avião foi à loucura. Gritos, assobios e aplausos se repetiram também nos gols de Neymar e Richarlison.

avião - Camila Corsini/UOL - Camila Corsini/UOL
Petiscos até lembravam bar, mas o clima de boteco ficou por conta dos torcedores
Imagem: Camila Corsini/UOL

Neste último, os risos foram gerais quando o jogador comemorou com a famosa "dança do pombo" ao lado do treinador Tite. O chute de Paquetá também foi bastante celebrado, enquanto o avião cruzava o país.

A ligeira turbulência no segundo tempo não assustou. Quando a Coreia fez gol, houve um silêncio no ar, interrompido apenas por um palavrão que surgiu em uma das fileiras: "ca*, golaço".

Goleada - Camila Corsini/UOL - Camila Corsini/UOL
Keyla Souza, comissária de bordo há 12 anos, estava no 7 x 1; agora, comemora a goleada
Imagem: Camila Corsini/UOL

A comissária de bordo Keyla Souza, na função há 12 anos, tinha mais motivos para comemorar nesta segunda: ela já havia ado pela experiência de ver um voo inteiro ficar desolado depois da derrota do Brasil na Copa de 2014.

"Eu estava voando no 7 a 1, o avião todo saiu chorando", lembra ela. "É sempre esse clima maravilhoso — desde que tudo corra bem em campo e a televisão esteja ok. Já vi derrota e vitória, e estamos sempre torcendo pelo nosso Brasil."

Os afazeres, no entanto, continuam. "Nossa responsabilidade maior é com a segurança dos ageiros e as portas, que não podemos deixar desassistidas. Mas, de vez em quando, a gente dá uma olhadinha ali, vibra junto com eles."

Torcedor ageiro - Camila Corsini/UOL - Camila Corsini/UOL
Cavalcante era o mais animado em voo durante jogo do Brasil na Copa
Imagem: Camila Corsini/UOL

E o piloto? "Não assistimos. A preocupação total é com o voo", afirma o comandante Lira.

Quem "contava" o placar ao piloto e ao copiloto nesta segunda eram os comissários — além do próprio ruído dos ageiros a bordo, que dava a dica de quem estava ganhando.

Um ageiro-torcedor virou o "narrador oficial" no avião. Sentado em uma poltrona no corredor, com uma camisa preta da seleção, Antonio Cavalcante, consultor técnico, era o mais animado nesta segunda-feira.

"É a primeira vez que acompanho o jogo em um voo e estou curtindo muito. Pensa em um clima legal! A energia é outra, bem bacana", afirmou ele, que viajava justamente na hora do jogo por causa do trabalho.

A partida com placar largo para o Brasil ajudava a relaxar. "Amo futebol, jogo também. O Brasil está indo bem, e isso já deixa a gente mais confortável", disse, no intervalo.

No apito final, mais aplausos e gritos a bordo.

O fim do jogo, porém, não era o fim do voo: havia ainda um pequeno trecho até chegar a Guarulhos — e o clima neste momento já era de ressaca. ageiros torcedores se dividiam entre um cochilo e um filminho. As janelas foram fechadas.

Nos bastidores, as comissárias respiravam aliviadas: não houve tumulto nem torcedor ando mal. O plano agora é se preparar para voos mais altos.

O UOL News Copa fala sobre o baile da Seleção Brasileira contra a Coreia, a atuação de Neymar, a formação tática de Tite, os jogos do dia e mais notícias da Copa! Confira: