diff --git a/HISTORY.md b/HISTORY.md
index 69dee39a..1b174c9c 100755
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -8,6 +8,10 @@
* **Notable Fixes:**
* work around a floating point precision glitch in "ray length"
* fixed an occasional rendering glitch when changing the display style of a variable watcher
+ * fixed color effect for negative inputs, thanks, Brian!
+
+### 2021-04-23
+* objects: fixed color effect for negative inputs, thanks, Brian!
### 2021-04-17
* objects: fixed an occasional rendering glitch when changing the display style of a variable watcher
diff --git a/snap.html b/snap.html
index d1998ca9..3d402453 100755
--- a/snap.html
+++ b/snap.html
@@ -10,7 +10,7 @@
-
+
diff --git a/src/objects.js b/src/objects.js
index bb1b6678..9a042105 100644
--- a/src/objects.js
+++ b/src/objects.js
@@ -84,7 +84,7 @@ BlockEditorMorph, BlockDialogMorph, PrototypeHatBlockMorph, BooleanSlotMorph,
localize, TableMorph, TableFrameMorph, normalizeCanvas, VectorPaintEditorMorph,
AlignmentMorph, Process, WorldMap, copyCanvas, useBlurredShadows*/
-modules.objects = '2021-April-20';
+modules.objects = '2021-April-23';
var SpriteMorph;
var StageMorph;
@@ -5113,7 +5113,7 @@ SpriteMorph.prototype.applyGraphicsEffects = function (canvas) {
}
v = max / 255;
- h = (((h + hueShift * 360 / 200) % 360)+360)%360;
+ h = (((h + hueShift * 360 / 200) % 360) + 360) % 360;
s = Math.max(0, Math.min(s + saturationShift / 100, 1));
v = Math.max(0, Math.min(v + brightnessShift / 100, 1));