public RdpPattern EndAttDeriv (RdpPattern p) { RdpPattern m = endAtt [p] as RdpPattern; if (m != null) return m; m = p.EndAttDeriv (this); endAtt [p] = m; return m; }