added sequential message processing