var CSSProperty = new function () {
  this.propertyDefaultValues = {};
  this.ecmascriptBinding = {};
}

CSSProperty.setPropertyDefaultValue = function (propertyName, defaultValue, ecmascriptBinding) {
  this.propertyDefaultValues[propertyName] = defaultValue;
  this.ecmascriptBinding[propertyName] = ecmascriptBinding;
}

CSSProperty.getPropertyDefaultValue = function (propertyName) {
  return typeof this.propertyDefaultValues[propertyName] != 'undefined' ? this.propertyDefaultValues[propertyName] : '';
}

CSSProperty.getECMAScriptBinding = function (propertyName) {
  return typeof this.ecmascriptBinding[propertyName] != 'undefined' ? this.ecmascriptBinding[propertyName] : '';
}

CSSProperty.setPropertyDefaultValue('azimuth', 'center', 'azimuth');
CSSProperty.setPropertyDefaultValue('background', '', 'background');
CSSProperty.setPropertyDefaultValue('background-attachment', 'scroll', 'backgroundAttachment');
CSSProperty.setPropertyDefaultValue('background-color', 'transparant', 'backgroundColor');
CSSProperty.setPropertyDefaultValue('background-image', 'none', 'backgroundImage');
CSSProperty.setPropertyDefaultValue('background-position', '0% 0%', 'backgroundPosition');
CSSProperty.setPropertyDefaultValue('background-repeat', 'repeat', 'backgroundRepeat');
CSSProperty.setPropertyDefaultValue('border', 'none', 'border');
CSSProperty.setPropertyDefaultValue('border-collapse', 'collapse', 'borderCollapse');
CSSProperty.setPropertyDefaultValue('border-color', 'inherit', 'borderColor');
CSSProperty.setPropertyDefaultValue('border-spacing', '0', 'borderSpacing');
CSSProperty.setPropertyDefaultValue('border-style', 'none', 'borderStyle');
CSSProperty.setPropertyDefaultValue('border-top', 'none', 'borderTop');
CSSProperty.setPropertyDefaultValue('border-right', 'none', 'borderRight');
CSSProperty.setPropertyDefaultValue('border-bottom', 'none', 'borderBottom');
CSSProperty.setPropertyDefaultValue('border-left', 'none', 'borderLeft');
CSSProperty.setPropertyDefaultValue('border-top-color', 'inherit', 'borderTopColor');
CSSProperty.setPropertyDefaultValue('border-right-color', 'inherit', 'borderRightColor');
CSSProperty.setPropertyDefaultValue('border-bottom-color', 'inherit', 'borderBottomColor');
CSSProperty.setPropertyDefaultValue('border-left-color', 'inherit', 'borderLeftColor');
CSSProperty.setPropertyDefaultValue('border-top-style', 'none', 'borderTopStyle');
CSSProperty.setPropertyDefaultValue('border-right-style', 'none', 'borderRightStyle');
CSSProperty.setPropertyDefaultValue('border-bottom-style', 'none', 'borderBottomStyle');
CSSProperty.setPropertyDefaultValue('border-left-style', 'none', 'borderLeftStyle');
CSSProperty.setPropertyDefaultValue('border-top-width', 'none', 'borderTopWidth');
CSSProperty.setPropertyDefaultValue('border-right-width', 'medium', 'borderRightWidth');
CSSProperty.setPropertyDefaultValue('border-bottom-width', 'medium', 'borderBottomWidth');
CSSProperty.setPropertyDefaultValue('border-left-width', 'medium', 'borderLeftWidth');
CSSProperty.setPropertyDefaultValue('border-width', 'inherit', 'borderWidth');
CSSProperty.setPropertyDefaultValue('bottom', 'auto', 'bottom');
CSSProperty.setPropertyDefaultValue('caption-side', 'top', 'captionSide');
CSSProperty.setPropertyDefaultValue('clear', 'none', 'clear');
CSSProperty.setPropertyDefaultValue('clip', 'auto', 'clip');
CSSProperty.setPropertyDefaultValue('color', '', 'color');
CSSProperty.setPropertyDefaultValue('content', '', 'content');
CSSProperty.setPropertyDefaultValue('counter-increment', 'none', 'counterIncrement');
CSSProperty.setPropertyDefaultValue('counter-reset', 'none', 'counterReset');
CSSProperty.setPropertyDefaultValue('cue', '', 'cue');
CSSProperty.setPropertyDefaultValue('cue-after', 'none', 'cueAfter');
CSSProperty.setPropertyDefaultValue('cue-before', 'none', 'cueBefore');
CSSProperty.setPropertyDefaultValue('cursor', 'auto', 'cursor');
CSSProperty.setPropertyDefaultValue('direction', 'ltr', 'direction');
CSSProperty.setPropertyDefaultValue('display', 'inline', 'display');
CSSProperty.setPropertyDefaultValue('elevation', 'level', 'elevation');
CSSProperty.setPropertyDefaultValue('empty-cells', 'show', 'emptyCells');
CSSProperty.setPropertyDefaultValue('float', 'none', 'float');
CSSProperty.setPropertyDefaultValue('font', '', 'font');
CSSProperty.setPropertyDefaultValue('font-family', '', 'fontFamily');
CSSProperty.setPropertyDefaultValue('font-size', 'medium', 'fontSize');
CSSProperty.setPropertyDefaultValue('font-size-adjust', 'none', 'fontSizeAdjust');
CSSProperty.setPropertyDefaultValue('font-stretch', 'normal', 'fontStretch');
CSSProperty.setPropertyDefaultValue('font-style', 'normal', 'fontStyle');
CSSProperty.setPropertyDefaultValue('font-variant', 'normal', 'fontVariant');
CSSProperty.setPropertyDefaultValue('font-weight', 'normal', 'fontWeight');
CSSProperty.setPropertyDefaultValue('height', 'auto', 'height');
CSSProperty.setPropertyDefaultValue('left', 'auto', 'left');
CSSProperty.setPropertyDefaultValue('letter-spacing', 'normal', 'letterSpacing');
CSSProperty.setPropertyDefaultValue('line-height', 'normal', 'lineHeight');
CSSProperty.setPropertyDefaultValue('list-style', '', 'listStyle');
CSSProperty.setPropertyDefaultValue('list-style-image', 'none', 'listStyleImage');
CSSProperty.setPropertyDefaultValue('list-style-position', 'outside', 'listStylePosition');
CSSProperty.setPropertyDefaultValue('list-style-type', 'disc', 'listStyleType');
CSSProperty.setPropertyDefaultValue('margin', '0', 'margin');
CSSProperty.setPropertyDefaultValue('margin-top', '0', 'marginTop');
CSSProperty.setPropertyDefaultValue('margin-right', '0', 'marginRight');
CSSProperty.setPropertyDefaultValue('margin-bottom', '0', 'marginBottom');
CSSProperty.setPropertyDefaultValue('margin-left', '0', 'marginLeft');
CSSProperty.setPropertyDefaultValue('marker-offset', '0', 'markerOffset');
CSSProperty.setPropertyDefaultValue('marks', 'none', 'marks');
CSSProperty.setPropertyDefaultValue('max-height', 'none', 'maxHeight');
CSSProperty.setPropertyDefaultValue('max-width', 'none', 'maxWidth');
CSSProperty.setPropertyDefaultValue('min-height', '0', 'minHeight');
CSSProperty.setPropertyDefaultValue('min-width', '', 'minWidth');
CSSProperty.setPropertyDefaultValue('orphans', '2', 'orphans');
CSSProperty.setPropertyDefaultValue('outline', 'inherit', 'outline');
CSSProperty.setPropertyDefaultValue('outline-color', 'invert', 'outlineColor');
CSSProperty.setPropertyDefaultValue('outline-style', 'none', 'outlineStyle');
CSSProperty.setPropertyDefaultValue('outline-width', 'medium', 'outlineWidth');
CSSProperty.setPropertyDefaultValue('overflow', 'visible', 'overflow');
CSSProperty.setPropertyDefaultValue('opacity', '1', 'opacity');
CSSProperty.setPropertyDefaultValue('padding', '0', 'padding');
CSSProperty.setPropertyDefaultValue('padding-top', '0', 'paddingTop');
CSSProperty.setPropertyDefaultValue('padding-right', '0', 'paddingRight');
CSSProperty.setPropertyDefaultValue('padding-bottom', '0', 'paddingBottom');
CSSProperty.setPropertyDefaultValue('padding-left', '0', 'paddingLeft');
CSSProperty.setPropertyDefaultValue('page', 'auto', 'page');
CSSProperty.setPropertyDefaultValue('page-break-after', 'auto', 'pageBreakAfter');
CSSProperty.setPropertyDefaultValue('page-break-before', 'auto', 'pageBreakBefore');
CSSProperty.setPropertyDefaultValue('page-break-inside', 'auto', 'pageBreakInside');
CSSProperty.setPropertyDefaultValue('pause', 'inherit', 'pause');
CSSProperty.setPropertyDefaultValue('pause-after', 'inherit', 'pauseAfter');
CSSProperty.setPropertyDefaultValue('pause-before', 'inherit', 'pauseBefore');
CSSProperty.setPropertyDefaultValue('pitch', 'medium', 'pitch');
CSSProperty.setPropertyDefaultValue('pitch-range', '50', 'pitchRange');
CSSProperty.setPropertyDefaultValue('pitch-during', 'auto', 'pitchDuring');
CSSProperty.setPropertyDefaultValue('position', 'static', 'position');
CSSProperty.setPropertyDefaultValue('quotes', 'inherit', 'quotes');
CSSProperty.setPropertyDefaultValue('richness', '50', 'richness');
CSSProperty.setPropertyDefaultValue('right', 'auto', 'right');
CSSProperty.setPropertyDefaultValue('size', 'auto', 'size');
CSSProperty.setPropertyDefaultValue('speak', 'normal', 'speak');
CSSProperty.setPropertyDefaultValue('speak-header', 'once', 'speakHeader');
CSSProperty.setPropertyDefaultValue('speak-numeral', 'continuous', 'speakNumeral');
CSSProperty.setPropertyDefaultValue('speak-punctuation', 'none', 'speakPunctuation');
CSSProperty.setPropertyDefaultValue('speech-rate', 'medium', 'speechRate');
CSSProperty.setPropertyDefaultValue('stress', '50', 'stress');
CSSProperty.setPropertyDefaultValue('table-layout', 'auto', 'tableLayout');
CSSProperty.setPropertyDefaultValue('text-align', '', 'textAlign');
CSSProperty.setPropertyDefaultValue('text-decoration', 'none', 'textDecoration');
CSSProperty.setPropertyDefaultValue('text-indent', '0', 'textIndent');
CSSProperty.setPropertyDefaultValue('text-shadow', 'none', 'textShadow');
CSSProperty.setPropertyDefaultValue('text-transform', 'none', 'textTransform');
CSSProperty.setPropertyDefaultValue('top', 'auto', 'top');
CSSProperty.setPropertyDefaultValue('unicode-bidi', 'normal', 'unicodeBidi');
CSSProperty.setPropertyDefaultValue('vertical-align', 'baseline', 'verticalAlign');
CSSProperty.setPropertyDefaultValue('visibility', 'inherit', 'visibility');
CSSProperty.setPropertyDefaultValue('voice-family', 'inherit', 'voiceFamily');
CSSProperty.setPropertyDefaultValue('volume', 'medium', 'volume');
CSSProperty.setPropertyDefaultValue('white-space', 'normal', 'whiteSpace');
CSSProperty.setPropertyDefaultValue('windows', '2', 'windows');
CSSProperty.setPropertyDefaultValue('width', 'auto', 'width');
CSSProperty.setPropertyDefaultValue('word-spacing', 'normal', 'wordSpacing');
CSSProperty.setPropertyDefaultValue('z-index', 'auto', 'zIndex');