Unexpected return types are a pain the ass