void verify( Node end )
	{
		Node temp = start;
		int pos = graphOffset;
		int compared = 0;
		while ( temp != null && compared < length )
		{
			assert temp != end;
			Arc a = temp.pickOutgoingArc( version );
			if ( a.dataLen() < pos )
			{
				pos -= a.dataLen();
			}
			else if ( a.dataLen() == pos )
			{
				pos = 0;
				temp = a.to;
			}
			else if ( a.dataLen() == 0 )
			{
				temp = a.to;
				continue;
			}
			else 
			{
				char[] arcData = a.getData();
				while ( compared < length && pos < a.dataLen() )
				{
					assert arcData[pos++] == data[compared++];
					if ( pos == a.dataLen() )
					{
						pos = 0;
						break;
					}
				}
			}
			temp = a.to;
		}
	}