start of surface message routing