-struct individual* make_individual_record(char* xref);
-void individual_add_event(Gom_ctxt ctxt, struct event* evt);
-void individual_add_attribute(Gom_ctxt ctxt, struct event* evt);
-void individual_add_name(Gom_ctxt ctxt, struct personal_name* name);
-void individual_add_lio(Gom_ctxt ctxt, struct lds_event* evt);
+int write_individuals(Gedcom_write_hndl hndl);
+
+DECLARE_MAKEFUNC(individual);
+DECLARE_ADDFUNC2(individual, event);
+DECLARE_ADDFUNC2(individual, personal_name);
+DECLARE_ADDFUNC2(individual, lds_event);
+DECLARE_ADDFUNC2(individual, association);
+DECLARE_ADDFUNC2(individual, source_citation);
+DECLARE_ADDFUNC2(individual, multimedia_link);
+DECLARE_ADDFUNC2(individual, note_sub);
+DECLARE_ADDFUNC2(individual, user_ref_number);
+DECLARE_ADDFUNC2(individual, user_data);
+DECLARE_ADDFUNC2_TOVAR(individual, event, attribute);
+DECLARE_ADDFUNC2_NOLIST(individual, change_date);
+DECLARE_ADDFUNC2_STR(individual, record_id);
+