Additional changes and clear code #3.