preserves darkest/brightest values