How to Manage Types?