public boolean match(Atom o) { return delegee.match(o); }
public boolean canDestruct() { return delegee.canDestruct(); }
public Product mapProduct(Function fn) { return delegee.mapProduct(fn); }
public boolean match(Type p) { return delegee.match(p); }
public boolean matchFor(Pattern p) { return delegee.matchFor(p); }
public boolean match(Function p) { return delegee.match(p); }
public boolean match(Union p) { return delegee.match(p); }
public boolean eq(Function p) { return delegee.eq(p); }
public boolean eq(List p) { return delegee.eq(p); }
public boolean eq(Product o) { return delegee.eq(o); }
public <U> Seq<U> map(Function fn) { return delegee.map(fn); }
public boolean eq(Tagged o) { return delegee.eq(o); }
public Product prepend(Pattern p) { return delegee.prepend(p); }
public boolean eq(Atom o) { return delegee.eq(o); }
public boolean match(Tagged o) { return delegee.match(o); }
public SeqIterator<Pattern> seqIterator() { return delegee.seqIterator(); }
public boolean match(Product p) { return delegee.match(p); }
public boolean eq(Set o) { return delegee.eq(o); }
public boolean match(Set p) { return delegee.match(p); }
public boolean eq(Union o) { return delegee.eq(o); }
public boolean match(Intersection p) { return delegee.match(p); }
public boolean eq(Intersection o) { return delegee.eq(o); }
public boolean eqFor(Pattern o) { return delegee.eqFor(o); }
public boolean eq(Type o) { return delegee.eq(o); }
public String toString() { return delegee.toString(); }
public boolean match(Object o) { return delegee.match(o); }
public Seq<Pattern> destruct() { return delegee.destruct(); }
public boolean eq(Object o) { return delegee.eq(o); }