fixed function prototype