Merge branch 'master' into develop
add integer rounding but it will lead to degeneration
Merge branch 'develop'