some typo fix and bad smell fix