DRY version.