working
fully functional dll