It needs to be run on the every invocation of this function, save the first.