public override object MatchWithResult(IList <T> list)
            {
                SequenceMatcher <T> m = pattern.GetMatcher(list);

                if (m.Matches())
                {
                    return(m.ToBasicSequenceMatchResult());
                }
                else
                {
                    return(null);
                }
            }