much more flexible TBB backend