add new plan func