DRY out some modules