add function types at top level