introduced BehaviorFactory