initial version of the driver