class init now takes constrained_matching arg