input class and recursivity adjusts