function lister(obj)
	{
	function isNumeric(value)
		{
		for(var i = 0; i < value.length; i++)
			{
			if(value.charCodeAt(i) < 48 || value.charCodeAt(i) > 57)
				{
				return false;
				}
			}
		return false;
		}
	if(typeof obj != 'object')
		{
		return;
		}
	try
		{
		objName = obj.toString();
		}
	catch(e)
		{
		return;
		}
	var methods = new Array();
	var properties = new Array();
	for(var i in obj)
		{
		try
			{
			if(typeof obj[i] == 'function')
				{
				methods[methods.length] = i;
				continue;
				}
			else
				{
				try
					{
					properties[properties.length] = new Array(i, obj[i]);
					}
				catch (e)
					{
					/* alert(e); */
					}
				}
			}
		catch(e)
			{
			/* alert(e) */
			}
		}
	methods.sort();
	properties.sort();
	methodsString = '';
	propertiesString = '';
	for(var i in methods)
		{
		methodsString += objName + '.' + methods[i] + '()\n';
		}
	for(var i in properties)
		{
		if(isNumeric(properties[i][0]) == false)
			{
			propertiesString += objName + '.' + properties[i][0] + ' = ' + properties[i][1] + '\n';
			}
		}
	var w = window.open("", "w", "width=560,height=450,resizable=yes,scrollbars=yes");
	w.document.write("<h1>Methods</h1><pre>" + methodsString + "</pre><h1>Properties</h1><pre>" + propertiesString + "</pre>");
	w.document.close();
	}
