f,g completed