new ver in recursive
new ver in recursive