added infinity return for sonar