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

Roberto Sadovski

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

'O Último Duelo': Ridley Scott volta ao épico, mas o filme é de Jodie Comer

Jodie Comer em "O Último Duelo" - 20th Century Studios
Jodie Comer em 'O Último Duelo' Imagem: 20th Century Studios

Colunista do UOL

15/10/2021 11h00

Receba os novos posts desta coluna no seu e-mail

Email inválido

"O estupro não é uma agressão à mulher, e sim a violação da propriedade de um homem." A frase, proferida por um dos protagonistas de "O Último Duelo", era vigente no século 14, em que esposas eram vistas como mercadoria, valorizadas pelo dote que acompanhava o matrimônio.

O fato de o tema continuar urgente, em um mundo em que as mulheres seguem lutando por seus direitos, especialmente em casos horríveis que envolvem crime sexual, faz com que esse filme de Ridley Scott não seja somente um épico medieval com todas as batalhas que tem direito. É uma observação necessária sobre o estado das coisas - e sobre coisas que nunca mudam.

duelo peleja - 20th Century Studios - 20th Century Studios
Matt Damon e Adam Driver lutam até a morte em 'O Último Duelo'
Imagem: 20th Century Studios

No centro da trama está Marguerite (Jodie Comer), que torna-se esposa do cavaleiro Jean de Carrouges (Matt Damon). Ela atrai a cobiça de outro nobre, Jacques Le Gris (Adam Driver). Na ausência de Carrouges, Le Gris invade seu castelo e encontra Marguerite sozinha. Ele a ataca, a estupra e, cínico, despede-se com uma ameaça velada.

O caso foi parar na história porque Marguerite, ao contrário de centenas de mulheres que enfrentaram a mesma violência, não se calou. Contou a agressão a seu marido ("propriedade do homem", certo?) e exigiu justiça. No jogo de palavras levado até o rei, Carrouges desafiou Le Gris em um duelo até a morte - o tal "último duelo", derradeiro julgamento por combate nos tribunais ses.

Ridley Scott já mostrou repetidas vezes que é um artesão refinado ao reconstruir mundos há muito extintos. Visualmente, "O Último Duelo" é um arraso, com seus castelos e vilarejos sujos e decadentes. É também um mundo sem cor, frio, que evoca um sentimento de desesperança.

É o tabuleiro adequado para dispor uma história de vingança e injustiça, uma crítica à misoginia histórica desenhada para causar reflexão. A ação das batalhas, o que Scott executa no café da manhã, é a moldura para uma narrativa em três atos, um novelão trágico que lembra, entre muitos, "Rashomon", de Kurosawa, com um evento traumático revisto sob diferentes pontos de vista.

duelo casal - 20th Century Studios - 20th Century Studios
'O Último Duelo' é épico com clima de novela trágica
Imagem: 20th Century Studios

A base é o livro publicado em 2004 por Eric Jager, que reconstruiu os caminhos legais do crime cometido contra Marguerite. Ele mergulhou em registros históricos e preencheu as lacunas ao extrapolar situações e eventos perdidos no tempo.

Foi um processo direto e intenso: Carrouges levou a acusação contra Le Gris, que negou ter cometido qualquer violência. O caso foi para julgamento por combate - uma decisão "nas mãos de Deus". Caso Carrouges perdesse, sua esposa seria igualmente punida, sendo queimada viva.

O texto foi adaptado por Matt Damon, Ben Affleck (em seu primeiro roteiro juntos desde o Oscar por "Gênio Indomável") e Nicole Holofcener. O primeiro ato, com texto de Damon, trouxe o ponto de vista de Carrouges. Affleck escreveu a visão de Le Gris, e Holofcener encerrou os relatos com a narrativa de Marguerite.

O tom levemente satírico do texto, em especial em seus dois primeiros atos, entra em choque com a sobriedade do período. A estrutura em atos ajuda a manter a aura de mistério, e Scott sabe equilibrar arte e espetáculo como poucos. O roteiro combinado, porém, não está livre de soluços, o que é comum em obras episódicas.

duelo affleck - 20th Century Studios - 20th Century Studios
Ben Affleck em 'O Último Duelo': parece que está em outro filme
Imagem: 20th Century Studios

Seria uma história menos atropelada caso o elenco estivesse em melhores dias. Matt Damon e Adam Driver sofrem para achar o tom correto, e não raro parecem em uma montagem de Shakespeare no colegial. Existe um exagero em sua entrega que demora a engrenar para ar alguma verdade.

Ben Affleck, no papel secundário do conde Pierre d'Alençon, aliado de Le Gris e desafeto de Carrouges, está em modo "ame ou odeie". Seu personagem a longe do registro de um nobre da França medieval, lembrando mais o estereótipo do universitário americano que só pensa em farrear, encher a cara e transar.

Existe um senso de humor perverso nas entrelinhas, um respiro que acentua a gravidade do tema principal: o estupro de uma mulher e o depósito de seu destino em homens mais preocupados com a própria honra do que em fazer justiça.

duelo ridley - 20th Century Studios - 20th Century Studios
Ridley Scott dirige Jodie Comer e Matt Damon
Imagem: 20th Century Studios

Todos os pecados, entretanto, são perdoados quando a história a a contar com o ponto de vista de Marguerite. Não só porque é quando o filme toma musculatura e deixa de lado a briga de espadas literal e alegórica entre Damon e Driver, mas pela revelação da força da natureza que é Jodie Comer.

Quando ela finalmente assume o protagonismo da trama, trazendo com este a verdade da história, "O Último Duelo" transcende o épico para examinar uma sociedade em que "honra" é desculpa para poder e misoginia. Aos poucos a personagem de Comer, até então resoluta em seu papel como parte de um negócio em um equilíbrio hierárquico delicado, encontra sua voz e finca o pé em sua luta por justiça.

duelo jodie - 20th Century Studios - 20th Century Studios
Jodie Comer é a grande força de 'O Último Duelo'
Imagem: 20th Century Studios

Revelada na série de espionagem e assassinato "Killing Eve", e apresentada às engrenagens hollywoodianas em "Free Guy", Jodie Comer é econômica e poderosa em sua interpretação. São olhares e movimentos, expressões sutis e fúria contida.

A cena em que ela é agredida sexualmente é revelada em dois momentos. Sob o ponto de vista de Le Gris, Marguerite apenas encenou um teatro de sedução que terminou em sexo agressivo. A mesma cena, narrada pela vítima, despe-se de qualquer ironia para revelar-se como um ato brutal que deixa marcas, físicas e psicológicas, que o tempo não apaga.

O trabalho de Comer é a injeção de veracidade que remove "O Último Duelo" do lugar-comum e o faz expor camadas dolorosas enfronhadas entre o espetáculo. É um filme para adultos, cinema à moda antiga. Um trabalho que busca a verdade, mesmo que ela pareça irrelevante quando o crime é cometido contra uma mulher. Com Jodie Comer à frente, "irrelevância" é uma palavra que, aqui, não encontra mais espaço.