recursive toString() methods invocation fix