copied adapter 3 to 4