function VPA_singleton ()
{
	this.objects=new Object;
	if (!window.__VPA_singleton) {
		__VPA_singleton=this;
	}
	__VPA_singleton.add=function(name,obj) {
		__VPA_singleton.objects[name]=obj;
	}
	__VPA_singleton.get=function (name) {
		return __VPA_singleton.objects[name];
	}
	
	__VPA_singleton.search=function (tag_object) {
		var current=tag_object;
		while (!current['id'])
		{
			current=current.parentNode;
		}
		return __VPA_singleton.objects[current.id];
	}
	return __VPA_singleton;
}

VPA_singleton.prototype.toString=function() { return 'Object VPA_singleton';};
