Try recurtion function