anchor.diff:                  if Boolean(Mask and BitRun) then
                   begin
                     if coLabByteRange in FSourceOptions then
  -                    L := LRun16^ / 2.55
  +                    L := LRun16^ / 655.36
                     else
                       L := LRun16^;
                     Inc(LRun16, Increment);
                     if coLabChromaOffset in FSourceOptions then
                     begin
  -                    a := aRun16^ - 128;
  +                    a := aRun16^ - 32768;
                       Inc(aRun16, Increment);
  -                    b := bRun16^ - 128;
  +                    b := bRun16^ - 32768;
                       Inc(bRun16, Increment);
                     end
                     else
  
positive.code:                 if Boolean(Mask and BitRun) then
                  begin
                    if coLabByteRange in FSourceOptions then
                      L := LRun16^ / 2.55
                    else
                      L := LRun16^;
                    Inc(LRun16, Increment);
                    if coLabChromaOffset in FSourceOptions then
                    begin
                      a := aRun16^ - 128;
                      Inc(aRun16, Increment);
                      b := bRun16^ - 128;
                      Inc(bRun16, Increment);
                    end
                    else
  
negative.code:                   end;
  
                    // blue
                    Target8^ := ClampByte(Round(255 * ( 0.099 * X - 0.198 * Y + 1.099 * Z)));
                    Inc(Target8);
                    // green
  