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

'Rust': Alec Baldwin divulga carta de equipe negando que set era 'caótico'

Alec Baldwin no set de "Rust" - Reprodução/Instagram
Alec Baldwin no set de "Rust" Imagem: Reprodução/Instagram

Colaboração para Splash, de São Paulo

09/12/2021 14h47

O ator Alec Baldwin, de 63 anos, postou hoje uma carta assinada por 25 membros da produção e do elenco do filme "Rust" em sua conta no Instagram.

No texto, os profissionais afirmam que a "narrativa pública em torno do local de trabalho da tragédia é inadequada e desejam expressar um relato mais preciso de nossa experiência" no set de filmagem.

Em outubro, um tiro acidental disparado por Baldwin, protagonista do filme, matou a diretora de fotografia Halyna Hutchins, de 42 anos, durante as gravações do longa. O diretor Joel Souza, 48, também ficou ferido no acidente.

No mesmo mês, relatos de membros da produção, divulgados pela revista "Variety", indicavam que o set de "Rust" era um lugar "caótico" e sem segurança — inclusive com relato de outra arma que também falhou.

A carta, descrita como sem "aprovação ou influência" de executivos do filme, alega que "as descrições de 'Rust' como um local de trabalho caótico, perigoso e explorador são falsas e distrai do que mais importa: a memória de Halyna Hutchins e a necessidade de se encontrar alternativas modernas para as práticas desatualizadas da indústria de armas de fogo e de segurança."

Segundo texto, na indústria cinematográfica, "é comum trabalhar em produções pouco profissionais para ganhar experiência e créditos". "'Rust' não era uma delas. 'Rust' era profissional. Nós reconhecemos que nenhum set é perfeito e, como qualquer produção, 'Rust' tinha áreas de brilhantismo e áreas que eram mais desafiadoras."

"Embora estejamos firmes com nossos sindicatos e apoiemos fortemente a luta por melhores condições de trabalho em nossa indústria, não sentimos que este set foi uma representação do tipo de condições contra as quais os sindicatos estão lutando ", prossegue a carta.

O grupo alega que a moral no trabalho "era alta". "Risos e otimismo eram comuns entre elenco e equipe. Do diretor aos assistentes de produção, todos os departamentos trabalhavam bem juntos, colaborando e ajudando uns aos outros em objetivos artísticos comuns", diz o texto.

A carta divulgada em nome da equipe de "Rust" foi assinada por profissionais de arte, diretores-assistentes, integrantes do elenco, câmeras, efeitos especiais e outros departamentos. O texto reconhece relatos negativos de membros que deixaram a produção no dia do acidente, mas defende que os "poucos descontentes não expressam as opiniões de todos nós."

Os profissionais de "Rust" ainda pedem que "generalizações" sobre sets de filmagens não sejam feitas e disseram que seguem contribuindo com as investigações sobre o caso.

"Pedimos gentilmente que suas especulações e generalizações sobre nós e nossos colegas sejam solidárias até que uma investigação seja concluída", finaliza o texto.

Leia o texto original e na íntegra publicado por Alec Baldwin: