updated version of assignment