solution 2