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

Botafogo

Perícia aponta que carro de Marcinho estava acima do limite de velocidade

Marcinho, ex-jogador do Botafogo, sai da delegacia após prestar depoimento por atropelamentos no Rio de Janeiro - Alexandre Araújo/UOL
Marcinho, ex-jogador do Botafogo, sai da delegacia após prestar depoimento por atropelamentos no Rio de Janeiro Imagem: Alexandre Araújo/UOL

Alexandre Araújo

Do UOL, no Rio de Janeiro (RJ)

11/01/2021 20h53

O laudo pericial requisitado pela 42ª Delegacia Policial, produzido pelo Instituto de Criminalística Carlos Éboli (ICCE), concluiu que o carro dirigido pelo jogador Marcinho estava cima do limite de velocidade indicado para a Avenida Lúcio Costa, na noite do último dia 30, quando ele atropelou e matou um casal. O ex-lateral do Botafogo está sendo indiciado por duplo homicídio culposo.

De acordo com o documento ao qual o UOL Esporte teve o, o Mini Cooper que era conduzido pelo jogador trafegava entre 86 Km/h e 110 Km/h. A velocidade máxima na via é de 70 Km/h. A informação foi publicada, inicialmente, pelo jornal O Globo e confirmada pelo UOL Esporte. Os exames necessários foram feitos no último dia 7.

Alexandre Silva de Lima morreu na hora e Maria Cristina José Soares faleceu seis dias depois. Na ocasião, ela foi levada ao Hospital Lourenço Jorge em estado grave e, posteriormente, transferida ao Hospital Vitória, onde ou por cirurgia, mas não resistiu.

Em depoimento prestado na semana ada, Marcinho afirmou que dirigia dentro do limite de velocidade e que o casal apareceu repentinamente à sua frente, sem que houvesse tempo de impedir a colisão. Testemunhas do acidente, porém, rebateram tal versão e indicaram que o jogador estava " 'costurando' em alta velocidade". O atleta deve prestar novo depoimento à polícia, ainda sem data definida.

Marcinho não prestou socorro às vítimas sob a alegação de que estava com medo de ser linchado. O carro — que está no nome de uma empresa da qual Sergio Lemos, pai do jogador é sócio —, foi encontrado a cerca de 600 metros do local do atropelamento.

A defesa do lateral foi procurada, mas ainda não respondeu aos contatos feitos pela reportagem.

Ainda segundo o documento, o airbag do carro não foi acionado porque "o veículo é munido de sensores de velocidade. Quando ocorre uma
desaceleração brusca por impacto, a unidade de controle eletrônico envia um sinal elétrico para o ignitor do gerador de gás, responsável por inflar a bolsa. O acionamento depende de quanto o veículo desacelera no impacto, e não da deformação. Como o corpo humano não possui massa suficiente capaz de desacelerar bruscamente o veículo, com o atropelamento, o dispositivo de airbag não é acionado".

Botafogo