upstream changes
Merge pull request #2 from tonglil/upstream

upstream changes