C++ ua-parser implementation