adapted to feedback