complicate MQ, need to simplify