public static void Run()
        {
            //TODO: assert each NLPTokenCollection.ToString()==input;
            TokenCollection a   = "a";
            TokenCollection _a  = " a";
            TokenCollection __a = "  a";

            TokenCollection a_    = "a ";
            TokenCollection _a_   = " a ";
            TokenCollection __a_  = "  a ";
            TokenCollection __a__ = "  a  ";

            TokenCollection ab   = "ab";
            TokenCollection _ab  = " ab";
            TokenCollection __ab = "  ab";

            TokenCollection ab_    = "ab ";
            TokenCollection _ab_   = " ab ";
            TokenCollection __ab_  = "  ab ";
            TokenCollection __ab__ = "  ab  ";

            TokenCollection abc   = "abc";
            TokenCollection _abc  = " abc";
            TokenCollection __abc = "  abc";

            TokenCollection abc_    = "abc ";
            TokenCollection _abc_   = " abc ";
            TokenCollection __abc_  = "  abc ";
            TokenCollection __abc__ = "  abc  ";


            TokenCollection abc_d   = "abc d";
            TokenCollection _abc_d  = " abc d";
            TokenCollection __abc_d = "  abc d";

            TokenCollection abc_d_    = "abc d ";
            TokenCollection _abc_d_   = " abc d ";
            TokenCollection __abc_d_  = "  abc d ";
            TokenCollection __abc_d__ = "  abc d  ";
        }
 public static TokenCollection Tokenize(string input)
 {
     return(TokenCollection.Parse(input));
 }