reimplement server messages