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

Diário de férias frustradas: entre ameaças, golpes e descaso no Peru

Ruas vazias em Cusco, no Peru - Luciana Sarmento/UOL
Ruas vazias em Cusco, no Peru Imagem: Luciana Sarmento/UOL

Luciana Sarmento

Colaboração para Nossa

19/03/2020 10h43

Luciana Sarmento

Luciana Sarmento

Férias frustadas

a repórter do UOL foi pega de surpresa com o fechamento das fronteiras e cancelamento de voos no Peru. Agora de volta para o Brasil, ela conta o dia a dia dessa epopeia.

LEIA O PRIMEIRO DIA DO DIÁRIO DA JORNALISTA "PRESA" NO PERU

Acordamos no nosso primeiro dia em Cusco e conhecemos o casal que nos faz companhia nesta quarentena. Flor, da Guatemala, e Mario, da Áustria, nos dão as boas-vindas de maneira muito simpática.

Eles nos contam que vieram da Bolívia, onde trabalhavam em uma ONG, e estavam no Peru de férias. Daqui, seguiriam para a Colômbia e a Guatemala. Agora, tudo está incerto. Mário teme não conseguir entrar nesses países pelo simples fato de ser europeu, "ainda que não pise no continente há dois anos".

Saímos então para nos abastecermos de alimentos para os próximos dias. Nas ruas, poucas pessoas circulam, em sua maioria turistas, e o fazem basicamente para comprar comida. Um policial nos aborda. De maneira muito educada, porém dura e clara, nos diz: "Vocês não devem sair de seus hotéis e casas. Saiam apenas para comprar o essencial e, neste caso, que seja apenas uma pessoa, e utilizem máscaras. De preferência, peçam para que um peruano faça as compras para vocês. Se desrespeitarem essas regras, vocês podem ser presos".

Forças Armadas patrulham as ruas na cidade de Lima, no Peru - Xinhua/Mariana Bazo - Xinhua/Mariana Bazo
Forças Armadas patrulham as ruas na cidade de Lima, no Peru
Imagem: Xinhua/Mariana Bazo

Compramos carne, verduras, frutas e legumes. Tudo que possa nos manter bem nutridos, e voltamos para casa onde amos o dia nos dividindo entre preencher formulários da Embaixada, nos atualizar dos últimos acontecimentos, cancelar hospedagens e agens de trem, cozinhar e dar notícias aos familiares e amigos no Brasil. Não sobra tempo para o tédio.

No grupo de WhatsApp de brasileiros que ficaram no Peru, são dezenas de mensagens que não param de chegar. Muitos se desesperam e acreditam que só conseguirão voltar para casa pressionando a Embaixada e os governantes brasileiros. Apesar de o presidente Martín Vizcarra ter anunciado a repatriação de estrangeiros, não conseguimos obter, de imediato, uma resposta nem da embaixada nem das cias aéreas sobre quando poderemos de fato partir.

Ao saber de turistas americanos, israelenses e mexicanos que já estão deixando o Peru, muitos se irritam, e se mobilizam em tornos de campanhas nas redes sociais com hashtags e mensagens enviadas diretamente ao presidente Jair Bolsonaro, o presidente da Câmara, Rodrigo Maia, e outros políticos em busca de uma solução.

Mulher a por militares em Miraflores, bairro turístico de Lima, no Peru - Xinhua/Mariana Bazo - Xinhua/Mariana Bazo
Mulher a por militares em Miraflores, bairro turístico de Lima, no Peru
Imagem: Xinhua/Mariana Bazo

Outros relatam situações dramáticas, como a de um jovem que foi expulso pelo dono do hotel onde estava hospedado em Cusco, pois ele disse que não receberia mais turistas. Por sorte, ele conseguiu abrigo em outra hospedagem cuja dona foi buscá-lo, a pé, no meio da noite "em um frio de 11 graus".

Também houve quem fosse abordado pela polícia e ameaçado de ser preso, e quem cogitou ir de carro até a fronteira com o Acre, além de, é claro, informações falsas. Uma das pessoas foi informada por um funcionário do hotel onde estava que ela deveria fazer as suas malas e ir a Plaza de Armas, de onde os turistas estavam saindo, o que, de fato, ocorria, mas eles não eram brasileiros e sim, israelenses.

Falsas ofertas de pacotes turísticos e transportes aéreo e terrestre também chegam aos que aqui ficaram. Alguns relatam terem sido inclusive abordados por pessoas dentro de seus hotéis oferecendo o serviço.

Alguns se arriscam, indo até o aeroporto após receberem informações de que só estando lá conseguirão embarcar. Não procede. A Embaixada é clara ao pedir para que sigamos as determinações do governo peruano. A ordem é não circular pelas ruas e aguardar.

Peço a todos para terem paciência, e seguirem apenas as orientações da embaixada. O quadro dos brasileiros no Peru é, de fato, complicado. Alguns se encontram em situações piores que os outros. Há os que não têm onde ficar, nem mais dinheiro para se manter fora do país.

Apesar de tudo, me considero privilegiada. O momento agora é de cuidar da saúde, física e mental, enquanto não chega a hora de voltar para casa.