Added function prototype support