Pattern parser (continued)

Working on alternative