solver update