be more explicit about types