Factored out reduction