Added all the important bits.