seems to work, needs to guess a better value for % grade