
public class BasedFigure implements Cloneable {
    private Point base;
    public BasedFigure(Point base) {
        this.base = base;
    }
    public Point getBase() { return base; }
    public Object clone() throws CloneNotSupportedException {
        BasedFigure copy = (BasedFigure)super.clone();    
        copy.base = (Point)base.clone();
        return copy;
    }
}
