add ua detect