refactor to adjust branch property