types defined