handled Infinite recurssion case