Hi Brian.
One would normally split the computation of an index, and its use in an array, into 2 separate expressions. This is what a compiler has to do anyway. And the code is easier to understand when you come to revise it.
But I might be able to persuade o2 to accept this kind of nesting, without complaining about 'complexity'.