<commit_before>(function($) {
	var props = "Color X Y Blur".split(' '),
		support = $.support,
		rWhitespace = /\s/,
		div = document.createElement('div'),
		divStyle = div.style;

	support.textShadow = (divStyle.textShadow === '');
	div = null;

	if ($.cssHooks && support.textShadow) {
		$.each(props, function(i, suffix) {
			var hook = 'textShadow' + suffix;
			
			$.cssHooks[hook] = {
				get: function(elem, computed, extra) {
					return (function(elem, pos) {
						var shadow = $.css(elem, 'textShadow'),
							color = $.color.normalize(shadow),
							ret;

						if (pos === 0) {
							ret = 'rgb'
									+ (color.alpha ? 'a' : '') + '('
									+ color.r + ', '
									+ color.g + ', '
									+ color.b
									+ (color.alpha ? ', ' + color.alpha : '')
									+ ')';
						}
						else {
							ret = $.trim(shadow.replace(color.source, '')).split(rWhitespace)[pos - 1];
						}
						
						return ret;
					})(elem, i);
				},
				set: function(elem, value) {
					elem.style.textShadow = (function(string, value, index) {
						var color_part = $.style(elem, 'textShadowColor'),
							parts = string.replace(color_part, '').split(rWhitespace),
							ret;
						
						if (index === 0) {
							color_part = value;
						} else {
							parts[index] = value;
						}
						
						return color_part + parts.join(' ');
					})($.css(elem, 'textShadow'), value, i);
				}
			};
			
			if (i !== 0) {
				$.fx.step[hook] = function(fx) {
					$.cssHooks[hook].set(fx.elem, fx.now + fx.unit);
				};<commit_msg>Save strings in vars for better minification. Set $.cssNumber where appropriate. Let go of divStyle for IE memory leaks.<commit_after>(function($) {
	var propStr = 'textShadow',
		colorStr = 'Color',
		props = (colorStr + " X Y Blur").split(' '),
		support = $.support,
		rWhitespace = /\s/,
		div = document.createElement('div'),
		divStyle = div.style;

	support.textShadow = (divStyle.textShadow === '');
	div = divStyle = null;

	if ($.cssHooks && support.textShadow) {
		$.each(props, function(i, suffix) {
			var hook = propStr + suffix;
			
			$.cssHooks[hook] = {
				get: function(elem, computed, extra) {
					return (function(elem, pos, prop) {
						var shadow = $.css(elem, propStr),
							color = $.color.normalize(shadow),
							ret;
							
						console.log('getting', prop)

						if (prop === colorStr) {
							ret = 'rgb'
									+ (color.alpha ? 'a' : '') + '('
									+ color.r + ', '
									+ color.g + ', '
									+ color.b
									+ (color.alpha ? ', ' + color.alpha : '')
									+ ')';
						}
						else {
							ret = $.trim(shadow.replace(color.source, '')).split(rWhitespace)[pos - 1];
						}
						
						return ret;
					})(elem, i, suffix);
				},
				set: function(elem, value) {
					elem.style.textShadow = (function(string, value, index) {
						var color_part = $.style(elem, propStr + colorStr),
							parts = string.replace(color_part, '').split(rWhitespace),
							ret;
						
						if (index === 0) {
							color_part = value;
						} else {
							parts[index] = value;
						}
						
						return color_part + parts.join(' ');
					})($.css(elem, propStr), value, i);
				}
			};
			
			if (suffix !== colorStr) {
				$.cssNumber[hook] = true;
				
				$.fx.step[hook] = function(fx) {
					$.cssHooks[hook].set(fx.elem, fx.now + fx.unit);
				};
{'fraction_non_alphanumeric': 0.18312387791741472, 'fraction_numerical': 0.0017953321364452424, 'mean_word_length': 2.1039925719591457, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '710320', 'n_tokens_mistral': 1608, 'n_tokens_neox': 1115, 'n_words': 236}