public static void AddBehavior <T>(this AbilityModel model, T behavior) where T : Model { model.behaviors = model.behaviors.AddTo(behavior); model.AddChildDependant(behavior); }