all works but tests need refactoring because we're about to remove
Mains class.