add handling of negative values