@Override
    public Object clone() throws CloneNotSupportedException{
        try {
            Board b = new Board(this.getSize());
            for(int i=0;i<getSize();i++){
                System.arraycopy(this.fields[i], 0, b.fields[i], 0, getSize());
            }
            return b;
        } catch (BoardException ex) {
            Logger.getLogger(Board.class.getName()).log(Level.SEVERE, null, ex);
        }
        return null;
    }