modefied datacontroller.v