added initial types and functions names