keep things DRY