code: function (dateTimeString, timeSettings) {
  		// The idea is to get the number separator occurrences in datetime and the time format requested (since time has
  		// fewer unknowns, mostly numbers and am/pm). We will use the time pattern to split.
  		var separator = computeEffectiveSetting(timeSettings, 'separator'),
  			format = computeEffectiveSetting(timeSettings, 'timeFormat'),
  			timeParts = format.split(separator), // how many occurrences of separator may be in our format?
  			timePartsLen = timeParts.length,
  			allParts = dateTimeString.split(separator),
  			allPartsLen = allParts.length;
  
  		if (allPartsLen > 1) {
  			return {
  				dateString: allParts.splice(0, allPartsLen - timePartsLen).join(separator),
  				timeString: allParts.splice(0, timePartsLen).join(separator)
  			};
  		}
  
  		return {
  			dateString: dateTimeString,
  			timeString: ''
  		};
  	}
docs: /*
  Splits datetime string into date and time substrings.
  Throws exception when date can't be parsed
  Returns {dateString: dateString, timeString: timeString}