public Cell merge(Cell m, Cell e) {Cell n = new Cell();if (m.skip != e.skip) {return null;}if (m.cmd >= 0) {if (e.cmd >= 0) {if (m.cmd == e.cmd) {n.cmd = m.cmd;} else {return null;}} else {n.cmd = m.cmd;}} else {n.cmd = e.cmd;}if (m.ref >= 0) {if (e.ref >= 0) {if (m.ref == e.ref) {if (m.skip == e.skip) {n.ref = m.ref;} else {return null;}} else {return null;}} else {n.ref = m.ref;}} else {n.ref = e.ref;}n.cnt = m.cnt + e.cnt;n.skip = m.skip;return n;}

public Cell merge ( Cell m , Cell e ) { Cell n = new Cell ( ) ; if ( m . skip != e . skip ) { return null ; } if ( m . cmd >= 0 ) { if ( e . cmd >= 0 ) { if ( m . cmd == e . cmd ) { n . cmd = m . cmd ; } else { return null ; } } else { n . cmd = m . cmd ; } } else { n . cmd = e . cmd ; } if ( m . ref >= 0 ) { if ( e . ref >= 0 ) { if ( m . ref == e . ref ) { if ( m . skip == e . skip ) { n . ref = m . ref ; } else { return null ; } } else { return null ; } } else { n . ref = m . ref ; } } else { n . ref = e . ref ; } n . cnt = m . cnt + e . cnt ; n . skip = m . skip ; return n ; }
public virtual Cell Merge(Cell m, Cell e){Cell n = new Cell();if (m.skip != e.skip){return null;}if (m.cmd >= 0){if (e.cmd >= 0){if (m.cmd == e.cmd){n.cmd = m.cmd;}else{return null;}}else{n.cmd = m.cmd;}}else{n.cmd = e.cmd;}if (m.@ref >= 0){if (e.@ref >= 0){if (m.@ref == e.@ref){if (m.skip == e.skip){n.@ref = m.@ref;}else{return null;}}else{return null;}}else{n.@ref = m.@ref;}}else{n.@ref = e.@ref;}n.cnt = m.cnt + e.cnt;n.skip = m.skip;return n;}
