gzc & qxz & refact code