build separation builder