it`s my code but it doesn`t work

#include <IRremote.h>

#include <IRremoteInt.h>

#include <IRremoteTools.h>

#include <SevSeg.h>

SevSeg sevseg;

int Time = 0;

int Min = 0;

int Sec = 0;

int StartStopValue = 0;

int RecvPin = 11;

IRrecv irrecv(RecvPin);

decode_results results;

void setup() {

irrecv.enableIRIn();

sevseg. Begin(0,0,1,2,3,4,5,6,7,8,9,10,13);

sevseg. Brightness(90);

}

void loop() {

// put your main code here, to run repeatedly:

while(StartStopValue == 0) {

switch(results.value) {

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

if (irrecv.decode(&results)) {

long int decCode = results.value;

case 16724175: {

Min = Min + 30;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16718055: {

Min = Min + 10;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16743045: {

Min = Min + 5;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16716015: {

Min = Min + 3;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16726125: {

Min = Min + 1;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16734885: {

Sec = Sec + 30;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16728765: {

Sec = Sec + 10;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16730805: {

Sec = Sec + 5;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16732845: {

Sec = Sec + 1;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16738455: {

Min = 0;

Sec = 0;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

case 16761405: {

StartStopValue = 1;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

default: {

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

break;

}

}

if(Min > 99); {

Min = 0;

}

if(Sec > 59); {

Sec = 0;

}

Time = Min * 100 + Sec;

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

if (irrecv.decode(&results)) {

long int decCode = results.value;

}

}

}

while(StartStopValue == 1); {

if(Time % 100 != 0); {

Time = Time - 1;

delay(1000);

sevseg.NewNum(Time,(byte) 2);

sevseg.PrintOutput();

}

if(Time % 100 == 0); {

Time = Time - 41;

delay(1000);

sevseg.NewNum(Time,(byte) 2);

sevseg.PrintOutput();

}

if(results.value = 16761405); {

StartStopValue = 0;

}

if(Time == 0); {

StartStopValue = 0;

}

}

}

problem is "crosses initialization of 'long int decCode' " at 32nd line

(â†“last line)

void loop() {

// put your main code here, to run repeatedly:

while(StartStopValue == 0) {

switch(results.value) {

sevseg.NewNum(Time,2);

sevseg.PrintOutput();

if (irrecv.decode(&results)) {

long int decCode = results.value;

what`s my wrong & how can fix it?