build and move testable; transactional
manual merge