tried to use PLINQ