fullname is optional