clean code: gpm.go