code: function(sSkeleton, oAvailableFormats, sCalendarType, vDiff) {
  			var vPattern, aPatterns, oIntervalFormats;
  
  			if (!vDiff) {
  				// the call is from getCustomDateTimePattern
  				vPattern = oAvailableFormats[sSkeleton];
  			} else if (typeof vDiff === "string") {
  				// vDiff is given as a symbol
  				if (vDiff == "j" || vDiff == "J") {
  					vDiff = this.getPreferredHourSymbol();
  				}
  				oIntervalFormats = oAvailableFormats[sSkeleton];
  				vPattern = oIntervalFormats && oIntervalFormats[vDiff];
  			}
  
  			if (vPattern) {
  				if (typeof vPattern === "object") {
  					aPatterns = Object.keys(vPattern).map(function(sKey) {
  						return vPattern[sKey];
  					});
  				} else {
  					return vPattern;
  				}
  			}
  
  			if (!aPatterns) {
  				aPatterns = this._createFormatPattern(sSkeleton, oAvailableFormats, sCalendarType, vDiff);
  			}
  
  			if (aPatterns && aPatterns.length === 1) {
  				return aPatterns[0];
  			}
  
  			return aPatterns;
  		}
docs: /* Helper functions for skeleton pattern processing