At generation time is when we should be determining the number of iterations required, so it shouldn't be specified in the function signature but rather calculated by the function itself.