Oops
Implement function types.