Let's leave it alone for now. Somebody else can optimize it if it's a problem.

Incidentally, I wouldn't worry about local var access. The first(?) 10 local symbols in a function are optimized at compile time, via the so-called "fast locals" mechanism, into C array accesses. The only time to even consider that as a possibility is when you start piling dots onto things: each dot is a hash table access.