optimize MsgModule with LogicModule