private void parseUrlEncodedKeypairs(String parts) throws HTTPException
	{
		try
		{
			final String[] urlParmArray = parts.split("&");
			final Map<String,String> urlParmsFound=new HashMap<String,String>();
			for(final String urlParm : urlParmArray)
			{
				final int equalDex = urlParm.indexOf('=');
				final String key;
				final String value;
				if(equalDex < 0)
				{
					key=URLDecoder.decode(urlParm,"UTF-8");
					value="";
				}
				else
				{
					key=URLDecoder.decode(urlParm.substring(0,equalDex),"UTF-8");
					value=URLDecoder.decode(urlParm.substring(equalDex+1),"UTF-8");
				}
				if(urlParmsFound.containsKey(key) && !overwriteDups)
				{
					int x=1;
					while(urlParmsFound.containsKey(key+x))
						x++;
					urlParmsFound.put(key+x, value);
				}
				else
				{
					urlParmsFound.put(key, value);
				}
			}
			for(final String key : urlParmsFound.keySet())
				addUrlParameter(key,urlParmsFound.get(key));
		}
		catch(final UnsupportedEncodingException ex)
		{
			throw HTTPException.standardException(HTTPStatus.S400_BAD_REQUEST);
		}
	}