Models boilerplate
merging boilerplate
implementation