fixed function definitions