List list = new ArrayList( );
List list = new CachedList( GroupInfo.getCreator( ) );
	RDGroupUtil( InputStream inputStream, CacheProvider cacheProvider )			throws DataException	{		try		{			int size = IOUtil.readInt( inputStream );			this.groups = new ArrayList[size];			for ( int i = 0; i < size; i++ )			{				List list = new ArrayList( );				int asize = IOUtil.readInt( inputStream );				for ( int j = 0; j < asize; j++ )				{					GroupInfo groupInfo = new GroupInfo( );					groupInfo.parent = IOUtil.readInt( inputStream );					groupInfo.firstChild = IOUtil.readInt( inputStream );					list.add( groupInfo );				}				this.groups[i] = list;			}		}		catch ( IOException e )		{			throw new DataException( ResourceConstants.RD_LOAD_ERROR,					e,					"Group Info" );		}				this.cacheProvider = cacheProvider;	}