MIR_SERVER_0.20 {
 global:
  extern "C++" {
# Symbols not yet picked up by script
    vtable?for?mir::input::NullInputDispatcher;
    VTT?for?mir::DefaultServerConfiguration;
    VTT?for?mir::shell::ShellWrapper;
    VTT?for?mir::shell::SystemCompositorWindowManager;

# The following symbols come from running a script over the generated docs. Vis:
# ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mirserver public" | sed "s/mirserver public: /    /" | sort  
    mir::check_for_termination_exception*;
    mir::clear_termination_exception*;
    mir::compositor::Compositor::Compositor*;
    mir::compositor::Compositor::operator*;
    mir::compositor::DisplayBufferCompositor::?DisplayBufferCompositor*;
    mir::compositor::DisplayBufferCompositor::DisplayBufferCompositor*;
    mir::compositor::DisplayBufferCompositorFactory::?DisplayBufferCompositorFactory*;
    mir::compositor::DisplayBufferCompositorFactory::DisplayBufferCompositorFactory*;
    mir::compositor::DisplayBufferCompositorFactory::operator*;
    mir::compositor::DisplayBufferCompositor::operator*;
    mir::compositor::DisplayListener::?DisplayListener*;
    mir::compositor::DisplayListener::DisplayListener*;
    mir::compositor::DisplayListener::operator*;
    mir::compositor::SceneElement::operator*;
    mir::compositor::SceneElement::?SceneElement*;
    mir::compositor::SceneElement::SceneElement*;
    mir::compositor::Scene::Scene*;
    mir::frontend::BufferSink::?BufferSink*;
    mir::frontend::BufferSink::BufferSink*;
    mir::frontend::BufferSink::operator*;
    mir::frontend::BufferStream::?BufferStream*;
    mir::frontend::BufferStream::BufferStream*;
    mir::frontend::BufferStream::operator*;
    mir::frontend::PromptSession::operator*;
    mir::frontend::PromptSession::?PromptSession*;
    mir::frontend::PromptSession::PromptSession*;
    mir::frontend::SessionAuthorizer::operator*;
    mir::frontend::SessionAuthorizer::?SessionAuthorizer*;
    mir::frontend::SessionAuthorizer::SessionAuthorizer*;
    mir::frontend::SessionCredentials::gid*;
    mir::frontend::SessionCredentials::pid*;
    mir::frontend::SessionCredentials::SessionCredentials*;
    mir::frontend::SessionCredentials::uid*;
    mir::frontend::SessionMediatorReport::?SessionMediatorReport*;
    mir::frontend::Session::operator*;
    mir::frontend::Session::?Session*;
    mir::frontend::Session::Session*;
    mir::frontend::Surface::operator*;
    mir::frontend::Surface::?Surface*;
    mir::frontend::Surface::Surface*;
    mir::graphics::CloneDisplayConfigurationPolicy::apply_to*;
    mir::graphics::DisplayConfigurationReport::?DisplayConfigurationReport*;
    mir::graphics::DisplayConfigurationReport::DisplayConfigurationReport*;
    mir::graphics::DisplayConfigurationReport::operator*;
    mir::graphics::SideBySideDisplayConfigurationPolicy::apply_to*;
    mir::graphics::SingleDisplayConfigurationPolicy::apply_to*;
    mir::input::CursorImages::?CursorImages*;
    mir::input::CursorImages::CursorImages*;
    mir::input::CursorImages::operator*;
    mir::input::CursorListener::?CursorListener*;
    mir::input::CursorListener::CursorListener*;
    mir::input::CursorListener::operator*;
    mir::input::Device::?Device*;
    mir::input::Device::Device*;
    mir::input::EventFilter::?EventFilter*;
    mir::input::EventFilter::EventFilter*;
    mir::input::EventFilter::operator*;
    mir::input::InputChannel::InputChannel*;
    mir::input::InputChannel::operator*;
    mir::input::InputDeviceHub::?InputDeviceHub*;
    mir::input::InputDeviceHub::InputDeviceHub*;
    mir::input::InputDeviceHub::operator*;
    mir::input::InputDeviceObserver::?InputDeviceObserver*;
    mir::input::InputDeviceObserver::InputDeviceObserver*;
    mir::input::InputDeviceObserver::operator*;
    mir::input::InputDispatcher::?InputDispatcher*;
    mir::input::InputManager::InputManager*;
    mir::input::InputManager::operator*;
    mir::input::Surface::operator*;
    mir::input::Surface::?Surface*;
    mir::input::Surface::Surface*;
    mir::input::TouchVisualizer::operator*;
    mir::input::TouchVisualizer::?TouchVisualizer*;
    mir::input::TouchVisualizer::TouchVisualizer*;
    mir::LockableCallback::?LockableCallback*;
    mir::LockableCallback::LockableCallback*;
    mir::LockableCallback::operator*;
    mir::report_exception*;
    mir::scene::ApplicationNotRespondingDetector::?ApplicationNotRespondingDetector*;
    mir::scene::ApplicationNotRespondingDetector::ApplicationNotRespondingDetector*;
    mir::scene::ApplicationNotRespondingDetector::Observer::?Observer*;
    mir::scene::ApplicationNotRespondingDetector::Observer::Observer*;
    mir::scene::a_surface*;
    mir::scene::BufferStreamFactory::?BufferStreamFactory*;
    mir::scene::BufferStreamFactory::BufferStreamFactory*;
    mir::scene::BufferStreamFactory::operator*;
    mir::scene::CoordinateTranslator::?CoordinateTranslator*;
    mir::scene::NullSessionListener::?NullSessionListener*;
    mir::scene::NullSessionListener::NullSessionListener*;
    mir::scene::NullSessionListener::operator*;
    mir::scene::NullSurfaceObserver::alpha_set_to*;
    mir::scene::NullSurfaceObserver::attrib_changed*;
    mir::scene::NullSurfaceObserver::client_surface_close_requested*;
    mir::scene::NullSurfaceObserver::cursor_image_removed*;
    mir::scene::NullSurfaceObserver::cursor_image_set_to*;
    mir::scene::NullSurfaceObserver::frame_posted*;
    mir::scene::NullSurfaceObserver::hidden_set_to*;
    mir::scene::NullSurfaceObserver::keymap_changed*;
    mir::scene::NullSurfaceObserver::moved_to*;
    mir::scene::NullSurfaceObserver::?NullSurfaceObserver*;
    mir::scene::NullSurfaceObserver::NullSurfaceObserver*;
    mir::scene::NullSurfaceObserver::operator*;
    mir::scene::NullSurfaceObserver::orientation_set_to*;
    mir::scene::NullSurfaceObserver::reception_mode_set_to*;
    mir::scene::NullSurfaceObserver::renamed*;
    mir::scene::NullSurfaceObserver::resized_to*;
    mir::scene::NullSurfaceObserver::transformation_set_to*;
    mir::scene::Observer::?Observer*;
    mir::scene::Observer::Observer*;
    mir::scene::Observer::operator*;
    mir::scene::operator*;
    mir::scene::PromptSessionListener::operator*;
    mir::scene::PromptSessionListener::?PromptSessionListener*;
    mir::scene::PromptSessionListener::PromptSessionListener*;
    mir::scene::PromptSessionManager::operator*;
    mir::scene::PromptSessionManager::?PromptSessionManager*;
    mir::scene::PromptSessionManager::PromptSessionManager*;
    mir::scene::SessionCoordinator::operator*;
    mir::scene::SessionCoordinator::?SessionCoordinator*;
    mir::scene::SessionCoordinator::SessionCoordinator*;
    mir::scene::SessionListener::operator*;
    mir::scene::SessionListener::?SessionListener*;
    mir::scene::SessionListener::SessionListener*;
    mir::scene::SurfaceCreationParameters::of_buffer_usage*;
    mir::scene::SurfaceCreationParameters::of_name*;
    mir::scene::SurfaceCreationParameters::of_pixel_format*;
    mir::scene::SurfaceCreationParameters::of_position*;
    mir::scene::SurfaceCreationParameters::of_size*;
    mir::scene::SurfaceCreationParameters::of_type*;
    mir::scene::SurfaceCreationParameters::SurfaceCreationParameters*;
    mir::scene::SurfaceCreationParameters::with_aux_rect*;
    mir::scene::SurfaceCreationParameters::with_buffer_stream*;
    mir::scene::SurfaceCreationParameters::with_edge_attachment*;
    mir::scene::SurfaceCreationParameters::with_input_mode*;
    mir::scene::SurfaceCreationParameters::with_output_id*;
    mir::scene::SurfaceCreationParameters::with_parent_id*;
    mir::scene::SurfaceCreationParameters::with_preferred_orientation*;
    mir::scene::SurfaceCreationParameters::with_state*;
    mir::scene::SurfaceFactory::?SurfaceFactory*;
    mir::scene::SurfaceFactory::SurfaceFactory*;
    mir::scene::SurfaceObserver::operator*;
    mir::scene::SurfaceObserver::?SurfaceObserver*;
    mir::scene::SurfaceObserver::SurfaceObserver*;
    mir::ServerActionQueue::operator*;
    mir::ServerActionQueue::?ServerActionQueue*;
    mir::ServerActionQueue::ServerActionQueue*;
    mir::Server::add_configuration_option*;
    mir::Server::add_emergency_cleanup*;
    mir::Server::add_init_callback*;
    mir::Server::apply_settings*;
    mir::Server::exited_normally*;
    mir::Server::get_options*;
    mir::Server::open_client_socket*;
    mir::Server::open_prompt_socket*;
    mir::Server::override_the_application_not_responding_detector*;
    mir::Server::override_the_compositor*;
    mir::Server::override_the_cookie_authority*;
    mir::Server::override_the_coordinate_translator*;
    mir::Server::override_the_cursor_images*;
    mir::Server::override_the_display_buffer_compositor_factory*;
    mir::Server::override_the_display_configuration_report*;
    mir::Server::override_the_gl_config*;
    mir::Server::override_the_host_lifecycle_event_listener*;
    mir::Server::override_the_input_dispatcher*;
    mir::Server::override_the_logger*;
    mir::Server::override_the_prompt_session_listener*;
    mir::Server::override_the_prompt_session_manager*;
    mir::Server::override_the_server_status_listener*;
    mir::Server::override_the_session_authorizer*;
    mir::Server::override_the_session_listener*;
    mir::Server::override_the_session_mediator_report*;
    mir::Server::override_the_shell*;
    mir::Server::override_the_window_manager_builder*;
    mir::Server::run*;
    mir::Server::Server*;
    mir::Server::set_command_line*;
    mir::Server::set_command_line_handler*;
    mir::Server::set_config_filename*;
    mir::Server::set_exception_handler*;
    mir::Server::set_terminator*;
    mir::ServerStatusListener::operator*;
    mir::ServerStatusListener::?ServerStatusListener*;
    mir::ServerStatusListener::ServerStatusListener*;
    mir::Server::stop*;
    mir::Server::supported_pixel_formats*;
    mir::Server::the_application_not_responding_detector*;
    mir::Server::the_buffer_stream_factory*;
    mir::Server::the_composite_event_filter*;
    mir::Server::the_compositor*;
    mir::Server::the_cursor*;
    mir::Server::the_cursor_listener*;
    mir::Server::the_display*;
    mir::Server::the_display_configuration_controller*;
    mir::Server::the_focus_controller*;
    mir::Server::the_gl_config*;
    mir::Server::the_graphics_platform*;
    mir::Server::the_input_device_hub*;
    mir::Server::the_input_targeter*;
    mir::Server::the_logger*;
    mir::Server::the_main_loop*;
    mir::Server::the_prompt_session_listener*;
    mir::Server::the_prompt_session_manager*;
    mir::Server::the_session_authorizer*;
    mir::Server::the_session_coordinator*;
    mir::Server::the_session_listener*;
    mir::Server::the_shell*;
    mir::Server::the_shell_display_layout*;
    mir::Server::the_surface_factory*;
    mir::Server::the_surface_stack*;
    mir::Server::the_touch_visualizer*;
    mir::Server::wrap_cursor*;
    mir::Server::wrap_cursor_listener*;
    mir::Server::wrap_display_buffer_compositor_factory*;
    mir::Server::wrap_display_configuration_policy*;
    mir::Server::wrap_shell*;
    mir::Server::wrap_surface_stack*;
    mir::shell::AbstractShell::?AbstractShell*;
    mir::shell::AbstractShell::AbstractShell*;
    mir::shell::AbstractShell::add_display*;
    mir::shell::AbstractShell::add_prompt_provider_for*;
    mir::shell::AbstractShell::close_session*;
    mir::shell::AbstractShell::create_surface*;
    mir::shell::AbstractShell::destroy_surface*;
    mir::shell::AbstractShell::focused_session*;
    mir::shell::AbstractShell::focused_surface*;
    mir::shell::AbstractShell::focus_next_session*;
    mir::shell::AbstractShell::get_surface_attribute*;
    mir::shell::AbstractShell::handle*;
    mir::shell::AbstractShell::modify_surface*;
    mir::shell::AbstractShell::open_session*;
    mir::shell::AbstractShell::raise*;
    mir::shell::AbstractShell::raise_surface*;
    mir::shell::AbstractShell::remove_display*;
    mir::shell::AbstractShell::set_focus_to*;
    mir::shell::AbstractShell::set_surface_attribute*;
    mir::shell::AbstractShell::start_prompt_session_for*;
    mir::shell::AbstractShell::stop_prompt_session*;
    mir::shell::AbstractShell::surface_at*;
    mir::shell::DisplayConfigurationController::?DisplayConfigurationController*;
    mir::shell::DisplayConfigurationController::DisplayConfigurationController*;
    mir::shell::DisplayConfigurationController::operator*;
    mir::shell::DisplayLayout::?DisplayLayout*;
    mir::shell::DisplayLayout::DisplayLayout*;
    mir::shell::DisplayLayout::operator*;
    mir::shell::FocusController::?FocusController*;
    mir::shell::FocusController::FocusController*;
    mir::shell::FocusController::operator*;
    mir::shell::HostLifecycleEventListener::?HostLifecycleEventListener*;
    mir::shell::HostLifecycleEventListener::HostLifecycleEventListener*;
    mir::shell::HostLifecycleEventListener::operator*;
    mir::shell::InputTargeter::?InputTargeter*;
    mir::shell::InputTargeter::InputTargeter*;
    mir::shell::InputTargeter::operator*;
    mir::shell::PersistentSurfaceStore::Id::Id*;
    mir::shell::PersistentSurfaceStore::Id::operator*;
    mir::shell::PersistentSurfaceStore::Id::serialize_to_string*;
    mir::shell::PersistentSurfaceStore::?PersistentSurfaceStore*;
    mir::shell::ShellReport::operator*;
    mir::shell::ShellReport::?ShellReport*;
    mir::shell::ShellReport::ShellReport*;
    mir::shell::ShellWrapper::add_display*;
    mir::shell::ShellWrapper::add_prompt_provider_for*;
    mir::shell::ShellWrapper::close_session*;
    mir::shell::ShellWrapper::create_surface*;
    mir::shell::ShellWrapper::destroy_surface*;
    mir::shell::ShellWrapper::focused_session*;
    mir::shell::ShellWrapper::focused_surface*;
    mir::shell::ShellWrapper::focus_next_session*;
    mir::shell::ShellWrapper::get_surface_attribute*;
    mir::shell::ShellWrapper::handle*;
    mir::shell::ShellWrapper::modify_surface*;
    mir::shell::ShellWrapper::open_session*;
    mir::shell::ShellWrapper::raise*;
    mir::shell::ShellWrapper::raise_surface*;
    mir::shell::ShellWrapper::remove_display*;
    mir::shell::ShellWrapper::set_focus_to*;
    mir::shell::ShellWrapper::set_surface_attribute*;
    mir::shell::ShellWrapper::ShellWrapper*;
    mir::shell::ShellWrapper::start_prompt_session_for*;
    mir::shell::ShellWrapper::stop_prompt_session*;
    mir::shell::ShellWrapper::surface_at*;
    mir::shell::SurfaceReadyObserver::frame_posted*;
    mir::shell::SurfaceReadyObserver::?SurfaceReadyObserver*;
    mir::shell::SurfaceReadyObserver::SurfaceReadyObserver*;
    mir::shell::SurfaceSpecification::is_empty*;
    mir::shell::SurfaceStack::operator*;
    mir::shell::SurfaceStack::?SurfaceStack*;
    mir::shell::SurfaceStack::SurfaceStack*;
    mir::shell::SurfaceStackWrapper::add_surface*;
    mir::shell::SurfaceStackWrapper::raise*;
    mir::shell::SurfaceStackWrapper::remove_surface*;
    mir::shell::SurfaceStackWrapper::surface_at*;
    mir::shell::SurfaceStackWrapper::SurfaceStackWrapper*;
    mir::shell::SystemCompositorWindowManager::add_display*;
    mir::shell::SystemCompositorWindowManager::add_session*;
    mir::shell::SystemCompositorWindowManager::add_surface*;
    mir::shell::SystemCompositorWindowManager::handle_keyboard_event*;
    mir::shell::SystemCompositorWindowManager::handle_pointer_event*;
    mir::shell::SystemCompositorWindowManager::handle_raise_surface*;
    mir::shell::SystemCompositorWindowManager::handle_touch_event*;
    mir::shell::SystemCompositorWindowManager::handle_raise_surface*;
    mir::shell::SystemCompositorWindowManager::modify_surface*;
    mir::shell::SystemCompositorWindowManager::on_session_added*;
    mir::shell::SystemCompositorWindowManager::on_session_ready*;
    mir::shell::SystemCompositorWindowManager::on_session_removed*;
    mir::shell::SystemCompositorWindowManager::remove_display*;
    mir::shell::SystemCompositorWindowManager::remove_session*;
    mir::shell::SystemCompositorWindowManager::remove_surface*;
    mir::shell::SystemCompositorWindowManager::set_surface_attribute*;
    mir::shell::SystemCompositorWindowManager::SystemCompositorWindowManager*;
    mir::shell::WindowManager::operator*;
    mir::shell::WindowManager::?WindowManager*;
    mir::shell::WindowManager::WindowManager*;
    mir::terminate_with_current_exception*;
    mir::time::Alarm::?Alarm*;
    mir::time::Alarm::Alarm*;
    mir::time::AlarmFactory::?AlarmFactory*;
    mir::time::AlarmFactory::AlarmFactory*;
    mir::time::AlarmFactory::operator*;
    mir::time::Alarm::operator*;
    non-virtual?thunk?to?mir::compositor::DisplayBufferCompositor::?DisplayBufferCompositor*;
    non-virtual?thunk?to?mir::compositor::DisplayBufferCompositorFactory::?DisplayBufferCompositorFactory*;
    non-virtual?thunk?to?mir::compositor::DisplayListener::?DisplayListener*;
    non-virtual?thunk?to?mir::compositor::SceneElement::?SceneElement*;
    non-virtual?thunk?to?mir::frontend::BufferSink::?BufferSink*;
    non-virtual?thunk?to?mir::frontend::BufferStream::?BufferStream*;
    non-virtual?thunk?to?mir::frontend::PromptSession::?PromptSession*;
    non-virtual?thunk?to?mir::frontend::SessionAuthorizer::?SessionAuthorizer*;
    non-virtual?thunk?to?mir::frontend::SessionMediatorReport::?SessionMediatorReport*;
    non-virtual?thunk?to?mir::frontend::Session::?Session*;
    non-virtual?thunk?to?mir::frontend::Surface::?Surface*;
    non-virtual?thunk?to?mir::graphics::CloneDisplayConfigurationPolicy::apply_to*;
    non-virtual?thunk?to?mir::graphics::DisplayConfigurationReport::?DisplayConfigurationReport*;
    non-virtual?thunk?to?mir::graphics::SideBySideDisplayConfigurationPolicy::apply_to*;
    non-virtual?thunk?to?mir::graphics::SingleDisplayConfigurationPolicy::apply_to*;
    non-virtual?thunk?to?mir::input::CursorImages::?CursorImages*;
    non-virtual?thunk?to?mir::input::CursorListener::?CursorListener*;
    non-virtual?thunk?to?mir::input::Device::?Device*;
    non-virtual?thunk?to?mir::input::EventFilter::?EventFilter*;
    non-virtual?thunk?to?mir::input::InputDeviceHub::?InputDeviceHub*;
    non-virtual?thunk?to?mir::input::InputDeviceObserver::?InputDeviceObserver*;
    non-virtual?thunk?to?mir::input::InputDispatcher::?InputDispatcher*;
    non-virtual?thunk?to?mir::input::Surface::?Surface*;
    non-virtual?thunk?to?mir::input::TouchVisualizer::?TouchVisualizer*;
    non-virtual?thunk?to?mir::LockableCallback::?LockableCallback*;
    non-virtual?thunk?to?mir::scene::ApplicationNotRespondingDetector::?ApplicationNotRespondingDetector*;
    non-virtual?thunk?to?mir::scene::ApplicationNotRespondingDetector::Observer::?Observer*;
    non-virtual?thunk?to?mir::scene::BufferStreamFactory::?BufferStreamFactory*;
    non-virtual?thunk?to?mir::scene::CoordinateTranslator::?CoordinateTranslator*;
    non-virtual?thunk?to?mir::scene::NullSessionListener::?NullSessionListener*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::alpha_set_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::attrib_changed*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::client_surface_close_requested*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::cursor_image_set_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::frame_posted*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::hidden_set_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::keymap_changed*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::moved_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::?NullSurfaceObserver*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::orientation_set_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::reception_mode_set_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::renamed*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::resized_to*;
    non-virtual?thunk?to?mir::scene::NullSurfaceObserver::transformation_set_to*;
    non-virtual?thunk?to?mir::scene::Observer::?Observer*;
    non-virtual?thunk?to?mir::scene::PromptSessionListener::?PromptSessionListener*;
    non-virtual?thunk?to?mir::scene::PromptSessionManager::?PromptSessionManager*;
    non-virtual?thunk?to?mir::scene::SessionCoordinator::?SessionCoordinator*;
    non-virtual?thunk?to?mir::scene::SessionListener::?SessionListener*;
    non-virtual?thunk?to?mir::scene::SurfaceFactory::?SurfaceFactory*;
    non-virtual?thunk?to?mir::scene::SurfaceObserver::?SurfaceObserver*;
    non-virtual?thunk?to?mir::ServerActionQueue::?ServerActionQueue*;
    non-virtual?thunk?to?mir::ServerStatusListener::?ServerStatusListener*;
    non-virtual?thunk?to?mir::shell::AbstractShell::add_display*;
    non-virtual?thunk?to?mir::shell::AbstractShell::add_prompt_provider_for*;
    non-virtual?thunk?to?mir::shell::AbstractShell::close_session*;
    non-virtual?thunk?to?mir::shell::AbstractShell::create_surface*;
    non-virtual?thunk?to?mir::shell::AbstractShell::destroy_surface*;
    non-virtual?thunk?to?mir::shell::AbstractShell::focused_session*;
    non-virtual?thunk?to?mir::shell::AbstractShell::focused_surface*;
    non-virtual?thunk?to?mir::shell::AbstractShell::focus_next_session*;
    non-virtual?thunk?to?mir::shell::AbstractShell::get_surface_attribute*;
    non-virtual?thunk?to?mir::shell::AbstractShell::handle*;
    non-virtual?thunk?to?mir::shell::AbstractShell::modify_surface*;
    non-virtual?thunk?to?mir::shell::AbstractShell::open_session*;
    non-virtual?thunk?to?mir::shell::AbstractShell::raise*;
    non-virtual?thunk?to?mir::shell::AbstractShell::raise_surface*;
    non-virtual?thunk?to?mir::shell::AbstractShell::remove_display*;
    non-virtual?thunk?to?mir::shell::AbstractShell::set_focus_to*;
    non-virtual?thunk?to?mir::shell::AbstractShell::set_surface_attribute*;
    non-virtual?thunk?to?mir::shell::AbstractShell::start_prompt_session_for*;
    non-virtual?thunk?to?mir::shell::AbstractShell::stop_prompt_session*;
    non-virtual?thunk?to?mir::shell::AbstractShell::surface_at*;
    non-virtual?thunk?to?mir::shell::DisplayConfigurationController::?DisplayConfigurationController*;
    non-virtual?thunk?to?mir::shell::DisplayLayout::?DisplayLayout*;
    non-virtual?thunk?to?mir::shell::FocusController::?FocusController*;
    non-virtual?thunk?to?mir::shell::HostLifecycleEventListener::?HostLifecycleEventListener*;
    non-virtual?thunk?to?mir::shell::InputTargeter::?InputTargeter*;
    non-virtual?thunk?to?mir::shell::PersistentSurfaceStore::?PersistentSurfaceStore*;
    non-virtual?thunk?to?mir::shell::ShellReport::?ShellReport*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::add_display*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::add_prompt_provider_for*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::close_session*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::create_surface*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::destroy_surface*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::focused_session*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::focused_surface*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::focus_next_session*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::get_surface_attribute*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::handle*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::modify_surface*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::open_session*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::raise*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::raise_surface*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::remove_display*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::set_focus_to*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::set_surface_attribute*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::start_prompt_session_for*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::stop_prompt_session*;
    non-virtual?thunk?to?mir::shell::ShellWrapper::surface_at*;
    non-virtual?thunk?to?mir::shell::SurfaceReadyObserver::frame_posted*;
    non-virtual?thunk?to?mir::shell::SurfaceStack::?SurfaceStack*;
    non-virtual?thunk?to?mir::shell::SurfaceStackWrapper::add_surface*;
    non-virtual?thunk?to?mir::shell::SurfaceStackWrapper::raise*;
    non-virtual?thunk?to?mir::shell::SurfaceStackWrapper::remove_surface*;
    non-virtual?thunk?to?mir::shell::SurfaceStackWrapper::surface_at*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::add_display*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::add_session*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::add_surface*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::handle_keyboard_event*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::handle_pointer_event*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::handle_raise_surface*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::handle_touch_event*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::modify_surface*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::on_session_added*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::on_session_ready*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::on_session_removed*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::remove_display*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::remove_session*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::remove_surface*;
    non-virtual?thunk?to?mir::shell::SystemCompositorWindowManager::set_surface_attribute*;
    non-virtual?thunk?to?mir::shell::WindowManager::?WindowManager*;
    non-virtual?thunk?to?mir::time::Alarm::?Alarm*;
    non-virtual?thunk?to?mir::time::AlarmFactory::?AlarmFactory*;
    typeinfo?for?mir::compositor::Compositor;
    typeinfo?for?mir::compositor::DisplayBufferCompositor;
    typeinfo?for?mir::compositor::DisplayBufferCompositorFactory;
    typeinfo?for?mir::compositor::DisplayListener;
    typeinfo?for?mir::compositor::Scene;
    typeinfo?for?mir::compositor::SceneElement;
    typeinfo?for?mir::frontend::BufferSink;
    typeinfo?for?mir::frontend::BufferStream;
    typeinfo?for?mir::frontend::PromptSession;
    typeinfo?for?mir::frontend::Session;
    typeinfo?for?mir::frontend::SessionAuthorizer;
    typeinfo?for?mir::frontend::SessionCredentials;
    typeinfo?for?mir::frontend::SessionMediatorReport;
    typeinfo?for?mir::frontend::Surface;
    typeinfo?for?mir::graphics::CloneDisplayConfigurationPolicy;
    typeinfo?for?mir::graphics::DisplayConfigurationReport;
    typeinfo?for?mir::graphics::SideBySideDisplayConfigurationPolicy;
    typeinfo?for?mir::graphics::SingleDisplayConfigurationPolicy;
    typeinfo?for?mir::input::CompositeEventFilter;
    typeinfo?for?mir::input::CursorImages;
    typeinfo?for?mir::input::CursorListener;
    typeinfo?for?mir::input::Device;
    typeinfo?for?mir::input::EventFilter;
    typeinfo?for?mir::input::InputChannel;
    typeinfo?for?mir::input::InputDeviceHub;
    typeinfo?for?mir::input::InputDeviceObserver;
    typeinfo?for?mir::input::InputDispatcher;
    typeinfo?for?mir::input::InputManager;
    typeinfo?for?mir::input::PointerConfiguration;
    typeinfo?for?mir::input::Surface;
    typeinfo?for?mir::input::TouchpadConfiguration;
    typeinfo?for?mir::input::TouchVisualizer;
    typeinfo?for?mir::input::TouchVisualizer::Spot;
    typeinfo?for?mir::LockableCallback;
    typeinfo?for?mir::MainLoop;
    typeinfo?for?mir::scene::ApplicationNotRespondingDetector;
    typeinfo?for?mir::scene::ApplicationNotRespondingDetector::Observer;
    typeinfo?for?mir::scene::BufferStreamFactory;
    typeinfo?for?mir::scene::CoordinateTranslator;
    typeinfo?for?mir::scene::NullSessionListener;
    typeinfo?for?mir::scene::NullSurfaceObserver;
    typeinfo?for?mir::scene::Observer;
    typeinfo?for?mir::scene::PromptSession;
    typeinfo?for?mir::scene::PromptSessionCreationParameters;
    typeinfo?for?mir::scene::PromptSessionListener;
    typeinfo?for?mir::scene::PromptSessionManager;
    typeinfo?for?mir::scene::Session;
    typeinfo?for?mir::scene::SessionCoordinator;
    typeinfo?for?mir::scene::SessionListener;
    typeinfo?for?mir::scene::Snapshot;
    typeinfo?for?mir::scene::StreamInfo;
    typeinfo?for?mir::scene::Surface;
    typeinfo?for?mir::scene::SurfaceCreationParameters;
    typeinfo?for?mir::scene::SurfaceFactory;
    typeinfo?for?mir::scene::SurfaceObserver;
    typeinfo?for?mir::Server;
    typeinfo?for?mir::ServerActionQueue;
    typeinfo?for?mir::ServerStatusListener;
    typeinfo?for?mir::shell::AbstractShell;
    typeinfo?for?mir::shell::DisplayConfigurationController;
    typeinfo?for?mir::shell::DisplayLayout;
    typeinfo?for?mir::shell::FocusController;
    typeinfo?for?mir::shell::HostLifecycleEventListener;
    typeinfo?for?mir::shell::InputTargeter;
    typeinfo?for?mir::shell::PersistentSurfaceStore;
    typeinfo?for?mir::shell::PersistentSurfaceStore::Id;
    typeinfo?for?mir::shell::Shell;
    typeinfo?for?mir::shell::ShellReport;
    typeinfo?for?mir::shell::ShellWrapper;
    typeinfo?for?mir::shell::StreamSpecification;
    typeinfo?for?mir::shell::SurfaceAspectRatio;
    typeinfo?for?mir::shell::SurfaceReadyObserver;
    typeinfo?for?mir::shell::SurfaceSpecification;
    typeinfo?for?mir::shell::SurfaceStack;
    typeinfo?for?mir::shell::SurfaceStackWrapper;
    typeinfo?for?mir::shell::SystemCompositorWindowManager;
    typeinfo?for?mir::shell::WindowManager;
    typeinfo?for?mir::time::Alarm;
    typeinfo?for?mir::time::AlarmFactory;
    vtable?for?mir::compositor::Compositor;
    vtable?for?mir::compositor::DisplayBufferCompositor;
    vtable?for?mir::compositor::DisplayBufferCompositorFactory;
    vtable?for?mir::compositor::DisplayListener;
    vtable?for?mir::compositor::Scene;
    vtable?for?mir::compositor::SceneElement;
    vtable?for?mir::frontend::BufferSink;
    vtable?for?mir::frontend::BufferStream;
    vtable?for?mir::frontend::PromptSession;
    vtable?for?mir::frontend::Session;
    vtable?for?mir::frontend::SessionAuthorizer;
    vtable?for?mir::frontend::SessionCredentials;
    vtable?for?mir::frontend::SessionMediatorReport;
    vtable?for?mir::frontend::Surface;
    vtable?for?mir::graphics::CloneDisplayConfigurationPolicy;
    vtable?for?mir::graphics::DisplayConfigurationReport;
    vtable?for?mir::graphics::SideBySideDisplayConfigurationPolicy;
    vtable?for?mir::graphics::SingleDisplayConfigurationPolicy;
    vtable?for?mir::input::CompositeEventFilter;
    vtable?for?mir::input::CursorImages;
    vtable?for?mir::input::CursorListener;
    vtable?for?mir::input::Device;
    vtable?for?mir::input::EventFilter;
    vtable?for?mir::input::InputChannel;
    vtable?for?mir::input::InputDeviceHub;
    vtable?for?mir::input::InputDeviceObserver;
    vtable?for?mir::input::InputDispatcher;
    vtable?for?mir::input::InputManager;
    vtable?for?mir::input::PointerConfiguration;
    vtable?for?mir::input::Surface;
    vtable?for?mir::input::TouchpadConfiguration;
    vtable?for?mir::input::TouchVisualizer;
    vtable?for?mir::input::TouchVisualizer::Spot;
    vtable?for?mir::LockableCallback;
    vtable?for?mir::MainLoop;
    vtable?for?mir::scene::ApplicationNotRespondingDetector;
    vtable?for?mir::scene::ApplicationNotRespondingDetector::Observer;
    vtable?for?mir::scene::BufferStreamFactory;
    vtable?for?mir::scene::CoordinateTranslator;
    vtable?for?mir::scene::NullSessionListener;
    vtable?for?mir::scene::NullSurfaceObserver;
    vtable?for?mir::scene::Observer;
    vtable?for?mir::scene::PromptSession;
    vtable?for?mir::scene::PromptSessionCreationParameters;
    vtable?for?mir::scene::PromptSessionListener;
    vtable?for?mir::scene::PromptSessionManager;
    vtable?for?mir::scene::Session;
    vtable?for?mir::scene::SessionCoordinator;
    vtable?for?mir::scene::SessionListener;
    vtable?for?mir::scene::Snapshot;
    vtable?for?mir::scene::StreamInfo;
    vtable?for?mir::scene::Surface;
    vtable?for?mir::scene::SurfaceCreationParameters;
    vtable?for?mir::scene::SurfaceFactory;
    vtable?for?mir::scene::SurfaceObserver;
    vtable?for?mir::Server;
    vtable?for?mir::ServerActionQueue;
    vtable?for?mir::ServerStatusListener;
    vtable?for?mir::shell::AbstractShell;
    vtable?for?mir::shell::DisplayConfigurationController;
    vtable?for?mir::shell::DisplayLayout;
    vtable?for?mir::shell::FocusController;
    vtable?for?mir::shell::HostLifecycleEventListener;
    vtable?for?mir::shell::InputTargeter;
    vtable?for?mir::shell::PersistentSurfaceStore;
    vtable?for?mir::shell::PersistentSurfaceStore::Id;
    vtable?for?mir::shell::Shell;
    vtable?for?mir::shell::ShellReport;
    vtable?for?mir::shell::ShellWrapper;
    vtable?for?mir::shell::StreamSpecification;
    vtable?for?mir::shell::SurfaceAspectRatio;
    vtable?for?mir::shell::SurfaceReadyObserver;
    vtable?for?mir::shell::SurfaceSpecification;
    vtable?for?mir::shell::SurfaceStack;
    vtable?for?mir::shell::SurfaceStackWrapper;
    vtable?for?mir::shell::SystemCompositorWindowManager;
    vtable?for?mir::shell::WindowManager;
    vtable?for?mir::time::Alarm;
    vtable?for?mir::time::AlarmFactory;

# needed but not picked up by current version of script
    virtual?thunk?to?mir::shell::AbstractShell::?AbstractShell*;
    virtual?thunk?to?mir::shell::AbstractShell::add_display*;
    virtual?thunk?to?mir::shell::AbstractShell::add_prompt_provider_for*;
    virtual?thunk?to?mir::shell::AbstractShell::close_session*;
    virtual?thunk?to?mir::shell::AbstractShell::create_surface*;
    virtual?thunk?to?mir::shell::AbstractShell::destroy_surface*;
    virtual?thunk?to?mir::shell::AbstractShell::focus_next_session*;
    virtual?thunk?to?mir::shell::AbstractShell::focused_session*;
    virtual?thunk?to?mir::shell::AbstractShell::get_surface_attribute*;
    virtual?thunk?to?mir::shell::AbstractShell::handle*;
    virtual?thunk?to?mir::shell::AbstractShell::handle_surface_created*;
    virtual?thunk?to?mir::shell::AbstractShell::open_session*;
    virtual?thunk?to?mir::shell::AbstractShell::remove_display*;
    virtual?thunk?to?mir::shell::AbstractShell::set_focus_to*;
    virtual?thunk?to?mir::shell::AbstractShell::set_surface_attribute*;
    virtual?thunk?to?mir::shell::AbstractShell::setting_focus_to*;
    virtual?thunk?to?mir::shell::AbstractShell::start_prompt_session_for*;
    virtual?thunk?to?mir::shell::AbstractShell::stop_prompt_session*;
    virtual?thunk?to?mir::shell::ShellWrapper::add_display*;
    virtual?thunk?to?mir::shell::ShellWrapper::handle*;
    virtual?thunk?to?mir::shell::ShellWrapper::remove_display*;

# these symbols are needed by mir_proving_server but are not intended to be public
    mir::renderer::gl::ProgramFamily::*;
    mir::renderer::gl::Renderer::Renderer*;
    mir::renderer::gl::Renderer::?Renderer*;
    mir::renderer::gl::Renderer::Program::Program*;
    mir::renderer::gl::Renderer::draw*;
    mir::renderer::gl::Renderer::render*;
    mir::renderer::gl::Renderer::set_rotation*;
    mir::renderer::gl::Renderer::set_viewport*;
    mir::renderer::gl::Renderer::suspend*;
    mir::renderer::gl::Renderer::tessellate*;
    mir::renderer::gl::Renderer::vshader;
    typeinfo?for?mir::renderer::gl::Renderer;
    vtable?for?mir::renderer::gl::Renderer;

# these symbols are needed by the test framework but are not intended to be public
    mir::shell::CanonicalWindowManagerPolicy::handle_set_state*;
    mir::shell::CanonicalWindowManagerPolicy::CanonicalWindowManagerPolicy*;
    mir::shell::CanonicalWindowManagerPolicy::handle_session_info_updated*;
    mir::shell::CanonicalWindowManagerPolicy::handle_session_info_updated*;
    mir::shell::CanonicalWindowManagerPolicy::handle_place_new_surface*;
    mir::shell::CanonicalWindowManagerPolicy::handle_modify_surface*;
    mir::shell::CanonicalWindowManagerPolicy::handle_new_surface*;
    mir::shell::CanonicalSurfaceInfo::CanonicalSurfaceInfo*;
    mir::shell::CanonicalWindowManagerPolicy::handle_delete_surface*;
    mir::shell::CanonicalWindowManagerPolicy::handle_displays_updated*;
    mir::shell::CanonicalWindowManagerPolicy::handle_displays_updated*;
    mir::shell::CanonicalWindowManagerPolicy::handle_keyboard_event*;
    mir::shell::CanonicalWindowManagerPolicy::handle_touch_event*;
    mir::shell::CanonicalWindowManagerPolicy::handle_pointer_event*;
    mir::shell::CanonicalWindowManagerPolicy::handle_raise_surface*;
    mir::shell::DefaultWindowManager::DefaultWindowManager*;

    mir::DefaultServerConfiguration::clock*;
    mir::DefaultServerConfiguration::DefaultServerConfiguration*;
    mir::DefaultServerConfiguration::new_ipc_factory*;
    mir::DefaultServerConfiguration::the_android_input_dispatcher*;
    mir::DefaultServerConfiguration::the_application_not_responding_detector*;
    mir::DefaultServerConfiguration::the_buffer_allocator*;
    mir::DefaultServerConfiguration::the_buffer_stream_factory*;
    mir::DefaultServerConfiguration::the_clock*;
    mir::DefaultServerConfiguration::the_composite_event_filter*;
    mir::DefaultServerConfiguration::the_cookie_authority*;
    mir::DefaultServerConfiguration::the_event_filter_chain_dispatcher*;
    mir::DefaultServerConfiguration::the_surface_input_dispatcher;
    mir::DefaultServerConfiguration::the_compositor*;
    mir::DefaultServerConfiguration::the_compositor_report*;
    mir::DefaultServerConfiguration::the_connection_creator*;
    mir::DefaultServerConfiguration::the_connector*;
    mir::DefaultServerConfiguration::the_connector_report*;
    mir::DefaultServerConfiguration::the_coordinate_translator*;
    mir::DefaultServerConfiguration::the_cursor*;
    mir::DefaultServerConfiguration::the_cursor_images*;
    mir::DefaultServerConfiguration::the_cursor_listener*;
    mir::DefaultServerConfiguration::the_default_cursor_image*;
    mir::DefaultServerConfiguration::the_dispatcher_policy*;
    mir::DefaultServerConfiguration::the_dispatcher_thread*;
    mir::DefaultServerConfiguration::the_display*;
    mir::DefaultServerConfiguration::the_display_buffer_compositor_factory*;
    mir::DefaultServerConfiguration::the_display_changer*;
    mir::DefaultServerConfiguration::the_display_configuration_controller*;
    mir::DefaultServerConfiguration::the_display_configuration_policy*;
    mir::DefaultServerConfiguration::the_display_report*;
    mir::DefaultServerConfiguration::the_emergency_cleanup*;
    mir::DefaultServerConfiguration::the_event_filter_chain_dispatcher*;
    mir::DefaultServerConfiguration::the_fatal_error_strategy*;
    mir::DefaultServerConfiguration::the_focus_controller*;
    mir::DefaultServerConfiguration::the_frame_dropping_policy_factory*;
    mir::DefaultServerConfiguration::the_frontend_display_changer*;
    mir::DefaultServerConfiguration::the_frontend_shell*;
    mir::DefaultServerConfiguration::the_gl_config*;
    mir::DefaultServerConfiguration::the_global_event_sink*;
    mir::DefaultServerConfiguration::the_graphics_platform*;
    mir::DefaultServerConfiguration::the_host_connection*;
    mir::DefaultServerConfiguration::the_host_lifecycle_event_listener*;
    mir::DefaultServerConfiguration::the_input_channel_factory*;
    mir::DefaultServerConfiguration::the_input_device_hub*;
    mir::DefaultServerConfiguration::the_input_device_registry*;
    mir::DefaultServerConfiguration::the_input_dispatcher*;
    mir::DefaultServerConfiguration::the_new_input_dispatcher*;
    mir::DefaultServerConfiguration::the_input_manager*;
    mir::DefaultServerConfiguration::the_input_reading_multiplexer*;
    mir::DefaultServerConfiguration::the_input_region*;
    mir::DefaultServerConfiguration::the_input_registrar*;
    mir::DefaultServerConfiguration::the_input_report*;
    mir::DefaultServerConfiguration::the_input_scene*;
    mir::DefaultServerConfiguration::the_input_sender*;
    mir::DefaultServerConfiguration::the_input_target_enumerator*;
    mir::DefaultServerConfiguration::the_input_targeter*;
    mir::DefaultServerConfiguration::the_input_translator*;
    mir::DefaultServerConfiguration::the_legacy_input_dispatchable*;
    mir::DefaultServerConfiguration::the_logger*;
    mir::DefaultServerConfiguration::the_main_loop*;
    mir::DefaultServerConfiguration::the_mediating_display_changer*;
    mir::DefaultServerConfiguration::the_message_processor_report*;
    mir::DefaultServerConfiguration::the_options*;
    mir::DefaultServerConfiguration::the_persistent_surface_store*;
    mir::DefaultServerConfiguration::the_pixel_buffer*;
    mir::DefaultServerConfiguration::the_placement_strategy*;
    mir::DefaultServerConfiguration::the_prompt_connection_creator*;
    mir::DefaultServerConfiguration::the_prompt_connector*;
    mir::DefaultServerConfiguration::the_prompt_session_listener*;
    mir::DefaultServerConfiguration::the_prompt_session_manager*;
    mir::DefaultServerConfiguration::the_renderer_factory*;
    mir::DefaultServerConfiguration::the_scene*;
    mir::DefaultServerConfiguration::the_scene_report*;
    mir::DefaultServerConfiguration::the_screencast*;
    mir::DefaultServerConfiguration::the_server_action_queue*;
    mir::DefaultServerConfiguration::the_server_status_listener*;
    mir::DefaultServerConfiguration::the_session_authorizer*;
    mir::DefaultServerConfiguration::the_session_container*;
    mir::DefaultServerConfiguration::the_session_coordinator*;
    mir::DefaultServerConfiguration::the_session_event_handler_register*;
    mir::DefaultServerConfiguration::the_session_event_sink*;
    mir::DefaultServerConfiguration::the_session_listener*;
    mir::DefaultServerConfiguration::the_session_mediator_report*;
    mir::DefaultServerConfiguration::the_shared_library_prober_report*;
    mir::DefaultServerConfiguration::the_shell*;
    mir::DefaultServerConfiguration::the_shell_display_layout*;
    mir::DefaultServerConfiguration::the_snapshot_strategy*;
    mir::DefaultServerConfiguration::the_socket_file*;
    mir::DefaultServerConfiguration::the_surface_configurator*;
    mir::DefaultServerConfiguration::the_surface_stack*;
    mir::DefaultServerConfiguration::the_surface_input_dispatcher*;
    mir::DefaultServerConfiguration::the_surface_factory*;
    mir::DefaultServerConfiguration::the_surface_stack_model*;
    mir::DefaultServerConfiguration::the_touch_visualizer*;
    mir::DefaultServerConfiguration::the_window_manager_builder*;
    mir::DefaultServerConfiguration::wrap_cursor*;
    mir::DefaultServerConfiguration::wrap_cursor_listener*;
    mir::DefaultServerConfiguration::wrap_display_buffer_compositor_factory*;
    mir::DefaultServerConfiguration::wrap_display_configuration_policy*;
    mir::DefaultServerConfiguration::wrap_shell*;
    mir::DefaultServerConfiguration::wrap_surface_stack*;
    typeinfo?for?mir::DefaultServerConfiguration;
    mir::run_mir*;
    mir::DisplayServer::stop*;
  };
 local: *;
};

MIR_SERVER_0.21 {  # New symbols in Mir 0.21
 global:
  extern "C++" {
    mir::shell::BasicWindowManager::active_display*;
    mir::shell::BasicWindowManager::add_display*;
    mir::shell::BasicWindowManager::add_session*;
    mir::shell::BasicWindowManager::add_surface*;
    mir::shell::BasicWindowManager::BasicWindowManager*;
    mir::shell::BasicWindowManager::find_session*;
    mir::shell::BasicWindowManager::focused_session*;
    mir::shell::BasicWindowManager::focused_surface*;
    mir::shell::BasicWindowManager::focus_next_session*;
    mir::shell::BasicWindowManager::forget*;
    mir::shell::BasicWindowManager::handle_keyboard_event*;
    mir::shell::BasicWindowManager::handle_pointer_event*;
    mir::shell::BasicWindowManager::handle_raise_surface*;
    mir::shell::BasicWindowManager::handle_touch_event*;
    mir::shell::BasicWindowManager::info_for*;
    mir::shell::BasicWindowManager::modify_surface*;
    mir::shell::BasicWindowManager::raise_tree*;
    mir::shell::BasicWindowManager::remove_display*;
    mir::shell::BasicWindowManager::remove_session*;
    mir::shell::BasicWindowManager::remove_surface*;
    mir::shell::BasicWindowManager::set_focus_to*;
    mir::shell::BasicWindowManager::set_surface_attribute*;
    mir::shell::BasicWindowManager::surface_at*;
    typeinfo?for?mir::shell::BasicWindowManager;
    virtual?thunk?to?mir::shell::BasicWindowManager::add_display*;
    virtual?thunk?to?mir::shell::BasicWindowManager::add_session*;
    virtual?thunk?to?mir::shell::BasicWindowManager::add_surface*;
    virtual?thunk?to?mir::shell::BasicWindowManager::handle_keyboard_event*;
    virtual?thunk?to?mir::shell::BasicWindowManager::handle_pointer_event*;
    virtual?thunk?to?mir::shell::BasicWindowManager::handle_raise_surface*;
    virtual?thunk?to?mir::shell::BasicWindowManager::handle_touch_event*;
    virtual?thunk?to?mir::shell::BasicWindowManager::modify_surface*;
    virtual?thunk?to?mir::shell::BasicWindowManager::remove_display*;
    virtual?thunk?to?mir::shell::BasicWindowManager::remove_session*;
    virtual?thunk?to?mir::shell::BasicWindowManager::remove_surface*;
    virtual?thunk?to?mir::shell::BasicWindowManager::set_surface_attribute*;
    VTT?for?mir::shell::BasicWindowManager;
    mir::DefaultServerConfiguration::the_seat*;
    typeinfo?for?mir::shell::CanonicalWindowManagerPolicy;
    vtable?for?mir::shell::CanonicalWindowManagerPolicy;
    VTT?for?mir::shell::CanonicalWindowManagerPolicy;
  };
} MIR_SERVER_0.20;
