Six weeks of six days (4 work days and 2 rest days) in a month would be better than four weeks of nine days (6 work days and 3 rest days) in my opinion.
This sort of idea is why I sketched out pdv [0] in Zig. Even extremely simple type systems can handle arbitrary invariants when you are allowed to compute with those invariants at compile time.
This is awesome! It looks like a fantastic way to play with boolean logic and learn/teach how computers work. I love the ability to encapsulate circuits and abstract them into higher level components.