updates #3: Code clean.