During working on my UIBezierPath reimplementation to enable checking for crossing paths I encountered a bug. The bug was really hard to debug. It happened randomly. App was generally unstable, it was crashing randomly and in random functions, both mine and Apple's dealloc, retain, etc. I was quite happy that