added return values