changed solver a bit