wrong methods structure that lead to recursing calls