Can a region output a sparse array?

I have written my own region (as explained in another post) and I wanted it to output a sparse array of column indices. However this does not seem to be possible?

The problem is that wraps all outputs as an object of the class DictReadOnlyWrapper at line 186:

186 return self.compute(inputs, DictReadOnlyWrapper(outputs))     

As a consequence of this you do not seem to be able to change the shape of the output array after it is first assigned.

Is my reading of the situation correct or is there a way to get a sparse output from a region? (Assuming the number of entries in such an array varies.)

For reference, just in case my code is in error, I tried to assign a sparse array to an output in my region as follows: