add server functional