added modular model definition with generators