refactor C1Q6

rewrite C1Q6 as the old implementation was wrong
refactor C1Q7

by giving better names and adding more descriptions.