tested pre-split using multithread