new add func.