@SuppressWarnings("rawtypes")
	protected Object msdpStringify(Object o)
	{
		if(o instanceof StringBuilder)
			return ((StringBuilder)o).toString();
		else
		if(o instanceof Map)
		{
			final Map<String,Object> newO=new HashMap<String,Object>();
			for(final Object key : ((Map)o).keySet())
			{
				if(key instanceof StringBuilder)
					newO.put(((StringBuilder)key).toString().toUpperCase(), msdpStringify(((Map)o).get(key)));
			}
			return newO;
		}
		else
		if(o instanceof List)
		{
			final List<Object> newO=new LinkedList<Object>();
			for(final Object subO : (List)o)
				newO.add(msdpStringify(subO));
			return newO;
		}
		else
			return o;
	}

	@SuppressWarnings({ "unchecked", "rawtypes" }