simpler adapt