factored out constants