Continue to re-facted code with OO  sytle.