parallel processing added