factored out strict flags