add more module infrastructure