code: function CheckTypes(name, value, type, required = true) {
  		let THS = this, iss; 
  		if (!!type) {
  			if (ISS(type)=='string') type = [type];
  			if (!!required || !UoN(value)) {
  				iss = ISS(value);
  				if (!type.has(iss)) {
  					THS.ThrowType(name, type, value, iss);
  				}
  			}
  		}
  	}
docs: **Checks** the Property against a _specified_ `type`
  
  @param {String} name The `name` of the Property
  @param {*} value The Property `value`
  @param {String} type The `type` the Property should be
  @param {Boolean} [required=true] `true`, if Property **must** be defined
  @private