Added first solver and helper methods