abstract MatcherBehavior
use single MatcherBehavior abstraction