for solution