Refactor

Signed-off-by: Jiahe Jou <joujiahe@gmail.com>