cleaned up predict