Merge pull request #1 from limodou/master

update to the latest
Merge pull request #2 from limodou/master

update to the latest
Merge pull request #9 from cnlarry/master

update to the latest