also, is it possible this could be private and called by compile()?