added threading yet to see benchmarks