Improved data generator