add server detection