public Trm Clone() { Trm ret = new Trm(); ret.optor = optor; ret.Add(this); return(ret); } //the super-super class Pile already provides Clone but its result cannot be casted to (Trm) in c#