add fmod and arctan2