Create prototype using a Type
Implement types