build refactoring in progress