This looks like the ideal case to use @arrbee's new array type.