modifying structure starting with client