changed requirement structure