corrected an ugly Heisenbug, new enum for positive/negative updates