merge zhiliang's change