made set handle 304 correctly
set_all function draft done