changes in the system_update function