changes to execute_functon