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

Guerra da Rússia-Ucrânia

Notícias do conflito entre Rússia e Ucrânia


'Em solo polonês': brasileiro filma deslocamento até sair da Ucrânia

Herculano Barreto Filho

Do UOL, em São Paulo

25/02/2022 14h14

O bartender brasileiro Rafael de Sousa Pinto, que começou a registrar vídeos sobre a realidade na Ucrânia após a invasão russa iniciada na madrugada de ontem (24), conseguiu cruzar a fronteira com a Polônia e deixar o território ucraniano em meio ao conflito.

Nas últimas horas, ele fez vídeo captando o som de sirenes acionadas após bombardeios no local onde estava, falou sobre as filas para saques em caixas eletrônicos, a incerteza de embarque no ônibus e os engarrafamentos no deslocamento. Após registrar a espera para cruzar a fronteira, Rafael fez imagens na Polônia, já em segurança. "Foram mais de 12 horas [de viagem]. Por fim, colocando os pés em solo polonês pela primeira vez na minha vida".

"Aqui, muito tranquilo. Pouca gente. Vamos agora ar pelo processo de revisão das malas. E já estamos saindo, graças a Deus", comemorou em seus primeiros instantes no país vizinho.

A Polônia recebeu pelo menos 29 mil pessoas vindas da Ucrânia após o país ser invadido pela Rússia ontem. Segundo Stanislaw Zaryn, porta-voz de coordenação de serviços especiais, metade desse grupo afirmou estar fugindo da guerra.

A Ucrânia anunciou ontem que homens de 18 a 60 anos estão proibidos de deixar o país em meio ao avanço militar da Rússia na região. Mais de cem pessoas morreram, inclusive crianças, no primeiro dia do conflito na Ucrânia.

'Estamos debaixo de ataque'

No primeiro registro em seu canal no YouTube —voltado ao turismo—, Rafael captou, da janela do prédio onde morava, o som das sirenes acionadas após bombardeios russos. "E não param as sirenes. As casas estão vazias e silenciosas. Estamos debaixo de ataque", narrou, em espanhol, idioma usado também em outros vídeos.

Em seguida, o bartender aparece caminhando pela rua. "São 7h da manhã [2h, no horário de Brasília]. Saí de casa o mais rápido que pude. Despertei com muitas sirenes de bombardeio. Estou em um grupo de quatro pessoas e vamos tratar de sair de ônibus para a Polônia", narrou, sem mostrar as pessoas citadas e nem especificar a cidade.

As notícias não são boas. Muitas cidades estão sendo tomadas pelo exército russo. Já há filas de pessoas tentando sacar dinheiro nos caixas eletrônicos. Estamos com fé de que vamos conseguir sair."
Rafael de Sousa Pinto, bartender e youtuber

No vídeo seguinte, ele diz estar na estação, à espera do embarque em um ônibus. Mas ainda havia incerteza. "Não é por ter ingresso que significa que você vá viajar. Não sei [se vamos conseguir embarcar]. Estamos tratando de comprar comida. É possível ouvir muito som de sirenes. Dizem que é algum tipo de ataque a essa cidade", descreve.

No ônibus, engarrafamento e confusão

Duas horas depois, Rafael grava outro vídeo, já dentro do ônibus. Ele relata um engarrafamento de cerca de uma hora e fala em uma confusão com dois homens árabes, obrigados a deixar o veículo após o embarque.

"O ônibus se moveu mais ou menos 15 metros, o que já é bom. Havia dois homens com aporte com letras em árabes que foram retirados do ônibus", narra.

Posteriormente, mostra o engarrafamento pelas ruas e diz já estar na divisa com a Polônia.

Já chegamos aqui. Estou na fronteira e há muitos carros. São quilômetros e quilômetros de carros parados esperando. Há até pessoas que deixam os carros e seguem caminhando [para sair da Ucrânia]
Rafael de Sousa Pinto, próximo à fronteira com a Polônia

Na última gravação, Rafael já aparece do lado de fora do ônibus. Ele então registra os veículos aguardando para deixar o país. "Estou parado nesse lugar há pelo menos quatro horas. E não sabemos quantas horas mais vamos esperar para cruzar a fronteira com a Polônia. Só posso dizer que a situação aqui é muito mais tranquila", diz, enquanto aguardava para deixar uma Ucrânia sob ataque.

'Minha casa tremeu com as bombas', diz brasileiro

Brasileiros relataram medo, apreensão e vontade de deixar a Ucrânia após a invasão da Rússia. A Embaixada do Brasil na Ucrânia orientou as pessoas a deixar o país europeu imediatamente. Horas após os ataques, milhares de moradores começaram a deixar a capital Kiev. Longas filas de carros foram registradas nesta manhã em estradas, supermercados, postos de gasolina e também em caixas eletrônicos.

O brasileiro Leovitor dos Santos, 30, trabalhava no computador dentro do apartamento onde mora em Kiev, capital da Ucrânia, quando disse ter sentido os primeiros tremores das bombas em meio ao ataque russo.

"Pensei: 'não é possível que o vento esteja tão forte'. Aí, um amigo brasileiro ligou e perguntou se eu tinha escutado o barulho. Minha casa tremeu com as bombas. Só então percebi que estavam acontecendo os ataques. Depois, ouvi mais umas cinco explosões", contou ao UOL.

Ele perambulou ontem pelas ruas à procura de combustível para o carro, já que deve tentar deixar o país ainda hoje. "Ninguém esperava um ataque por toda a Ucrânia".