text: Prism.languages.yaml = {
  	'scalar': {
  		pattern: /([\-:]\s*(![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\3[^\r\n]+)*)/,
  		lookbehind: true,
  		alias: 'string'
  	},
  	'comment': /#.*/,
  	'key': {
  		pattern: /(\s*(?:^|[:\-,[{\r\n?])[ \t]*(![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,
  		lookbehind: true,
  		alias: 'atrule'
  	},
  	'directive': {
  		pattern: /(^[ \t]*)%.+/m,
  		lookbehind: true,
  		alias: 'important'
  	},
  	'datetime': {
  		pattern: /([:\-,[{]\s*(![^\s]+)?[ \t]*)(\d{4}-\d\d?-\d\d?([tT]|[ \t]+)\d\d?:\d{2}:\d{2}(\.\d*)?[ \t]*(Z|[-+]\d\d?(:\d{2})?)?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(:\d{2}(\.\d*)?)?)(?=[ \t]*($|,|]|}))/m,
  		lookbehind: true,
  		alias: 'number'
  	},
  	'boolean': {
  		pattern: /([:\-,[{]\s*(![^\s]+)?[ \t]*)(true|false)[ \t]*(?=$|,|]|})/im,
  		lookbehind: true,
  		alias: 'important'
  	},
  	'null': {
  		pattern: /([:\-,[{]\s*(![^\s]+)?[ \t]*)(null|~)[ \t]*(?=$|,|]|})/im,
  		lookbehind: true,
  		alias: 'important'
  	},
  	'string': {
  		pattern: /([:\-,[{]\s*(![^\s]+)?[ \t]*)("(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*')(?=[ \t]*($|,|]|}))/m,
  		lookbehind: true,
  		greedy: true
  	},
  	'number': {
  		pattern: /([:\-,[{]\s*(![^\s]+)?[ \t]*)[+\-]?(0x[\da-f]+|0o[0-7]+|(\d+\.?\d*|\.?\d+)(e[\+\-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,
  		lookbehind: true
  	},
  	'tag': /![^\s]+/,
  	'important': /[&*][\w]+/,
  	'punctuation': /---|[:[\]{}\-,|>?]|\.\.\./
  };
  