added return support