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

Súmula de Inter x Corinthians registra acusação de racismo e dá detalhes

Reprodução/Premiere
Imagem: Reprodução/Premiere

Do UOL, em Porto Alegre

14/05/2022 23h03

Braulio da Silva Machado, árbitro de Internacional e Corinthians, registrou em súmula a acusação de racismo de Edenilson contra Rafael Ramos. O relato ainda traz detalhes da conversa que durou cerca de cinco minutos durante a etapa final do jogo válido pela sexta rodada do Campeonato Brasileiro. De acordo com a arbitragem, o lateral corintiano negou a ofensa e disse ter proferido "foda-se, caralho" durante dividida com o camisa 8.

O relato em súmula, citando Rafael Ramos, é diferente do apresentado por Roberto de Andrade, diretor de futebol do Corinthians, em entrevista coletiva após o jogo.

"Ele disse outra coisa. Até se me permitirem, tem palavrão no meio... ele disse: "mano, caralho". Ele deve ter entendido outra coisa. Ele pediu desculpas se entendeu outra coisa, que não é do feitio dele", declarou Roberto de Andrade.

Inter e Corinthians empataram em 2 a 2, hoje (14), no estádio Beira-Rio.

O texto de Braulio da Silva Machado entrega detalhes novos da discussão após a ofensa relatada por Edenilson. O episódio ficou sem esclarecimento durante a partida e só foi confirmado após o apito final, por meio de declaração de Jô.

"Aos 31 minutos do 2º tempo, no momento em que a partida estava paralisada, fui informado pelo jogador nº 8, da equipe sc internacional, sr. edenilson andrade dos santos, que seu adversário nº 21, sr. rafael antônio figueiredo ramos, havia proferido as seguintes palavras para ele: "foda-se macaco". neste momento paraliso a partida e chamo os jogadores envolvidos para relatarem o que havia acontecido, sendo que o jogador edenilson andrade dos santos, confirma as palavras anteriormente citadas e o jogador rafael antônio figueiredo ramos, afirma que houve um mal entendido devido ao seu sotaque (português) e diz ter proferido as seguintes palavras" foda-se caralho". devido a distancia dos atletas e barulho da torcida nem eu, nem outro integrante da equipe de arbitragem consegue ouvir ou perceber qualquer das palavras acima citadas. então dou continuidade a partida", escreveu o árbitro da partida.