I think these need to be `this` and `other` not `mate0` and `mate1`.  In building, we still need to store *both* sequences (we don't know which way the graph will be expanded out) but all offsets etc will be shifted w.r.t. `this`.  If you just use `mate0` and `mate1` then you have to track if `this` is `mate0` or `mate1`.