further work on list_union