some modifications of driver