sync
driver class change
with patrick's changes