Fix a bug(looks like), but need more test