I think I made the 3-arg version of type work! May end of regretting this later