fixing multiple definitions at compile time