@Override
    public @NotNull Point getShiftedPoint(@NotNull Point targetPoint, int shift) {
      return new Point(targetPoint.x, targetPoint.y - shift);
    }
@Override
    public @NotNull Point getShiftedPoint(@NotNull Point targetPoint, int shift)