function(obj, prop, desc)
	{
		if (o.typeOf(desc) === 'object') {
			defineGSetter.call(obj, prop, desc, 'get');

			if (!Object.defineProperty) {
				// additionally call it for setter
				defineGSetter.call(obj, prop, desc, 'set');
			}
		}
	}
function(obj, prop, desc)
	{
		if (o.typeOf(desc) === 'object') {
			defineGSetter.call(obj, prop, desc, 'get');

			if (!Object.defineProperty) {
				
				defineGSetter.call(obj, prop, desc, 'set');
			}
		}
	}
function ( obj , prop , desc ) { if ( o . typeOf ( desc ) === 'object' ) { defineGSetter . call ( obj , prop , desc , 'get' ) ; if ( ! Object . defineProperty ) { // additionally call it for setter defineGSetter . call ( obj , prop , desc , 'set' ) ; } } }
Defines property with specified descriptor on an object

@method defineProperty
@static
@param {Object} obj Object to add property to
@param {String} prop Property name
@param {Object} desc Set of key-value pairs defining descriptor for the property
Defines property with specified descriptor on an object