haohuan commit, achieve shift invariance, solve some bugs