explicit types to stop the compiler derping