build refact