no memory leaks in first pass.