update the implicit solver to look more like the other codes