revise some bugs, but TLE