Modules

defer calculating subs until necessary