Factored out abstract piece