issue #4277 : Refactor to reduce key words and fix some bugs.
Merge pull request #1666 from SmallAiTT/iss_4277_fix4release3.0

issue #4277 : Refactor to reduce key words and fix some bugs.