making as close to the moduleEngines example as possible.