add IPatternParser