[Yujun] Refatoring.