final sclass LongRange { long start, end; *() {} *(long *start, long *end) {} [stdEq] long length() { ret end-start; } sS _fieldOrder = "start end"; toString { ret "[" + start + ";" + end + "]"; } }