private System.Collections.IList lazyFindConnectedSets()
		{
			if (m_connectedSets == null)
			{
				//m_connectedSets = new System.Collections.ArrayList();
				
				SupportClass.SetSupport vertexSet = m_graph.vertexSet();
				
				if (vertexSet.Count > 0)
				{
					BreadthFirstIterator i = new BreadthFirstIterator(m_graph, null);
                    i.addTraversalListener(new MyTraversalListener(this));
					
					while (i.MoveNext())
					{
						System.Object generatedAux = i.Current;
					}
				}
			}
			
			return m_connectedSets;
		}
		/// <summary> Returns a set of all vertices that are in the maximally connected
		/// component together with the specified vertex. For more on maximally
		/// connected component, see <a
		/// href="http://www.nist.gov/dads/HTML/maximallyConnectedComponent.html">
		/// http://www.nist.gov/dads/HTML/maximallyConnectedComponent.html</a>.
		/// 
		/// </summary>
		/// <param name="vertex">the vertex for which the connected set to be returned.
		/// 
		/// </param>
		/// <returns> a set of all vertices that are in the maximally connected
		/// component together with the specified vertex.
		/// </returns>
		public virtual SupportClass.SetSupport connectedSetOf(System.Object vertex)
		{
			SupportClass.SetSupport connectedSet = (SupportClass.SetSupport) m_vertexToConnectedSet[vertex];
			
			if (connectedSet == null)
			{
				//UPGRADE_TODO: Class 'java.util.HashSet' was converted to 'SupportClass.HashSetSupport' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javautilHashSet'"
				connectedSet = new SupportClass.HashSetSupport();
				
				BreadthFirstIterator i = new BreadthFirstIterator(m_graph, vertex);
				
				//UPGRADE_TODO: Method 'java.util.Iterator.hasNext' was converted to 'System.Collections.IEnumerator.MoveNext' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javautilIteratorhasNext'"
				while (i.MoveNext())
				{
					//UPGRADE_TODO: Method 'java.util.Iterator.next' was converted to 'System.Collections.IEnumerator.Current' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javautilIteratornext'"
					connectedSet.Add(i.Current);
				}
				
				m_vertexToConnectedSet[vertex] = connectedSet;
			}
			
			return connectedSet;
		}