removed user data struct. this will be handled in c++ class