only when not parsing should we call garbage collector!