anchor.diff:    // with the desired L*. All values of L* are possible when there is 0 chroma. Return a color
     // with 0 chroma, i.e. a shade of gray, with the desired L*.
     if (answer == null) {
  -    return ColorUtils.argbFromLstar(lstar);
  -  }
  -
  -  return answer.viewed(frame);
  +    return Cam16.fromInt(ColorUtils.argbFromLstar(lstar));
  +  }
  +
  +  return answer;
   }
   
   Cam16? findCamByJ(
  
positive.code:     if (o is! HctColor) {
        return false;
      }
      return o._hue == _hue && o._chroma == _chroma && o._tone == _tone;
    }
  
    @override
  
negative.code:   }
  
    /// 0 <= [newChroma] <= ?
    /// After setting chroma, the color is mapped from HCT to the more
    /// limited sRGB gamut for display. This will change its ARGB/integer
    /// representation. If the HCT color is outside of the sRGB gamut, chroma
    /// will decrease until it is inside the gamut.
    set chroma(double newChroma) {
      final cam16 = getCam16(hue, newChroma, tone);
      _argb = cam16.viewed(ViewingConditions.sRgb);
      _hue = cam16.hue;
      _chroma = cam16.chroma;
      _tone = ColorUtils.lstarFromArgb(_argb);
    }
  
    /// Lightness. Ranges from 0 to 100.
  