Fields with * are optional.