module dependency improved