[Wen Hao] - refactored.