if (FJ === undefined) alert('fj.js must be included first');
else {
	FJ.Modules.InstanceRegistration = {
		
		__init_ir: function() {
			this._register_instance();
		},
	
		_register_instance: function () {
			// if InstanceRegistration hasn't been implemented correctly
			if (this.CLASSNAME === undefined) return; 
		
			if (!FJ[this.CLASSNAME].instances) FJ[this.CLASSNAME].instances = [];
			FJ[this.CLASSNAME].instances.push(this);
		},
	
		_unregister_instance: function () {
			// if InstanceRegistration hasn't been implemented correctly
			if (this.CLASSNAME === undefined) return; 
		
			if (!FJ[this.CLASSNAME].instances) FJ[this.CLASSNAME].instances = [];
			FJ[this.CLASSNAME].instances.splice(FJ[this.CLASSNAME].instances.indexOf(this), 1);
		}
	
	}
}