def _getSortedString(o):
	"""
	Returns a string describing o, sorting the contents (case-insensitive on keys) if o is a dict.
	"""
	# todo: replace this with something like pprint on Python upgrade
	# We assume here that any container type is either list or tuple which may not always hold
	if isinstance(o, (dict)):
		pkeys = sorted(o.keys(), key=_lowercaseToStr)
		l = []
		for k in pkeys:
			l.append(str(k) + ":" + _getSortedString(o[k]))
		return "{" + join(l, ",") + "}"
	else:
		return str(o)