What Are Constraints And Types