change common part to reduce time consume largely