The budgets will have already been fetched at this point, so you don't need to do it again. Plus, the loop right after this call will likely be executed before the data has returned from the server.

So I'd just remove that method, unless it doesn't work without it (in which case, I'd say we have something else broken).