//Autogenerated
#ifdef CONFIG_LIBSPOTIFY_LOAD_RUNTIME
static const char*(*f_sp_error_message)(sp_error error);
static sp_error(*f_sp_session_create)(const sp_session_config *config, sp_session **sess);
static sp_error(*f_sp_session_release)(sp_session *sess);
static sp_error(*f_sp_session_login)(sp_session *session, const char *username, const char *password, bool remember_me, const char *blob);
static sp_error(*f_sp_session_relogin)(sp_session *session);
static int(*f_sp_session_remembered_user)(sp_session *session, char *buffer, size_t buffer_size);
static const char *(*f_sp_session_user_name)(sp_session *session);
static sp_error(*f_sp_session_forget_me)(sp_session *session);
static sp_user *(*f_sp_session_user)(sp_session *session);
static sp_error(*f_sp_session_logout)(sp_session *session);
static sp_error(*f_sp_session_flush_caches)(sp_session *session);
static sp_connectionstate(*f_sp_session_connectionstate)(sp_session *session);
static void *(*f_sp_session_userdata)(sp_session *session);
static sp_error(*f_sp_session_set_cache_size)(sp_session *session, size_t size);
static sp_error(*f_sp_session_process_events)(sp_session *session, int *next_timeout);
static sp_error(*f_sp_session_player_load)(sp_session *session, sp_track *track);
static sp_error(*f_sp_session_player_seek)(sp_session *session, int offset);
static sp_error(*f_sp_session_player_play)(sp_session *session, bool play);
static sp_error(*f_sp_session_player_unload)(sp_session *session);
static sp_error(*f_sp_session_player_prefetch)(sp_session *session, sp_track *track);
static sp_playlistcontainer *(*f_sp_session_playlistcontainer)(sp_session *session);
static sp_playlist *(*f_sp_session_inbox_create)(sp_session *session);
static sp_playlist *(*f_sp_session_starred_create)(sp_session *session);
static sp_playlist *(*f_sp_session_starred_for_user_create)(sp_session *session, const char *canonical_username);
static sp_playlistcontainer *(*f_sp_session_publishedcontainer_for_user_create)(sp_session *session, const char *canonical_username);
static sp_error(*f_sp_session_preferred_bitrate)(sp_session *session, sp_bitrate bitrate);
static sp_error(*f_sp_session_preferred_offline_bitrate)(sp_session *session, sp_bitrate bitrate, bool allow_resync);
static bool(*f_sp_session_get_volume_normalization)(sp_session *session);
static sp_error(*f_sp_session_set_volume_normalization)(sp_session *session, bool on);
static sp_error(*f_sp_session_set_private_session)(sp_session *session, bool enabled);
static bool(*f_sp_session_is_private_session)(sp_session *session);
static sp_error(*f_sp_session_set_scrobbling)(sp_session *session, sp_social_provider provider, sp_scrobbling_state state);
static sp_error(*f_sp_session_is_scrobbling)(sp_session *session, sp_social_provider provider, sp_scrobbling_state* state);
  SP_LIBEXPORT(sp_error) sp_session_is_scrobbling_possible(sp_session *session, sp_social_provider provider, bool* out);
static sp_error(*f_sp_session_set_social_credentials)(sp_session *session, sp_social_provider provider, const char* username, const char* password);
static sp_error(*f_sp_session_set_connection_type)(sp_session *session, sp_connection_type type);
static sp_error(*f_sp_session_set_connection_rules)(sp_session *session, sp_connection_rules rules);
static int(*f_sp_offline_tracks_to_sync)(sp_session *session);
static int(*f_sp_offline_num_playlists)(sp_session *session);
static bool(*f_sp_offline_sync_get_status)(sp_session *session, sp_offline_sync_status *status);
static int(*f_sp_offline_time_left)(sp_session *session);
static int(*f_sp_session_user_country)(sp_session *session);
static sp_link *(*f_sp_link_create_from_string)(const char *link);
static sp_link *(*f_sp_link_create_from_track)(sp_track *track, int offset);
static sp_link *(*f_sp_link_create_from_album)(sp_album *album);
static sp_link *(*f_sp_link_create_from_album_cover)(sp_album *album, sp_image_size size);
static sp_link *(*f_sp_link_create_from_artist)(sp_artist *artist);
static sp_link *(*f_sp_link_create_from_artist_portrait)(sp_artist *artist, sp_image_size size);
static sp_link *(*f_sp_link_create_from_artistbrowse_portrait)(sp_artistbrowse *arb, int index);
static sp_link *(*f_sp_link_create_from_search)(sp_search *search);
static sp_link *(*f_sp_link_create_from_playlist)(sp_playlist *playlist);
static sp_link *(*f_sp_link_create_from_user)(sp_user *user);
static sp_link *(*f_sp_link_create_from_image)(sp_image *image);
static int(*f_sp_link_as_string)(sp_link *link, char *buffer, int buffer_size);
static sp_linktype(*f_sp_link_type)(sp_link *link);
static sp_track *(*f_sp_link_as_track)(sp_link *link);
static sp_track *(*f_sp_link_as_track_and_offset)(sp_link *link, int *offset);
static sp_album *(*f_sp_link_as_album)(sp_link *link);
static sp_artist *(*f_sp_link_as_artist)(sp_link *link);
static sp_user *(*f_sp_link_as_user)(sp_link *link);
static sp_error(*f_sp_link_add_ref)(sp_link *link);
static sp_error(*f_sp_link_release)(sp_link *link);
static bool(*f_sp_track_is_loaded)(sp_track *track);
static sp_error(*f_sp_track_error)(sp_track *track);
static sp_track_offline_status(*f_sp_track_offline_get_status)(sp_track *track);
static sp_track_availability(*f_sp_track_get_availability)(sp_session *session, sp_track *track);
static bool(*f_sp_track_is_local)(sp_session *session, sp_track *track);
static bool(*f_sp_track_is_autolinked)(sp_session *session, sp_track *track);
static sp_track *(*f_sp_track_get_playable)(sp_session *session, sp_track *track);
static bool(*f_sp_track_is_placeholder)(sp_track *track);
static bool(*f_sp_track_is_starred)(sp_session *session, sp_track *track);
static sp_error(*f_sp_track_set_starred)(sp_session *session, sp_track *const*tracks, int num_tracks, bool star);
static int(*f_sp_track_num_artists)(sp_track *track);
static sp_artist *(*f_sp_track_artist)(sp_track *track, int index);
static sp_album *(*f_sp_track_album)(sp_track *track);
static const char *(*f_sp_track_name)(sp_track *track);
static int(*f_sp_track_duration)(sp_track *track);
static int(*f_sp_track_popularity)(sp_track *track);
static int(*f_sp_track_disc)(sp_track *track);
static int(*f_sp_track_index)(sp_track *track);
static sp_track *(*f_sp_localtrack_create)(const char *artist, const char *title, const char *album, int length);
static sp_error(*f_sp_track_add_ref)(sp_track *track);
static sp_error(*f_sp_track_release)(sp_track *track);
static bool(*f_sp_album_is_loaded)(sp_album *album);
static bool(*f_sp_album_is_available)(sp_album *album);
static sp_artist *(*f_sp_album_artist)(sp_album *album);
static const byte *(*f_sp_album_cover)(sp_album *album, sp_image_size size);
static const char *(*f_sp_album_name)(sp_album *album);
static int(*f_sp_album_year)(sp_album *album);
static sp_albumtype(*f_sp_album_type)(sp_album *album);
static sp_error(*f_sp_album_add_ref)(sp_album *album);
static sp_error(*f_sp_album_release)(sp_album *album);
static const char *(*f_sp_artist_name)(sp_artist *artist);
static bool(*f_sp_artist_is_loaded)(sp_artist *artist);
static const byte *(*f_sp_artist_portrait)(sp_artist *artist, sp_image_size size);
static sp_error(*f_sp_artist_add_ref)(sp_artist *artist);
static sp_error(*f_sp_artist_release)(sp_artist *artist);
static sp_albumbrowse *(*f_sp_albumbrowse_create)(sp_session *session, sp_album *album, albumbrowse_complete_cb *callback, void *userdata);
static bool(*f_sp_albumbrowse_is_loaded)(sp_albumbrowse *alb);
static sp_error(*f_sp_albumbrowse_error)(sp_albumbrowse *alb);
static sp_album *(*f_sp_albumbrowse_album)(sp_albumbrowse *alb);
static sp_artist *(*f_sp_albumbrowse_artist)(sp_albumbrowse *alb);
static int(*f_sp_albumbrowse_num_copyrights)(sp_albumbrowse *alb);
static const char *(*f_sp_albumbrowse_copyright)(sp_albumbrowse *alb, int index);
static int(*f_sp_albumbrowse_num_tracks)(sp_albumbrowse *alb);
static sp_track *(*f_sp_albumbrowse_track)(sp_albumbrowse *alb, int index);
static const char *(*f_sp_albumbrowse_review)(sp_albumbrowse *alb);
static int(*f_sp_albumbrowse_backend_request_duration)(sp_albumbrowse *alb);
static sp_error(*f_sp_albumbrowse_add_ref)(sp_albumbrowse *alb);
static sp_error(*f_sp_albumbrowse_release)(sp_albumbrowse *alb);
static sp_artistbrowse *(*f_sp_artistbrowse_create)(sp_session *session, sp_artist *artist, sp_artistbrowse_type type, artistbrowse_complete_cb *callback, void *userdata);
static bool(*f_sp_artistbrowse_is_loaded)(sp_artistbrowse *arb);
static sp_error(*f_sp_artistbrowse_error)(sp_artistbrowse *arb);
static sp_artist *(*f_sp_artistbrowse_artist)(sp_artistbrowse *arb);
static int(*f_sp_artistbrowse_num_portraits)(sp_artistbrowse *arb);
static const byte *(*f_sp_artistbrowse_portrait)(sp_artistbrowse *arb, int index);
static int(*f_sp_artistbrowse_num_tracks)(sp_artistbrowse *arb);
static sp_track *(*f_sp_artistbrowse_track)(sp_artistbrowse *arb, int index);
static int(*f_sp_artistbrowse_num_tophit_tracks)(sp_artistbrowse *arb);
static sp_track *(*f_sp_artistbrowse_tophit_track)(sp_artistbrowse *arb, int index);
static int(*f_sp_artistbrowse_num_albums)(sp_artistbrowse *arb);
static sp_album *(*f_sp_artistbrowse_album)(sp_artistbrowse *arb, int index);
static int(*f_sp_artistbrowse_num_similar_artists)(sp_artistbrowse *arb);
static sp_artist *(*f_sp_artistbrowse_similar_artist)(sp_artistbrowse *arb, int index);
static const char *(*f_sp_artistbrowse_biography)(sp_artistbrowse *arb);
static int(*f_sp_artistbrowse_backend_request_duration)(sp_artistbrowse *arb);
static sp_error(*f_sp_artistbrowse_add_ref)(sp_artistbrowse *arb);
static sp_error(*f_sp_artistbrowse_release)(sp_artistbrowse *arb);
static sp_image *(*f_sp_image_create)(sp_session *session, const byte image_id[20]);
static sp_image *(*f_sp_image_create_from_link)(sp_session *session, sp_link *l);
static sp_error(*f_sp_image_add_load_callback)(sp_image *image, image_loaded_cb *callback, void *userdata);
static sp_error(*f_sp_image_remove_load_callback)(sp_image *image, image_loaded_cb *callback, void *userdata);
static bool(*f_sp_image_is_loaded)(sp_image *image);
static sp_error(*f_sp_image_error)(sp_image *image);
static sp_imageformat(*f_sp_image_format)(sp_image *image);
static const void *(*f_sp_image_data)(sp_image *image, size_t *data_size);
static const byte *(*f_sp_image_image_id)(sp_image *image);
static sp_error(*f_sp_image_add_ref)(sp_image *image);
static sp_error(*f_sp_image_release)(sp_image *image);
static sp_search *(*f_sp_search_create)(sp_session *session, const char *query, int track_offset, int track_count, int album_offset, int album_count, int artist_offset, int artist_count, int playlist_offset, int playlist_count, sp_search_type search_type, search_complete_cb *callback, void *userdata);
static bool(*f_sp_search_is_loaded)(sp_search *search);
static sp_error(*f_sp_search_error)(sp_search *search);
static int(*f_sp_search_num_tracks)(sp_search *search);
static sp_track *(*f_sp_search_track)(sp_search *search, int index);
static int(*f_sp_search_num_albums)(sp_search *search);
static sp_album *(*f_sp_search_album)(sp_search *search, int index);
static int(*f_sp_search_num_playlists)(sp_search *search);
static const char *(*f_sp_search_playlist_name)(sp_search *search, int index);
static const char *(*f_sp_search_playlist_uri)(sp_search *search, int index);
static const char *(*f_sp_search_playlist_image_uri)(sp_search *search, int index);
static int(*f_sp_search_num_artists)(sp_search *search);
static sp_artist *(*f_sp_search_artist)(sp_search *search, int index);
static const char *(*f_sp_search_query)(sp_search *search);
static const char *(*f_sp_search_did_you_mean)(sp_search *search);
static int(*f_sp_search_total_tracks)(sp_search *search);
static int(*f_sp_search_total_albums)(sp_search *search);
static int(*f_sp_search_total_artists)(sp_search *search);
static int(*f_sp_search_total_playlists)(sp_search *search);
static sp_error(*f_sp_search_add_ref)(sp_search *search);
static sp_error(*f_sp_search_release)(sp_search *search);
static bool(*f_sp_playlist_is_loaded)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_add_callbacks)(sp_playlist *playlist, sp_playlist_callbacks *callbacks, void *userdata);
static sp_error(*f_sp_playlist_remove_callbacks)(sp_playlist *playlist, sp_playlist_callbacks *callbacks, void *userdata);
static int(*f_sp_playlist_num_tracks)(sp_playlist *playlist);
static sp_track *(*f_sp_playlist_track)(sp_playlist *playlist, int index);
static int(*f_sp_playlist_track_create_time)(sp_playlist *playlist, int index);
static sp_user *(*f_sp_playlist_track_creator)(sp_playlist *playlist, int index);
static bool(*f_sp_playlist_track_seen)(sp_playlist *playlist, int index);
static sp_error(*f_sp_playlist_track_set_seen)(sp_playlist *playlist, int index, bool seen);
static const char *(*f_sp_playlist_track_message)(sp_playlist *playlist, int index);
static const char *(*f_sp_playlist_name)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_rename)(sp_playlist *playlist, const char *new_name);
static sp_user *(*f_sp_playlist_owner)(sp_playlist *playlist);
static bool(*f_sp_playlist_is_collaborative)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_set_collaborative)(sp_playlist *playlist, bool collaborative);
static sp_error(*f_sp_playlist_set_autolink_tracks)(sp_playlist *playlist, bool link);
static const char *(*f_sp_playlist_get_description)(sp_playlist *playlist);
static bool(*f_sp_playlist_get_image)(sp_playlist *playlist, byte image[20]);
static bool(*f_sp_playlist_has_pending_changes)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_add_tracks)(sp_playlist *playlist, sp_track *const*tracks, int num_tracks, int position, sp_session *session);
static sp_error(*f_sp_playlist_remove_tracks)(sp_playlist *playlist, const int *tracks, int num_tracks);
static sp_error(*f_sp_playlist_reorder_tracks)(sp_playlist *playlist, const int *tracks, int num_tracks, int new_position);
static unsigned int(*f_sp_playlist_num_subscribers)(sp_playlist *playlist);
static sp_subscribers *(*f_sp_playlist_subscribers)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_subscribers_free)(sp_subscribers *subscribers);
static sp_error(*f_sp_playlist_update_subscribers)(sp_session *session, sp_playlist *playlist);
static bool(*f_sp_playlist_is_in_ram)(sp_session *session, sp_playlist *playlist);
static sp_error(*f_sp_playlist_set_in_ram)(sp_session *session, sp_playlist *playlist, bool in_ram);
static sp_playlist *(*f_sp_playlist_create)(sp_session *session, sp_link *link);
static sp_error(*f_sp_playlist_set_offline_mode)(sp_session *session, sp_playlist *playlist, bool offline);
static sp_playlist_offline_status(*f_sp_playlist_get_offline_status)(sp_session *session, sp_playlist *playlist);
static int(*f_sp_playlist_get_offline_download_completed)(sp_session *session, sp_playlist *playlist);
static sp_error(*f_sp_playlist_add_ref)(sp_playlist *playlist);
static sp_error(*f_sp_playlist_release)(sp_playlist *playlist);
static sp_error(*f_sp_playlistcontainer_add_callbacks)(sp_playlistcontainer *pc, sp_playlistcontainer_callbacks *callbacks, void *userdata);
static sp_error(*f_sp_playlistcontainer_remove_callbacks)(sp_playlistcontainer *pc, sp_playlistcontainer_callbacks *callbacks, void *userdata);
static int(*f_sp_playlistcontainer_num_playlists)(sp_playlistcontainer *pc);
static bool(*f_sp_playlistcontainer_is_loaded)(sp_playlistcontainer *pc);
static sp_playlist *(*f_sp_playlistcontainer_playlist)(sp_playlistcontainer *pc, int index);
static sp_playlist_type(*f_sp_playlistcontainer_playlist_type)(sp_playlistcontainer *pc, int index);
static sp_error(*f_sp_playlistcontainer_playlist_folder_name)(sp_playlistcontainer *pc, int index, char *buffer, int buffer_size);
static sp_uint64(*f_sp_playlistcontainer_playlist_folder_id)(sp_playlistcontainer *pc, int index);
static sp_playlist *(*f_sp_playlistcontainer_add_new_playlist)(sp_playlistcontainer *pc, const char *name);
static sp_playlist *(*f_sp_playlistcontainer_add_playlist)(sp_playlistcontainer *pc, sp_link *link);
static sp_error(*f_sp_playlistcontainer_remove_playlist)(sp_playlistcontainer *pc, int index);
static sp_error(*f_sp_playlistcontainer_move_playlist)(sp_playlistcontainer *pc, int index, int new_position, bool dry_run);
static sp_error(*f_sp_playlistcontainer_add_folder)(sp_playlistcontainer *pc, int index, const char *name);
static sp_user *(*f_sp_playlistcontainer_owner)(sp_playlistcontainer *pc);
static sp_error(*f_sp_playlistcontainer_add_ref)(sp_playlistcontainer *pc);
static sp_error(*f_sp_playlistcontainer_release)(sp_playlistcontainer *pc);
static int(*f_sp_playlistcontainer_get_unseen_tracks)(sp_playlistcontainer *pc, sp_playlist *playlist, sp_track **tracks, int num_tracks);
static int(*f_sp_playlistcontainer_clear_unseen_tracks)(sp_playlistcontainer *pc, sp_playlist *playlist);
static const char *(*f_sp_user_canonical_name)(sp_user *user);
static const char *(*f_sp_user_display_name)(sp_user *user);
static bool(*f_sp_user_is_loaded)(sp_user *user);
static sp_error(*f_sp_user_add_ref)(sp_user *user);
static sp_error(*f_sp_user_release)(sp_user *user);
static sp_toplistbrowse *(*f_sp_toplistbrowse_create)(sp_session *session, sp_toplisttype type, sp_toplistregion region, const char *username, toplistbrowse_complete_cb *callback, void *userdata);
static bool(*f_sp_toplistbrowse_is_loaded)(sp_toplistbrowse *tlb);
static sp_error(*f_sp_toplistbrowse_error)(sp_toplistbrowse *tlb);
static sp_error(*f_sp_toplistbrowse_add_ref)(sp_toplistbrowse *tlb);
static sp_error(*f_sp_toplistbrowse_release)(sp_toplistbrowse *tlb);
static int(*f_sp_toplistbrowse_num_artists)(sp_toplistbrowse *tlb);
static sp_artist *(*f_sp_toplistbrowse_artist)(sp_toplistbrowse *tlb, int index);
static int(*f_sp_toplistbrowse_num_albums)(sp_toplistbrowse *tlb);
static sp_album *(*f_sp_toplistbrowse_album)(sp_toplistbrowse *tlb, int index);
static int(*f_sp_toplistbrowse_num_tracks)(sp_toplistbrowse *tlb);
static sp_track *(*f_sp_toplistbrowse_track)(sp_toplistbrowse *tlb, int index);
static int(*f_sp_toplistbrowse_backend_request_duration)(sp_toplistbrowse *tlb);
static sp_inbox *(*f_sp_inbox_post_tracks)(sp_session *session, const char *user, sp_track * const *tracks, int num_tracks, const char *message, inboxpost_complete_cb *callback, void *userdata);
static sp_error(*f_sp_inbox_error)(sp_inbox *inbox);
static sp_error(*f_sp_inbox_add_ref)(sp_inbox *inbox);
static sp_error(*f_sp_inbox_release)(sp_inbox *inbox);
static const char *(*f_sp_build_id)(void);
static const char *resolvesym(void *handle) {
if((f_sp_error_message=dlsym(handle,"sp_error_message"))==NULL) return "sp_error_message";
if((f_sp_session_create=dlsym(handle,"sp_session_create"))==NULL) return "sp_session_create";
if((f_sp_session_release=dlsym(handle,"sp_session_release"))==NULL) return "sp_session_release";
if((f_sp_session_login=dlsym(handle,"sp_session_login"))==NULL) return "sp_session_login";
if((f_sp_session_relogin=dlsym(handle,"sp_session_relogin"))==NULL) return "sp_session_relogin";
if((f_sp_session_remembered_user=dlsym(handle,"sp_session_remembered_user"))==NULL) return "sp_session_remembered_user";
if((f_sp_session_user_name=dlsym(handle,"sp_session_user_name"))==NULL) return "sp_session_user_name";
if((f_sp_session_forget_me=dlsym(handle,"sp_session_forget_me"))==NULL) return "sp_session_forget_me";
if((f_sp_session_user=dlsym(handle,"sp_session_user"))==NULL) return "sp_session_user";
if((f_sp_session_logout=dlsym(handle,"sp_session_logout"))==NULL) return "sp_session_logout";
if((f_sp_session_flush_caches=dlsym(handle,"sp_session_flush_caches"))==NULL) return "sp_session_flush_caches";
if((f_sp_session_connectionstate=dlsym(handle,"sp_session_connectionstate"))==NULL) return "sp_session_connectionstate";
if((f_sp_session_userdata=dlsym(handle,"sp_session_userdata"))==NULL) return "sp_session_userdata";
if((f_sp_session_set_cache_size=dlsym(handle,"sp_session_set_cache_size"))==NULL) return "sp_session_set_cache_size";
if((f_sp_session_process_events=dlsym(handle,"sp_session_process_events"))==NULL) return "sp_session_process_events";
if((f_sp_session_player_load=dlsym(handle,"sp_session_player_load"))==NULL) return "sp_session_player_load";
if((f_sp_session_player_seek=dlsym(handle,"sp_session_player_seek"))==NULL) return "sp_session_player_seek";
if((f_sp_session_player_play=dlsym(handle,"sp_session_player_play"))==NULL) return "sp_session_player_play";
if((f_sp_session_player_unload=dlsym(handle,"sp_session_player_unload"))==NULL) return "sp_session_player_unload";
if((f_sp_session_player_prefetch=dlsym(handle,"sp_session_player_prefetch"))==NULL) return "sp_session_player_prefetch";
if((f_sp_session_playlistcontainer=dlsym(handle,"sp_session_playlistcontainer"))==NULL) return "sp_session_playlistcontainer";
if((f_sp_session_inbox_create=dlsym(handle,"sp_session_inbox_create"))==NULL) return "sp_session_inbox_create";
if((f_sp_session_starred_create=dlsym(handle,"sp_session_starred_create"))==NULL) return "sp_session_starred_create";
if((f_sp_session_starred_for_user_create=dlsym(handle,"sp_session_starred_for_user_create"))==NULL) return "sp_session_starred_for_user_create";
if((f_sp_session_publishedcontainer_for_user_create=dlsym(handle,"sp_session_publishedcontainer_for_user_create"))==NULL) return "sp_session_publishedcontainer_for_user_create";
if((f_sp_session_preferred_bitrate=dlsym(handle,"sp_session_preferred_bitrate"))==NULL) return "sp_session_preferred_bitrate";
if((f_sp_session_preferred_offline_bitrate=dlsym(handle,"sp_session_preferred_offline_bitrate"))==NULL) return "sp_session_preferred_offline_bitrate";
if((f_sp_session_get_volume_normalization=dlsym(handle,"sp_session_get_volume_normalization"))==NULL) return "sp_session_get_volume_normalization";
if((f_sp_session_set_volume_normalization=dlsym(handle,"sp_session_set_volume_normalization"))==NULL) return "sp_session_set_volume_normalization";
if((f_sp_session_set_private_session=dlsym(handle,"sp_session_set_private_session"))==NULL) return "sp_session_set_private_session";
if((f_sp_session_is_private_session=dlsym(handle,"sp_session_is_private_session"))==NULL) return "sp_session_is_private_session";
if((f_sp_session_set_scrobbling=dlsym(handle,"sp_session_set_scrobbling"))==NULL) return "sp_session_set_scrobbling";
if((f_sp_session_is_scrobbling=dlsym(handle,"sp_session_is_scrobbling"))==NULL) return "sp_session_is_scrobbling";
  SP_LIBEXPORT(sp_error) sp_session_is_scrobbling_possible(sp_session *session, sp_social_provider provider, bool* out);
if((f_sp_session_set_social_credentials=dlsym(handle,"sp_session_set_social_credentials"))==NULL) return "sp_session_set_social_credentials";
if((f_sp_session_set_connection_type=dlsym(handle,"sp_session_set_connection_type"))==NULL) return "sp_session_set_connection_type";
if((f_sp_session_set_connection_rules=dlsym(handle,"sp_session_set_connection_rules"))==NULL) return "sp_session_set_connection_rules";
if((f_sp_offline_tracks_to_sync=dlsym(handle,"sp_offline_tracks_to_sync"))==NULL) return "sp_offline_tracks_to_sync";
if((f_sp_offline_num_playlists=dlsym(handle,"sp_offline_num_playlists"))==NULL) return "sp_offline_num_playlists";
if((f_sp_offline_sync_get_status=dlsym(handle,"sp_offline_sync_get_status"))==NULL) return "sp_offline_sync_get_status";
if((f_sp_offline_time_left=dlsym(handle,"sp_offline_time_left"))==NULL) return "sp_offline_time_left";
if((f_sp_session_user_country=dlsym(handle,"sp_session_user_country"))==NULL) return "sp_session_user_country";
if((f_sp_link_create_from_string=dlsym(handle,"sp_link_create_from_string"))==NULL) return "sp_link_create_from_string";
if((f_sp_link_create_from_track=dlsym(handle,"sp_link_create_from_track"))==NULL) return "sp_link_create_from_track";
if((f_sp_link_create_from_album=dlsym(handle,"sp_link_create_from_album"))==NULL) return "sp_link_create_from_album";
if((f_sp_link_create_from_album_cover=dlsym(handle,"sp_link_create_from_album_cover"))==NULL) return "sp_link_create_from_album_cover";
if((f_sp_link_create_from_artist=dlsym(handle,"sp_link_create_from_artist"))==NULL) return "sp_link_create_from_artist";
if((f_sp_link_create_from_artist_portrait=dlsym(handle,"sp_link_create_from_artist_portrait"))==NULL) return "sp_link_create_from_artist_portrait";
if((f_sp_link_create_from_artistbrowse_portrait=dlsym(handle,"sp_link_create_from_artistbrowse_portrait"))==NULL) return "sp_link_create_from_artistbrowse_portrait";
if((f_sp_link_create_from_search=dlsym(handle,"sp_link_create_from_search"))==NULL) return "sp_link_create_from_search";
if((f_sp_link_create_from_playlist=dlsym(handle,"sp_link_create_from_playlist"))==NULL) return "sp_link_create_from_playlist";
if((f_sp_link_create_from_user=dlsym(handle,"sp_link_create_from_user"))==NULL) return "sp_link_create_from_user";
if((f_sp_link_create_from_image=dlsym(handle,"sp_link_create_from_image"))==NULL) return "sp_link_create_from_image";
if((f_sp_link_as_string=dlsym(handle,"sp_link_as_string"))==NULL) return "sp_link_as_string";
if((f_sp_link_type=dlsym(handle,"sp_link_type"))==NULL) return "sp_link_type";
if((f_sp_link_as_track=dlsym(handle,"sp_link_as_track"))==NULL) return "sp_link_as_track";
if((f_sp_link_as_track_and_offset=dlsym(handle,"sp_link_as_track_and_offset"))==NULL) return "sp_link_as_track_and_offset";
if((f_sp_link_as_album=dlsym(handle,"sp_link_as_album"))==NULL) return "sp_link_as_album";
if((f_sp_link_as_artist=dlsym(handle,"sp_link_as_artist"))==NULL) return "sp_link_as_artist";
if((f_sp_link_as_user=dlsym(handle,"sp_link_as_user"))==NULL) return "sp_link_as_user";
if((f_sp_link_add_ref=dlsym(handle,"sp_link_add_ref"))==NULL) return "sp_link_add_ref";
if((f_sp_link_release=dlsym(handle,"sp_link_release"))==NULL) return "sp_link_release";
if((f_sp_track_is_loaded=dlsym(handle,"sp_track_is_loaded"))==NULL) return "sp_track_is_loaded";
if((f_sp_track_error=dlsym(handle,"sp_track_error"))==NULL) return "sp_track_error";
if((f_sp_track_offline_get_status=dlsym(handle,"sp_track_offline_get_status"))==NULL) return "sp_track_offline_get_status";
if((f_sp_track_get_availability=dlsym(handle,"sp_track_get_availability"))==NULL) return "sp_track_get_availability";
if((f_sp_track_is_local=dlsym(handle,"sp_track_is_local"))==NULL) return "sp_track_is_local";
if((f_sp_track_is_autolinked=dlsym(handle,"sp_track_is_autolinked"))==NULL) return "sp_track_is_autolinked";
if((f_sp_track_get_playable=dlsym(handle,"sp_track_get_playable"))==NULL) return "sp_track_get_playable";
if((f_sp_track_is_placeholder=dlsym(handle,"sp_track_is_placeholder"))==NULL) return "sp_track_is_placeholder";
if((f_sp_track_is_starred=dlsym(handle,"sp_track_is_starred"))==NULL) return "sp_track_is_starred";
if((f_sp_track_set_starred=dlsym(handle,"sp_track_set_starred"))==NULL) return "sp_track_set_starred";
if((f_sp_track_num_artists=dlsym(handle,"sp_track_num_artists"))==NULL) return "sp_track_num_artists";
if((f_sp_track_artist=dlsym(handle,"sp_track_artist"))==NULL) return "sp_track_artist";
if((f_sp_track_album=dlsym(handle,"sp_track_album"))==NULL) return "sp_track_album";
if((f_sp_track_name=dlsym(handle,"sp_track_name"))==NULL) return "sp_track_name";
if((f_sp_track_duration=dlsym(handle,"sp_track_duration"))==NULL) return "sp_track_duration";
if((f_sp_track_popularity=dlsym(handle,"sp_track_popularity"))==NULL) return "sp_track_popularity";
if((f_sp_track_disc=dlsym(handle,"sp_track_disc"))==NULL) return "sp_track_disc";
if((f_sp_track_index=dlsym(handle,"sp_track_index"))==NULL) return "sp_track_index";
if((f_sp_localtrack_create=dlsym(handle,"sp_localtrack_create"))==NULL) return "sp_localtrack_create";
if((f_sp_track_add_ref=dlsym(handle,"sp_track_add_ref"))==NULL) return "sp_track_add_ref";
if((f_sp_track_release=dlsym(handle,"sp_track_release"))==NULL) return "sp_track_release";
if((f_sp_album_is_loaded=dlsym(handle,"sp_album_is_loaded"))==NULL) return "sp_album_is_loaded";
if((f_sp_album_is_available=dlsym(handle,"sp_album_is_available"))==NULL) return "sp_album_is_available";
if((f_sp_album_artist=dlsym(handle,"sp_album_artist"))==NULL) return "sp_album_artist";
if((f_sp_album_cover=dlsym(handle,"sp_album_cover"))==NULL) return "sp_album_cover";
if((f_sp_album_name=dlsym(handle,"sp_album_name"))==NULL) return "sp_album_name";
if((f_sp_album_year=dlsym(handle,"sp_album_year"))==NULL) return "sp_album_year";
if((f_sp_album_type=dlsym(handle,"sp_album_type"))==NULL) return "sp_album_type";
if((f_sp_album_add_ref=dlsym(handle,"sp_album_add_ref"))==NULL) return "sp_album_add_ref";
if((f_sp_album_release=dlsym(handle,"sp_album_release"))==NULL) return "sp_album_release";
if((f_sp_artist_name=dlsym(handle,"sp_artist_name"))==NULL) return "sp_artist_name";
if((f_sp_artist_is_loaded=dlsym(handle,"sp_artist_is_loaded"))==NULL) return "sp_artist_is_loaded";
if((f_sp_artist_portrait=dlsym(handle,"sp_artist_portrait"))==NULL) return "sp_artist_portrait";
if((f_sp_artist_add_ref=dlsym(handle,"sp_artist_add_ref"))==NULL) return "sp_artist_add_ref";
if((f_sp_artist_release=dlsym(handle,"sp_artist_release"))==NULL) return "sp_artist_release";
if((f_sp_albumbrowse_create=dlsym(handle,"sp_albumbrowse_create"))==NULL) return "sp_albumbrowse_create";
if((f_sp_albumbrowse_is_loaded=dlsym(handle,"sp_albumbrowse_is_loaded"))==NULL) return "sp_albumbrowse_is_loaded";
if((f_sp_albumbrowse_error=dlsym(handle,"sp_albumbrowse_error"))==NULL) return "sp_albumbrowse_error";
if((f_sp_albumbrowse_album=dlsym(handle,"sp_albumbrowse_album"))==NULL) return "sp_albumbrowse_album";
if((f_sp_albumbrowse_artist=dlsym(handle,"sp_albumbrowse_artist"))==NULL) return "sp_albumbrowse_artist";
if((f_sp_albumbrowse_num_copyrights=dlsym(handle,"sp_albumbrowse_num_copyrights"))==NULL) return "sp_albumbrowse_num_copyrights";
if((f_sp_albumbrowse_copyright=dlsym(handle,"sp_albumbrowse_copyright"))==NULL) return "sp_albumbrowse_copyright";
if((f_sp_albumbrowse_num_tracks=dlsym(handle,"sp_albumbrowse_num_tracks"))==NULL) return "sp_albumbrowse_num_tracks";
if((f_sp_albumbrowse_track=dlsym(handle,"sp_albumbrowse_track"))==NULL) return "sp_albumbrowse_track";
if((f_sp_albumbrowse_review=dlsym(handle,"sp_albumbrowse_review"))==NULL) return "sp_albumbrowse_review";
if((f_sp_albumbrowse_backend_request_duration=dlsym(handle,"sp_albumbrowse_backend_request_duration"))==NULL) return "sp_albumbrowse_backend_request_duration";
if((f_sp_albumbrowse_add_ref=dlsym(handle,"sp_albumbrowse_add_ref"))==NULL) return "sp_albumbrowse_add_ref";
if((f_sp_albumbrowse_release=dlsym(handle,"sp_albumbrowse_release"))==NULL) return "sp_albumbrowse_release";
if((f_sp_artistbrowse_create=dlsym(handle,"sp_artistbrowse_create"))==NULL) return "sp_artistbrowse_create";
if((f_sp_artistbrowse_is_loaded=dlsym(handle,"sp_artistbrowse_is_loaded"))==NULL) return "sp_artistbrowse_is_loaded";
if((f_sp_artistbrowse_error=dlsym(handle,"sp_artistbrowse_error"))==NULL) return "sp_artistbrowse_error";
if((f_sp_artistbrowse_artist=dlsym(handle,"sp_artistbrowse_artist"))==NULL) return "sp_artistbrowse_artist";
if((f_sp_artistbrowse_num_portraits=dlsym(handle,"sp_artistbrowse_num_portraits"))==NULL) return "sp_artistbrowse_num_portraits";
if((f_sp_artistbrowse_portrait=dlsym(handle,"sp_artistbrowse_portrait"))==NULL) return "sp_artistbrowse_portrait";
if((f_sp_artistbrowse_num_tracks=dlsym(handle,"sp_artistbrowse_num_tracks"))==NULL) return "sp_artistbrowse_num_tracks";
if((f_sp_artistbrowse_track=dlsym(handle,"sp_artistbrowse_track"))==NULL) return "sp_artistbrowse_track";
if((f_sp_artistbrowse_num_tophit_tracks=dlsym(handle,"sp_artistbrowse_num_tophit_tracks"))==NULL) return "sp_artistbrowse_num_tophit_tracks";
if((f_sp_artistbrowse_tophit_track=dlsym(handle,"sp_artistbrowse_tophit_track"))==NULL) return "sp_artistbrowse_tophit_track";
if((f_sp_artistbrowse_num_albums=dlsym(handle,"sp_artistbrowse_num_albums"))==NULL) return "sp_artistbrowse_num_albums";
if((f_sp_artistbrowse_album=dlsym(handle,"sp_artistbrowse_album"))==NULL) return "sp_artistbrowse_album";
if((f_sp_artistbrowse_num_similar_artists=dlsym(handle,"sp_artistbrowse_num_similar_artists"))==NULL) return "sp_artistbrowse_num_similar_artists";
if((f_sp_artistbrowse_similar_artist=dlsym(handle,"sp_artistbrowse_similar_artist"))==NULL) return "sp_artistbrowse_similar_artist";
if((f_sp_artistbrowse_biography=dlsym(handle,"sp_artistbrowse_biography"))==NULL) return "sp_artistbrowse_biography";
if((f_sp_artistbrowse_backend_request_duration=dlsym(handle,"sp_artistbrowse_backend_request_duration"))==NULL) return "sp_artistbrowse_backend_request_duration";
if((f_sp_artistbrowse_add_ref=dlsym(handle,"sp_artistbrowse_add_ref"))==NULL) return "sp_artistbrowse_add_ref";
if((f_sp_artistbrowse_release=dlsym(handle,"sp_artistbrowse_release"))==NULL) return "sp_artistbrowse_release";
if((f_sp_image_create=dlsym(handle,"sp_image_create"))==NULL) return "sp_image_create";
if((f_sp_image_create_from_link=dlsym(handle,"sp_image_create_from_link"))==NULL) return "sp_image_create_from_link";
if((f_sp_image_add_load_callback=dlsym(handle,"sp_image_add_load_callback"))==NULL) return "sp_image_add_load_callback";
if((f_sp_image_remove_load_callback=dlsym(handle,"sp_image_remove_load_callback"))==NULL) return "sp_image_remove_load_callback";
if((f_sp_image_is_loaded=dlsym(handle,"sp_image_is_loaded"))==NULL) return "sp_image_is_loaded";
if((f_sp_image_error=dlsym(handle,"sp_image_error"))==NULL) return "sp_image_error";
if((f_sp_image_format=dlsym(handle,"sp_image_format"))==NULL) return "sp_image_format";
if((f_sp_image_data=dlsym(handle,"sp_image_data"))==NULL) return "sp_image_data";
if((f_sp_image_image_id=dlsym(handle,"sp_image_image_id"))==NULL) return "sp_image_image_id";
if((f_sp_image_add_ref=dlsym(handle,"sp_image_add_ref"))==NULL) return "sp_image_add_ref";
if((f_sp_image_release=dlsym(handle,"sp_image_release"))==NULL) return "sp_image_release";
if((f_sp_search_create=dlsym(handle,"sp_search_create"))==NULL) return "sp_search_create";
if((f_sp_search_is_loaded=dlsym(handle,"sp_search_is_loaded"))==NULL) return "sp_search_is_loaded";
if((f_sp_search_error=dlsym(handle,"sp_search_error"))==NULL) return "sp_search_error";
if((f_sp_search_num_tracks=dlsym(handle,"sp_search_num_tracks"))==NULL) return "sp_search_num_tracks";
if((f_sp_search_track=dlsym(handle,"sp_search_track"))==NULL) return "sp_search_track";
if((f_sp_search_num_albums=dlsym(handle,"sp_search_num_albums"))==NULL) return "sp_search_num_albums";
if((f_sp_search_album=dlsym(handle,"sp_search_album"))==NULL) return "sp_search_album";
if((f_sp_search_num_playlists=dlsym(handle,"sp_search_num_playlists"))==NULL) return "sp_search_num_playlists";
if((f_sp_search_playlist_name=dlsym(handle,"sp_search_playlist_name"))==NULL) return "sp_search_playlist_name";
if((f_sp_search_playlist_uri=dlsym(handle,"sp_search_playlist_uri"))==NULL) return "sp_search_playlist_uri";
if((f_sp_search_playlist_image_uri=dlsym(handle,"sp_search_playlist_image_uri"))==NULL) return "sp_search_playlist_image_uri";
if((f_sp_search_num_artists=dlsym(handle,"sp_search_num_artists"))==NULL) return "sp_search_num_artists";
if((f_sp_search_artist=dlsym(handle,"sp_search_artist"))==NULL) return "sp_search_artist";
if((f_sp_search_query=dlsym(handle,"sp_search_query"))==NULL) return "sp_search_query";
if((f_sp_search_did_you_mean=dlsym(handle,"sp_search_did_you_mean"))==NULL) return "sp_search_did_you_mean";
if((f_sp_search_total_tracks=dlsym(handle,"sp_search_total_tracks"))==NULL) return "sp_search_total_tracks";
if((f_sp_search_total_albums=dlsym(handle,"sp_search_total_albums"))==NULL) return "sp_search_total_albums";
if((f_sp_search_total_artists=dlsym(handle,"sp_search_total_artists"))==NULL) return "sp_search_total_artists";
if((f_sp_search_total_playlists=dlsym(handle,"sp_search_total_playlists"))==NULL) return "sp_search_total_playlists";
if((f_sp_search_add_ref=dlsym(handle,"sp_search_add_ref"))==NULL) return "sp_search_add_ref";
if((f_sp_search_release=dlsym(handle,"sp_search_release"))==NULL) return "sp_search_release";
if((f_sp_playlist_is_loaded=dlsym(handle,"sp_playlist_is_loaded"))==NULL) return "sp_playlist_is_loaded";
if((f_sp_playlist_add_callbacks=dlsym(handle,"sp_playlist_add_callbacks"))==NULL) return "sp_playlist_add_callbacks";
if((f_sp_playlist_remove_callbacks=dlsym(handle,"sp_playlist_remove_callbacks"))==NULL) return "sp_playlist_remove_callbacks";
if((f_sp_playlist_num_tracks=dlsym(handle,"sp_playlist_num_tracks"))==NULL) return "sp_playlist_num_tracks";
if((f_sp_playlist_track=dlsym(handle,"sp_playlist_track"))==NULL) return "sp_playlist_track";
if((f_sp_playlist_track_create_time=dlsym(handle,"sp_playlist_track_create_time"))==NULL) return "sp_playlist_track_create_time";
if((f_sp_playlist_track_creator=dlsym(handle,"sp_playlist_track_creator"))==NULL) return "sp_playlist_track_creator";
if((f_sp_playlist_track_seen=dlsym(handle,"sp_playlist_track_seen"))==NULL) return "sp_playlist_track_seen";
if((f_sp_playlist_track_set_seen=dlsym(handle,"sp_playlist_track_set_seen"))==NULL) return "sp_playlist_track_set_seen";
if((f_sp_playlist_track_message=dlsym(handle,"sp_playlist_track_message"))==NULL) return "sp_playlist_track_message";
if((f_sp_playlist_name=dlsym(handle,"sp_playlist_name"))==NULL) return "sp_playlist_name";
if((f_sp_playlist_rename=dlsym(handle,"sp_playlist_rename"))==NULL) return "sp_playlist_rename";
if((f_sp_playlist_owner=dlsym(handle,"sp_playlist_owner"))==NULL) return "sp_playlist_owner";
if((f_sp_playlist_is_collaborative=dlsym(handle,"sp_playlist_is_collaborative"))==NULL) return "sp_playlist_is_collaborative";
if((f_sp_playlist_set_collaborative=dlsym(handle,"sp_playlist_set_collaborative"))==NULL) return "sp_playlist_set_collaborative";
if((f_sp_playlist_set_autolink_tracks=dlsym(handle,"sp_playlist_set_autolink_tracks"))==NULL) return "sp_playlist_set_autolink_tracks";
if((f_sp_playlist_get_description=dlsym(handle,"sp_playlist_get_description"))==NULL) return "sp_playlist_get_description";
if((f_sp_playlist_get_image=dlsym(handle,"sp_playlist_get_image"))==NULL) return "sp_playlist_get_image";
if((f_sp_playlist_has_pending_changes=dlsym(handle,"sp_playlist_has_pending_changes"))==NULL) return "sp_playlist_has_pending_changes";
if((f_sp_playlist_add_tracks=dlsym(handle,"sp_playlist_add_tracks"))==NULL) return "sp_playlist_add_tracks";
if((f_sp_playlist_remove_tracks=dlsym(handle,"sp_playlist_remove_tracks"))==NULL) return "sp_playlist_remove_tracks";
if((f_sp_playlist_reorder_tracks=dlsym(handle,"sp_playlist_reorder_tracks"))==NULL) return "sp_playlist_reorder_tracks";
if((f_sp_playlist_num_subscribers=dlsym(handle,"sp_playlist_num_subscribers"))==NULL) return "sp_playlist_num_subscribers";
if((f_sp_playlist_subscribers=dlsym(handle,"sp_playlist_subscribers"))==NULL) return "sp_playlist_subscribers";
if((f_sp_playlist_subscribers_free=dlsym(handle,"sp_playlist_subscribers_free"))==NULL) return "sp_playlist_subscribers_free";
if((f_sp_playlist_update_subscribers=dlsym(handle,"sp_playlist_update_subscribers"))==NULL) return "sp_playlist_update_subscribers";
if((f_sp_playlist_is_in_ram=dlsym(handle,"sp_playlist_is_in_ram"))==NULL) return "sp_playlist_is_in_ram";
if((f_sp_playlist_set_in_ram=dlsym(handle,"sp_playlist_set_in_ram"))==NULL) return "sp_playlist_set_in_ram";
if((f_sp_playlist_create=dlsym(handle,"sp_playlist_create"))==NULL) return "sp_playlist_create";
if((f_sp_playlist_set_offline_mode=dlsym(handle,"sp_playlist_set_offline_mode"))==NULL) return "sp_playlist_set_offline_mode";
if((f_sp_playlist_get_offline_status=dlsym(handle,"sp_playlist_get_offline_status"))==NULL) return "sp_playlist_get_offline_status";
if((f_sp_playlist_get_offline_download_completed=dlsym(handle,"sp_playlist_get_offline_download_completed"))==NULL) return "sp_playlist_get_offline_download_completed";
if((f_sp_playlist_add_ref=dlsym(handle,"sp_playlist_add_ref"))==NULL) return "sp_playlist_add_ref";
if((f_sp_playlist_release=dlsym(handle,"sp_playlist_release"))==NULL) return "sp_playlist_release";
if((f_sp_playlistcontainer_add_callbacks=dlsym(handle,"sp_playlistcontainer_add_callbacks"))==NULL) return "sp_playlistcontainer_add_callbacks";
if((f_sp_playlistcontainer_remove_callbacks=dlsym(handle,"sp_playlistcontainer_remove_callbacks"))==NULL) return "sp_playlistcontainer_remove_callbacks";
if((f_sp_playlistcontainer_num_playlists=dlsym(handle,"sp_playlistcontainer_num_playlists"))==NULL) return "sp_playlistcontainer_num_playlists";
if((f_sp_playlistcontainer_is_loaded=dlsym(handle,"sp_playlistcontainer_is_loaded"))==NULL) return "sp_playlistcontainer_is_loaded";
if((f_sp_playlistcontainer_playlist=dlsym(handle,"sp_playlistcontainer_playlist"))==NULL) return "sp_playlistcontainer_playlist";
if((f_sp_playlistcontainer_playlist_type=dlsym(handle,"sp_playlistcontainer_playlist_type"))==NULL) return "sp_playlistcontainer_playlist_type";
if((f_sp_playlistcontainer_playlist_folder_name=dlsym(handle,"sp_playlistcontainer_playlist_folder_name"))==NULL) return "sp_playlistcontainer_playlist_folder_name";
if((f_sp_playlistcontainer_playlist_folder_id=dlsym(handle,"sp_playlistcontainer_playlist_folder_id"))==NULL) return "sp_playlistcontainer_playlist_folder_id";
if((f_sp_playlistcontainer_add_new_playlist=dlsym(handle,"sp_playlistcontainer_add_new_playlist"))==NULL) return "sp_playlistcontainer_add_new_playlist";
if((f_sp_playlistcontainer_add_playlist=dlsym(handle,"sp_playlistcontainer_add_playlist"))==NULL) return "sp_playlistcontainer_add_playlist";
if((f_sp_playlistcontainer_remove_playlist=dlsym(handle,"sp_playlistcontainer_remove_playlist"))==NULL) return "sp_playlistcontainer_remove_playlist";
if((f_sp_playlistcontainer_move_playlist=dlsym(handle,"sp_playlistcontainer_move_playlist"))==NULL) return "sp_playlistcontainer_move_playlist";
if((f_sp_playlistcontainer_add_folder=dlsym(handle,"sp_playlistcontainer_add_folder"))==NULL) return "sp_playlistcontainer_add_folder";
if((f_sp_playlistcontainer_owner=dlsym(handle,"sp_playlistcontainer_owner"))==NULL) return "sp_playlistcontainer_owner";
if((f_sp_playlistcontainer_add_ref=dlsym(handle,"sp_playlistcontainer_add_ref"))==NULL) return "sp_playlistcontainer_add_ref";
if((f_sp_playlistcontainer_release=dlsym(handle,"sp_playlistcontainer_release"))==NULL) return "sp_playlistcontainer_release";
if((f_sp_playlistcontainer_get_unseen_tracks=dlsym(handle,"sp_playlistcontainer_get_unseen_tracks"))==NULL) return "sp_playlistcontainer_get_unseen_tracks";
if((f_sp_playlistcontainer_clear_unseen_tracks=dlsym(handle,"sp_playlistcontainer_clear_unseen_tracks"))==NULL) return "sp_playlistcontainer_clear_unseen_tracks";
if((f_sp_user_canonical_name=dlsym(handle,"sp_user_canonical_name"))==NULL) return "sp_user_canonical_name";
if((f_sp_user_display_name=dlsym(handle,"sp_user_display_name"))==NULL) return "sp_user_display_name";
if((f_sp_user_is_loaded=dlsym(handle,"sp_user_is_loaded"))==NULL) return "sp_user_is_loaded";
if((f_sp_user_add_ref=dlsym(handle,"sp_user_add_ref"))==NULL) return "sp_user_add_ref";
if((f_sp_user_release=dlsym(handle,"sp_user_release"))==NULL) return "sp_user_release";
if((f_sp_toplistbrowse_create=dlsym(handle,"sp_toplistbrowse_create"))==NULL) return "sp_toplistbrowse_create";
if((f_sp_toplistbrowse_is_loaded=dlsym(handle,"sp_toplistbrowse_is_loaded"))==NULL) return "sp_toplistbrowse_is_loaded";
if((f_sp_toplistbrowse_error=dlsym(handle,"sp_toplistbrowse_error"))==NULL) return "sp_toplistbrowse_error";
if((f_sp_toplistbrowse_add_ref=dlsym(handle,"sp_toplistbrowse_add_ref"))==NULL) return "sp_toplistbrowse_add_ref";
if((f_sp_toplistbrowse_release=dlsym(handle,"sp_toplistbrowse_release"))==NULL) return "sp_toplistbrowse_release";
if((f_sp_toplistbrowse_num_artists=dlsym(handle,"sp_toplistbrowse_num_artists"))==NULL) return "sp_toplistbrowse_num_artists";
if((f_sp_toplistbrowse_artist=dlsym(handle,"sp_toplistbrowse_artist"))==NULL) return "sp_toplistbrowse_artist";
if((f_sp_toplistbrowse_num_albums=dlsym(handle,"sp_toplistbrowse_num_albums"))==NULL) return "sp_toplistbrowse_num_albums";
if((f_sp_toplistbrowse_album=dlsym(handle,"sp_toplistbrowse_album"))==NULL) return "sp_toplistbrowse_album";
if((f_sp_toplistbrowse_num_tracks=dlsym(handle,"sp_toplistbrowse_num_tracks"))==NULL) return "sp_toplistbrowse_num_tracks";
if((f_sp_toplistbrowse_track=dlsym(handle,"sp_toplistbrowse_track"))==NULL) return "sp_toplistbrowse_track";
if((f_sp_toplistbrowse_backend_request_duration=dlsym(handle,"sp_toplistbrowse_backend_request_duration"))==NULL) return "sp_toplistbrowse_backend_request_duration";
if((f_sp_inbox_post_tracks=dlsym(handle,"sp_inbox_post_tracks"))==NULL) return "sp_inbox_post_tracks";
if((f_sp_inbox_error=dlsym(handle,"sp_inbox_error"))==NULL) return "sp_inbox_error";
if((f_sp_inbox_add_ref=dlsym(handle,"sp_inbox_add_ref"))==NULL) return "sp_inbox_add_ref";
if((f_sp_inbox_release=dlsym(handle,"sp_inbox_release"))==NULL) return "sp_inbox_release";
if((f_sp_build_id=dlsym(handle,"sp_build_id"))==NULL) return "sp_build_id";
return NULL;}
#else
#define f_sp_error_message sp_error_message
#define f_sp_session_create sp_session_create
#define f_sp_session_release sp_session_release
#define f_sp_session_login sp_session_login
#define f_sp_session_relogin sp_session_relogin
#define f_sp_session_remembered_user sp_session_remembered_user
#define f_sp_session_user_name sp_session_user_name
#define f_sp_session_forget_me sp_session_forget_me
#define f_sp_session_user sp_session_user
#define f_sp_session_logout sp_session_logout
#define f_sp_session_flush_caches sp_session_flush_caches
#define f_sp_session_connectionstate sp_session_connectionstate
#define f_sp_session_userdata sp_session_userdata
#define f_sp_session_set_cache_size sp_session_set_cache_size
#define f_sp_session_process_events sp_session_process_events
#define f_sp_session_player_load sp_session_player_load
#define f_sp_session_player_seek sp_session_player_seek
#define f_sp_session_player_play sp_session_player_play
#define f_sp_session_player_unload sp_session_player_unload
#define f_sp_session_player_prefetch sp_session_player_prefetch
#define f_sp_session_playlistcontainer sp_session_playlistcontainer
#define f_sp_session_inbox_create sp_session_inbox_create
#define f_sp_session_starred_create sp_session_starred_create
#define f_sp_session_starred_for_user_create sp_session_starred_for_user_create
#define f_sp_session_publishedcontainer_for_user_create sp_session_publishedcontainer_for_user_create
#define f_sp_session_preferred_bitrate sp_session_preferred_bitrate
#define f_sp_session_preferred_offline_bitrate sp_session_preferred_offline_bitrate
#define f_sp_session_get_volume_normalization sp_session_get_volume_normalization
#define f_sp_session_set_volume_normalization sp_session_set_volume_normalization
#define f_sp_session_set_private_session sp_session_set_private_session
#define f_sp_session_is_private_session sp_session_is_private_session
#define f_sp_session_set_scrobbling sp_session_set_scrobbling
#define f_sp_session_is_scrobbling sp_session_is_scrobbling
  SP_LIBEXPORT(sp_error) sp_session_is_scrobbling_possible(sp_session *session, sp_social_provider provider, bool* out);
#define f_sp_session_set_social_credentials sp_session_set_social_credentials
#define f_sp_session_set_connection_type sp_session_set_connection_type
#define f_sp_session_set_connection_rules sp_session_set_connection_rules
#define f_sp_offline_tracks_to_sync sp_offline_tracks_to_sync
#define f_sp_offline_num_playlists sp_offline_num_playlists
#define f_sp_offline_sync_get_status sp_offline_sync_get_status
#define f_sp_offline_time_left sp_offline_time_left
#define f_sp_session_user_country sp_session_user_country
#define f_sp_link_create_from_string sp_link_create_from_string
#define f_sp_link_create_from_track sp_link_create_from_track
#define f_sp_link_create_from_album sp_link_create_from_album
#define f_sp_link_create_from_album_cover sp_link_create_from_album_cover
#define f_sp_link_create_from_artist sp_link_create_from_artist
#define f_sp_link_create_from_artist_portrait sp_link_create_from_artist_portrait
#define f_sp_link_create_from_artistbrowse_portrait sp_link_create_from_artistbrowse_portrait
#define f_sp_link_create_from_search sp_link_create_from_search
#define f_sp_link_create_from_playlist sp_link_create_from_playlist
#define f_sp_link_create_from_user sp_link_create_from_user
#define f_sp_link_create_from_image sp_link_create_from_image
#define f_sp_link_as_string sp_link_as_string
#define f_sp_link_type sp_link_type
#define f_sp_link_as_track sp_link_as_track
#define f_sp_link_as_track_and_offset sp_link_as_track_and_offset
#define f_sp_link_as_album sp_link_as_album
#define f_sp_link_as_artist sp_link_as_artist
#define f_sp_link_as_user sp_link_as_user
#define f_sp_link_add_ref sp_link_add_ref
#define f_sp_link_release sp_link_release
#define f_sp_track_is_loaded sp_track_is_loaded
#define f_sp_track_error sp_track_error
#define f_sp_track_offline_get_status sp_track_offline_get_status
#define f_sp_track_get_availability sp_track_get_availability
#define f_sp_track_is_local sp_track_is_local
#define f_sp_track_is_autolinked sp_track_is_autolinked
#define f_sp_track_get_playable sp_track_get_playable
#define f_sp_track_is_placeholder sp_track_is_placeholder
#define f_sp_track_is_starred sp_track_is_starred
#define f_sp_track_set_starred sp_track_set_starred
#define f_sp_track_num_artists sp_track_num_artists
#define f_sp_track_artist sp_track_artist
#define f_sp_track_album sp_track_album
#define f_sp_track_name sp_track_name
#define f_sp_track_duration sp_track_duration
#define f_sp_track_popularity sp_track_popularity
#define f_sp_track_disc sp_track_disc
#define f_sp_track_index sp_track_index
#define f_sp_localtrack_create sp_localtrack_create
#define f_sp_track_add_ref sp_track_add_ref
#define f_sp_track_release sp_track_release
#define f_sp_album_is_loaded sp_album_is_loaded
#define f_sp_album_is_available sp_album_is_available
#define f_sp_album_artist sp_album_artist
#define f_sp_album_cover sp_album_cover
#define f_sp_album_name sp_album_name
#define f_sp_album_year sp_album_year
#define f_sp_album_type sp_album_type
#define f_sp_album_add_ref sp_album_add_ref
#define f_sp_album_release sp_album_release
#define f_sp_artist_name sp_artist_name
#define f_sp_artist_is_loaded sp_artist_is_loaded
#define f_sp_artist_portrait sp_artist_portrait
#define f_sp_artist_add_ref sp_artist_add_ref
#define f_sp_artist_release sp_artist_release
#define f_sp_albumbrowse_create sp_albumbrowse_create
#define f_sp_albumbrowse_is_loaded sp_albumbrowse_is_loaded
#define f_sp_albumbrowse_error sp_albumbrowse_error
#define f_sp_albumbrowse_album sp_albumbrowse_album
#define f_sp_albumbrowse_artist sp_albumbrowse_artist
#define f_sp_albumbrowse_num_copyrights sp_albumbrowse_num_copyrights
#define f_sp_albumbrowse_copyright sp_albumbrowse_copyright
#define f_sp_albumbrowse_num_tracks sp_albumbrowse_num_tracks
#define f_sp_albumbrowse_track sp_albumbrowse_track
#define f_sp_albumbrowse_review sp_albumbrowse_review
#define f_sp_albumbrowse_backend_request_duration sp_albumbrowse_backend_request_duration
#define f_sp_albumbrowse_add_ref sp_albumbrowse_add_ref
#define f_sp_albumbrowse_release sp_albumbrowse_release
#define f_sp_artistbrowse_create sp_artistbrowse_create
#define f_sp_artistbrowse_is_loaded sp_artistbrowse_is_loaded
#define f_sp_artistbrowse_error sp_artistbrowse_error
#define f_sp_artistbrowse_artist sp_artistbrowse_artist
#define f_sp_artistbrowse_num_portraits sp_artistbrowse_num_portraits
#define f_sp_artistbrowse_portrait sp_artistbrowse_portrait
#define f_sp_artistbrowse_num_tracks sp_artistbrowse_num_tracks
#define f_sp_artistbrowse_track sp_artistbrowse_track
#define f_sp_artistbrowse_num_tophit_tracks sp_artistbrowse_num_tophit_tracks
#define f_sp_artistbrowse_tophit_track sp_artistbrowse_tophit_track
#define f_sp_artistbrowse_num_albums sp_artistbrowse_num_albums
#define f_sp_artistbrowse_album sp_artistbrowse_album
#define f_sp_artistbrowse_num_similar_artists sp_artistbrowse_num_similar_artists
#define f_sp_artistbrowse_similar_artist sp_artistbrowse_similar_artist
#define f_sp_artistbrowse_biography sp_artistbrowse_biography
#define f_sp_artistbrowse_backend_request_duration sp_artistbrowse_backend_request_duration
#define f_sp_artistbrowse_add_ref sp_artistbrowse_add_ref
#define f_sp_artistbrowse_release sp_artistbrowse_release
#define f_sp_image_create sp_image_create
#define f_sp_image_create_from_link sp_image_create_from_link
#define f_sp_image_add_load_callback sp_image_add_load_callback
#define f_sp_image_remove_load_callback sp_image_remove_load_callback
#define f_sp_image_is_loaded sp_image_is_loaded
#define f_sp_image_error sp_image_error
#define f_sp_image_format sp_image_format
#define f_sp_image_data sp_image_data
#define f_sp_image_image_id sp_image_image_id
#define f_sp_image_add_ref sp_image_add_ref
#define f_sp_image_release sp_image_release
#define f_sp_search_create sp_search_create
#define f_sp_search_is_loaded sp_search_is_loaded
#define f_sp_search_error sp_search_error
#define f_sp_search_num_tracks sp_search_num_tracks
#define f_sp_search_track sp_search_track
#define f_sp_search_num_albums sp_search_num_albums
#define f_sp_search_album sp_search_album
#define f_sp_search_num_playlists sp_search_num_playlists
#define f_sp_search_playlist_name sp_search_playlist_name
#define f_sp_search_playlist_uri sp_search_playlist_uri
#define f_sp_search_playlist_image_uri sp_search_playlist_image_uri
#define f_sp_search_num_artists sp_search_num_artists
#define f_sp_search_artist sp_search_artist
#define f_sp_search_query sp_search_query
#define f_sp_search_did_you_mean sp_search_did_you_mean
#define f_sp_search_total_tracks sp_search_total_tracks
#define f_sp_search_total_albums sp_search_total_albums
#define f_sp_search_total_artists sp_search_total_artists
#define f_sp_search_total_playlists sp_search_total_playlists
#define f_sp_search_add_ref sp_search_add_ref
#define f_sp_search_release sp_search_release
#define f_sp_playlist_is_loaded sp_playlist_is_loaded
#define f_sp_playlist_add_callbacks sp_playlist_add_callbacks
#define f_sp_playlist_remove_callbacks sp_playlist_remove_callbacks
#define f_sp_playlist_num_tracks sp_playlist_num_tracks
#define f_sp_playlist_track sp_playlist_track
#define f_sp_playlist_track_create_time sp_playlist_track_create_time
#define f_sp_playlist_track_creator sp_playlist_track_creator
#define f_sp_playlist_track_seen sp_playlist_track_seen
#define f_sp_playlist_track_set_seen sp_playlist_track_set_seen
#define f_sp_playlist_track_message sp_playlist_track_message
#define f_sp_playlist_name sp_playlist_name
#define f_sp_playlist_rename sp_playlist_rename
#define f_sp_playlist_owner sp_playlist_owner
#define f_sp_playlist_is_collaborative sp_playlist_is_collaborative
#define f_sp_playlist_set_collaborative sp_playlist_set_collaborative
#define f_sp_playlist_set_autolink_tracks sp_playlist_set_autolink_tracks
#define f_sp_playlist_get_description sp_playlist_get_description
#define f_sp_playlist_get_image sp_playlist_get_image
#define f_sp_playlist_has_pending_changes sp_playlist_has_pending_changes
#define f_sp_playlist_add_tracks sp_playlist_add_tracks
#define f_sp_playlist_remove_tracks sp_playlist_remove_tracks
#define f_sp_playlist_reorder_tracks sp_playlist_reorder_tracks
#define f_sp_playlist_num_subscribers sp_playlist_num_subscribers
#define f_sp_playlist_subscribers sp_playlist_subscribers
#define f_sp_playlist_subscribers_free sp_playlist_subscribers_free
#define f_sp_playlist_update_subscribers sp_playlist_update_subscribers
#define f_sp_playlist_is_in_ram sp_playlist_is_in_ram
#define f_sp_playlist_set_in_ram sp_playlist_set_in_ram
#define f_sp_playlist_create sp_playlist_create
#define f_sp_playlist_set_offline_mode sp_playlist_set_offline_mode
#define f_sp_playlist_get_offline_status sp_playlist_get_offline_status
#define f_sp_playlist_get_offline_download_completed sp_playlist_get_offline_download_completed
#define f_sp_playlist_add_ref sp_playlist_add_ref
#define f_sp_playlist_release sp_playlist_release
#define f_sp_playlistcontainer_add_callbacks sp_playlistcontainer_add_callbacks
#define f_sp_playlistcontainer_remove_callbacks sp_playlistcontainer_remove_callbacks
#define f_sp_playlistcontainer_num_playlists sp_playlistcontainer_num_playlists
#define f_sp_playlistcontainer_is_loaded sp_playlistcontainer_is_loaded
#define f_sp_playlistcontainer_playlist sp_playlistcontainer_playlist
#define f_sp_playlistcontainer_playlist_type sp_playlistcontainer_playlist_type
#define f_sp_playlistcontainer_playlist_folder_name sp_playlistcontainer_playlist_folder_name
#define f_sp_playlistcontainer_playlist_folder_id sp_playlistcontainer_playlist_folder_id
#define f_sp_playlistcontainer_add_new_playlist sp_playlistcontainer_add_new_playlist
#define f_sp_playlistcontainer_add_playlist sp_playlistcontainer_add_playlist
#define f_sp_playlistcontainer_remove_playlist sp_playlistcontainer_remove_playlist
#define f_sp_playlistcontainer_move_playlist sp_playlistcontainer_move_playlist
#define f_sp_playlistcontainer_add_folder sp_playlistcontainer_add_folder
#define f_sp_playlistcontainer_owner sp_playlistcontainer_owner
#define f_sp_playlistcontainer_add_ref sp_playlistcontainer_add_ref
#define f_sp_playlistcontainer_release sp_playlistcontainer_release
#define f_sp_playlistcontainer_get_unseen_tracks sp_playlistcontainer_get_unseen_tracks
#define f_sp_playlistcontainer_clear_unseen_tracks sp_playlistcontainer_clear_unseen_tracks
#define f_sp_user_canonical_name sp_user_canonical_name
#define f_sp_user_display_name sp_user_display_name
#define f_sp_user_is_loaded sp_user_is_loaded
#define f_sp_user_add_ref sp_user_add_ref
#define f_sp_user_release sp_user_release
#define f_sp_toplistbrowse_create sp_toplistbrowse_create
#define f_sp_toplistbrowse_is_loaded sp_toplistbrowse_is_loaded
#define f_sp_toplistbrowse_error sp_toplistbrowse_error
#define f_sp_toplistbrowse_add_ref sp_toplistbrowse_add_ref
#define f_sp_toplistbrowse_release sp_toplistbrowse_release
#define f_sp_toplistbrowse_num_artists sp_toplistbrowse_num_artists
#define f_sp_toplistbrowse_artist sp_toplistbrowse_artist
#define f_sp_toplistbrowse_num_albums sp_toplistbrowse_num_albums
#define f_sp_toplistbrowse_album sp_toplistbrowse_album
#define f_sp_toplistbrowse_num_tracks sp_toplistbrowse_num_tracks
#define f_sp_toplistbrowse_track sp_toplistbrowse_track
#define f_sp_toplistbrowse_backend_request_duration sp_toplistbrowse_backend_request_duration
#define f_sp_inbox_post_tracks sp_inbox_post_tracks
#define f_sp_inbox_error sp_inbox_error
#define f_sp_inbox_add_ref sp_inbox_add_ref
#define f_sp_inbox_release sp_inbox_release
#define f_sp_build_id sp_build_id
#endif
