made the types a bit better