added a faster, but a bit sloppy data source