reduced compiler load by remembering the line map caches (still has a slight issue on not removing some data due to XEngine's design)