removed dealoption dependency from add funtion