types are now required