fix segment branches not sharing the same List instance after deserialization