Serial.println() not working with timer 5

I'm trying to use timer5's input capture and it seems to be breaking serial.print.

The following code hangs:

void setup() {
    Serial.begin(9600);
    Serial.print("setup");

//enable overflow and input capture interrupts
    TIMSK5 = 0x24;
/*Noise canceller, without prescaler, rising edge*/
    TCCR5B = 0xC1;
}

void loop() {
    Serial.println("Begin loop");
    Serial.println("XX");
}

ISR(TIMER5_OVF_vect){
    ;
}

ISR(TIMER5_CAPT_vect){
    ;
}

displaying only

setup

Changing the string printed from "setup" to "s" causes the code to display.

sB

and then hang.

Also, if i leave nothing connected to fin 48 (ICP5) I get just garbage dumped out of the serial port as fast is it can go.

sigh

I fixed it. Somewhere between the data sheet and my code there was a bit error :0

TIMSK5 = 0x24; should have been TIMSK5 = 0x21;

I was instead enabling the overflow interrupt I enabled the output compare, sending my code off to an undefined vector.