function wrap modules