sclass OnePathWithOrigin > OnePath { settable Pt origin = pt(0, 0); *() {} *(S path) { super(path); } *(Pt *origin, S path) { super(path); } *(Iterable points, bool close) { var l = asList(points); origin = first(l); fromPoints(l, close); } toString { ret origin + " " + super.toString(); } }