This is a text description of cubcrspo.gif. This figure illustrates the parent, cubeCursor, with its child Cursor objects layered horizontally. The top layer is the slowest varying output. Since it has only one channel value, the extent of that value in cubeCursor is one. The layer below that has three time values so the extent of the values is three. In the next layer down, two customer values are specified by the first time value so the extent of the customer ValueCursor is two for that time value. The second time value specifies two customer values so extent of the customer ValueCursor is two for that time value. The third time value specifies three customer values so the extent of the customer ValueCursor is three for that time value. In the last layer, the first customer value for the first time period specifies three product values so the extent of the product ValueCursor for that customer value is three. The second customer value for the first time period specifies one product value so the extent of the product ValueCursor for that customer value is one. The first customer value for the second time period specifies three product values so the extent of the product ValueCursor for that customer value is three. The second customer value for the second time period specifies two product values so the extent of the product ValueCursor for that customer value is two. The first customer value for the third time period specifies two product values so the extent of the product ValueCursor for that customer value is two. The second customer value for the third time period specifies two product values so the extent of the product ValueCursor for that customer value is two. The third customer value for the third time period also specifies two product values so the extent of the product ValueCursor for that customer value is two.