barrier solver seems to work