added terrible terrible function calls