maybe add a builder for this - the six boolean parameters in a row makes it hard to tell what the code is doing and is likely error-prone for callers.