methods completes, compiles and crashes, check traverse