issue #56 好多改进