Commit: trait, OO paradigm