basic module layout and dependent defs