type hbmsvmanager_app, domain, coredomain;

app_domain(hbmsvmanager_app);
hal_client_domain(hbmsvmanager_app, hal_light)

# Standard system services
allow hbmsvmanager_app app_api_service:service_manager find;

allow hbmsvmanager_app hal_pixel_display_service:service_manager find;
