add recursive print view