TSecondBestpTMatcher< T, R > Node1 TSecondBestpTMatcher < T, R >   + TSecondBestpTMatcher() + ~TSecondBestpTMatcher() + uclone() + distance() Node2 BestMatcher< T, T > # m_d # mname # mmatched # mrevmatched + BestMatcher() + ~BestMatcher() + match() + distance() + uclone() + match() + matched() + revmatched() + clear() + size() # matcher() Node2->Node1 Node3 TIDA::Associator< T, T > # mname # mmatched # mrevmatched + Associator() + ~Associator() + uclone() + match() + matched() + revmatched() + clear() + size() Node3->Node2