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

Vasco

Vasco x Operário: um duelo de orgulho pela luta racial e de classes sociais

Time de Operário na década de 10: formado por trabalhadores da Rede Viação Paraná-Santa Catarina - Divulgação / Site oficial do Operário
Time de Operário na década de 10: formado por trabalhadores da Rede Viação Paraná-Santa Catarina Imagem: Divulgação / Site oficial do Operário

Bruno Braz

Do UOL, no Rio de Janeiro

28/05/2021 04h00

Uma das músicas mais emblemáticas e emocionantes que a torcida do Vasco canta nos estádios diz: "Eu já lutei por negros e operários". Justamente no início da caminhada de reconstrução na Série B, o Cruzmaltino terá pela frente amanhã (29), às 11h, em São Januário (RJ), um adversário que tem até no nome uma história que muito se parece com a sua.

Assim como o time do Vasco na década de 20, o Operário — no início da década de 10 — também surgiu com jogadores formados pela classe trabalhadora humilde.

Apesar da história ter versões controversas, a mais comum é a de que a equipe, inicialmente, foi composta por funcionários que trabalhavam nos escritórios e oficinas da Rede Viação Paraná-Santa Catarina com o nome de Foot Ball Clube Operário Pontagrossense.

Sua fundação em 1912, coincidentemente, aconteceu em 1º de maio, que anos depois seria considerado o Dia do Trabalhador, data que por muitos momentos foi celebrada em São Januário, na década de 40, pelo ex-presidente da República, Getúlio Vargas, em comícios históricos.

Em 1933 o nome foi rebatizado para o que é até hoje: Operário Ferroviário Esporte Clube, e surgiu após a incorporação do Club Athlético Ferroviário — que era uma espécie de grêmio dos funcionários da Rede Ferroviária — ao Operário Sport Club.

Causa racial também é abraçada

Operário Ferroviário também abraça as causas raciais desde seus primórdios - Divulgação / Operário - Divulgação / Operário
Operário Ferroviário também abraça as causas raciais desde seus primórdios
Imagem: Divulgação / Operário

E se o Vasco carrega a fama de ter lutado contra o preconceito acenando com a famosa "Resposta Histórica" de 1924 — quando se desfiliou da associação ao não concordar com as regras que excluíam negros e operários de sua equipe —, o Operário também levanta a bandeira das causas raciais.

Além de possuir jogadores negros desde seus primórdios (veja na foto que abre a reportagem), as cores do clube também foram escolhidas para simbolizar a união e igualdade das raças.

"Trata-se de uma homenagem às raças branca e negra, que sempre terão vez em nossa agremiação", disse um dos fundadores, Alberto Scarpim, em trecho retirado do site oficial do Operário.

Por conta das histórias que se entrelaçam em muitos pontos, alguns torcedores do Operário nutrem simpatia pelo Vasco.

"O Operário é um clube da classe operária, que desde o início teve muitos jogadores negros e possui uma historia também nessa questão. Tem, sim, essa comoção [com o Vasco], principalmente os torcedores mais antigos", declarou a jornalista Letícia Cabral, da rádio Lagoa Dourada, de Ponta Grossa (PR), cidade paranaense que abriga o Operário.

Nunca se enfrentaram

Apesar de histórias tão parecidas e serem clubes centenários, Vasco e Operário nunca se enfrentaram. O primeiro duelo acontecerá amanhã (29), às 11h, em São Januário, em jogo válido pela primeira rodada da Série B do Campeonato Brasileiro.

Após ser campeão da Série D, em 2017, e da Série C, em 2018, o Operário já está há dois anos na Série B. Em 2019 ficou na 10ª colocação. Já na temporada ada ficou na oitava posição e chegou a brigar por uma vaga de o.

Já o Vasco inicia sua quarta disputa de Série B após ser rebaixado no último Brasileirão. Anteriormente o Cruzmaltino já havia disputado em 2009, 2014 e 2016.

Vasco