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

MMA


Discussão entre árbitro e comentarista será investigada pelo UFC; entenda

Ex-lutador, o comentarista Dan Hardy fala com o árbitro Herb Dean após fim da luta entre Francisco "Massaranduba" e Jai Herbert - Jeff Bottari/Zuffa LLC via Getty Images)
Ex-lutador, o comentarista Dan Hardy fala com o árbitro Herb Dean após fim da luta entre Francisco 'Massaranduba' e Jai Herbert Imagem: Jeff Bottari/Zuffa LLC via Getty Images)

Ag. Fight

Ag. Fight

27/07/2020 08h00

A aparente demora de Herb Dean em interromper a luta entre Francisco 'Massaranduba' e Jai Herbert, quando o inglês já demonstrava estar fora de combate após ser levado à lona por um potente golpe do veterano brasileiro, foi alvo de críticas, algumas delas em tempo real.

Presente na arena montada na 'Ilha da Luta', em Abu Dhabi (EAU), para comentar o evento do último sábado (25), o ex-lutador Dan Hardy teve sua voz ouvida na transmissão oficial, aos gritos, pedindo para que o experiente árbitro decretasse o final do duelo antes que o atleta caído sofresse mais danos desnecessariamente.

Irritado com a indefinição de Herb Dean, que ainda hesitou antes de finalmente interromper o combate, Hardy foi cobrar pessoalmente o árbitro na saída do octógono, o que provocou uma calorosa discussão que foi flagrada por algumas pessoas presentes no local. Vice presidente senior do UFC, David Shaw abordou o assunto na coletiva de imprensa após o show e revelou que a organização pretende sentar com as duas partes para entender o ocorrido e colocar um ponto final no imbróglio.

Apesar disso, o dirigente insinuou que o ex-lutador e atual comentarista do Ultimate ultraou os limites ao confrontar diretamente o responsável pela mediação da luta, já que apenas um seleto grupo de pessoas ligadas à equipe de regulamentação do evento devem abordar e interagir com os árbitros.

"Eu não estava lá quando isso aconteceu. Eu ouvi alguns dos comentários na transmissão. O negócio é o seguinte: ser um árbitro de MMA é um dos papéis mais difíceis que você pode ter, e Herb Dean é um dos melhores, categoricamente. A questão é, saúde e segurança dos atletas é de fundamental importância. Por outro lado, você tem um cara como Hardy que teve uma carreira no MMA muito bem sucedida, é um excelente analista agora, mas ele é ional, e ele é impetuoso. O importante para nós é tentar controlar isso e tentar entender o que realmente aconteceu", comentou David Shaw, antes de continuar.

"Obviamente, isso não é algo que você quer abordar com cada uma das partes durante o show. Esses caras têm um trabalho a fazer, então nós certamente não queremos prejudicar seus esforços para fazer um trabalho excelente, como nós esperamos que eles sempre façam. Então, nós vamos voltar, vamos investigar, tentar ter uma melhor compreensão do que aconteceu e realmente começar por aí. Eu acho que o ponto principal é que existe um grupo de pessoas que são habilitadas a falar com os árbitros durante a noite de luta, e esse é o grupo regulatório de (Marc) Ratner, e ninguém mais. Então, nós vamos ver o que acontece na semana que vem quando nós voltarmos para o escritório", concluiu o dirigente.