Better parallel version