adapted versions