@Override public void accept(Visitor v) { v.visit(this); }
@Override public <T> T accept(Visitor<T> visitor) { return visitor.visit(this); }