go_f refactoring and bugfix