protected void encode(OtpOutputStream buf, int start) { int arity = this.arity() - start; if (arity > 0) { buf.write_list_head(arity); for (int i = start; i < arity + start; i++) { buf.write_any(elems[i]); } } if (lastTail == null) { buf.write_nil(); } else { buf.write_any(lastTail); } }