add data, also attempts to parallelize