Why do you need to store the full stack depth rather than simply flagging the fact that we've started a report? It sounds a bit complicated and I think we should try and keep this code as simple as possible.