private static JsonObject getObjectAfterBrace( TokensInFileParser tifp) 
		throws Exception
	{
		JsonObject json = new JsonObject();
		
		boolean keepParsing = true;
		
		while(keepParsing)
		{
			String key = tifp.nextToken().replaceAll("\"", "");
			
			if( key.equals("}"))
			{
				keepParsing = false;
			}
			else if( key.equals("children"))
			{
				boolean addingChildren = true;
				
				json.children = new ArrayList<JsonObject>();
				
				while( addingChildren)
				{
					String nextToken = tifp.nextToken();
					
					if( nextToken.equals("["))
						nextToken = tifp.nextToken();
					
					if( nextToken.equals("]"))
					{
						addingChildren = false;
					}
					else
					{
						if( ! nextToken.equals("{"))
							throw new Exception("First token should be { " + nextToken );
				
						json.children.add(getObjectAfterBrace(tifp));
					}
				
				}
			}
			else
			{
				String value = tifp.nextToken().replaceAll("\"", "");
				json.nameValuePairMap.put(key, value);
			}
		}
		
		return json;
	}