Update builder behavior + refactoring