no warnings;

my @subs = qw(
assign
assign_vars
store_vars
serial
serialize
assign_sigil
yaml_out
yaml_in
create_dir
join_path
wav_off
strip_all
strip_blank_lines
strip_comments
remove_spaces
config_file
ecmd_dir
this_wav_dir
project_dir
prepare
wav_dir
eval_iam
global_config
project_config
config
read_config
walk_tree
substitute
load_project
project_init
initialize_project_data
add_track
add_mix_track
mix_suffix
restore_track
register_track
dig_ruins
find_wavs
remove_small_wavs
new_take
increment_take
decrement_take
select_take
add_volume_control
add_pan_control
selected_version
set_active_version
new_version
get_versions
mon_vert
collect_chains
rec_status
really_recording
make_io_lists
rec_route
route
hash_push
eliminate_loops
write_chains
new_wav_name
output_format
initialize_oids
mono_to_stereo
pre_multi
convert_to_jack
convert_to_alsa
load_ecs
new_engine
setup_transport
connect_transport
start_transport
stop_transport
transport_running
disconnect_transport
toggle_unit
start_clock
update_clock
restart_clock
refresh_clock
to_start
to_end
jump
rec_cleanup
update_version_button
update_master_version_button
add_effect
remove_effect
remove_op
cop_add
cop_init
effect_update
find_op_offsets
apply_ops
apply_op
prepare_static_effects_data
extract_effects_data
sort_ladspa_effects
read_in_effects_data
read_in_tkeca_effects_data
get_ladspa_hints
range
integrate_ladspa_hints
d2
dn
round
save_state
retrieve_state
save_effects
r
r5
retrieve_effects
arm_mark
colonize
mark
new
project_label_configure
length_display
clock_display
manifest
loop
destroy_widgets
init_gui
transport_gui
time_gui
oid_gui
paint_button
flash_ready
take_gui
global_version_buttons
track_gui
effect_button
make_scale
is_soloing
toggle_muting
toggle_mute
is_muted
refresh_t
refresh_c
refresh
refresh_oids
restore_time_marker_labels
hello
new
project_dir
this_wav_dir
set
explode
deref_
this_wav_dir
new
_get_versions
targets
versions
this_last
_selected_version
last_version
new_version
new
loop
config_file
ecmd_dir
this_wav_dir
project_dir
prepare
wav_dir
eval_iam
global_config
project_config
config
read_config
walk_tree
substitute
load_project
project_init
initialize_project_data
add_track
add_mix_track
mix_suffix
restore_track
register_track
dig_ruins
find_wavs
remove_small_wavs
new_take
increment_take
decrement_take
select_take
add_volume_control
add_pan_control
selected_version
set_active_version
new_version
get_versions
mon_vert
collect_chains
rec_status
really_recording
make_io_lists
rec_route
route
hash_push
eliminate_loops
write_chains
new_wav_name
output_format
initialize_oids
mono_to_stereo
pre_multi
convert_to_jack
convert_to_alsa
load_ecs
new_engine
setup_transport
connect_transport
start_transport
stop_transport
transport_running
disconnect_transport
start_clock
update_clock
restart_clock
refresh_clock
toggle_unit
to_start
to_end
jump
refresh_t
refresh_c
refresh
rec_cleanup
update_version_button
update_master_version_button
add_effect
remove_effect
remove_op
cop_add
cop_init
effect_update
find_op_offsets
apply_ops
apply_op
prepare_static_effects_data
extract_effects_data
sort_ladspa_effects
read_in_effects_data
read_in_tkeca_effects_data
get_ladspa_hints
range
integrate_ladspa_hints
d2
dn
round
save_state
retrieve_state
save_effects
r
r5
retrieve_effects
arm_mark
colonize
mark



assign
assign_vars
store_vars
serial
yaml_out
yaml_in
create_dir
join_path
wav_off
strip_all
strip_blank_lines
strip_comments
remove_spaces
replace_abbreviations

hello
new
new
usage
take_gui
track_gui
refresh
flash_ready
update_master_version_button
paint_button
refresh_oids
paint_button
project_label_configure
length_display
clock_display
manifest
global_version_buttons
destroy_widgets
restore_time_marker_labels
hello
hello
);
my $text = join '', <>;
#print $text; exit;
my %subs;
@subs{@subs} = (1..scalar @subs);
my %found;
map {
	while ($text =~ m/
					([ 
						\\   # backslash
						\s   # space
						\(   # or open parenthesis
					])?  # optional
					$_   # sub name
					\b  # word boundary
					(?!\s*\() # not followed by  (
					/gx ){
		my $backslash = $1;

		$backslash =~ s/\\/\\\\/;
		$backslash =~ s/\s+//g;
		#print $backslash, $_, $/;
		$found{$backslash.$_}++;

	}

} keys %subs;

print join $/, sort keys %found;

