types with users(not done)