var extensions = {
  '.cjsx': 'node-cjsx/register',
  '.co': 'coco',
  '.coffee': {
    module: 'coffee-script/register',
    legacyModules: ['coffee-script']
  },
  '.coffee.md': {
    module: 'coffee-script/register',
    legacyModules: ['coffee-script']
  },
  '.csv': 'require-csv',
  '.iced': {
    module: 'iced-coffee-script/register',
    legacyModules: ['iced-coffee-script']
  },
  '.iced.md': {
    module: 'iced-coffee-script/register',
    legacyModules: ['iced-coffee-script']
  },
  '.ini': 'require-ini',
  '.js': null,
  '.json': null,
  '.json5': 'json5/lib/require',
  '.jsx': {
    module: 'node-jsx',
    options: {
      extension: '.jsx',
      harmony: true
    }
  },
  '.litcoffee': 'coffee-script/register', // TODO: litcoffee wasn't available in old coffee-script, correct?
  '.liticed': 'iced-coffee-script/register',
  '.ls': 'LiveScript',
  '.toml': 'toml-require',
  '.ts': 'typescript-require',
  '.xml': 'require-xml',
  '.yaml': 'require-yaml',
  '.yml': 'require-yaml'
};

var register = {
  'node-jsx': function (module, options) {
    module.install(options);
  },
  'toml-require': function (module) {
    module.install();
  }
};

var jsVariantExtensions = [
  '.js',
  '.cjsx',
  '.co',
  '.coffee',
  '.coffee.md',
  '.iced',
  '.iced.md',
  '.jsx',
  '.litcoffee',
  '.liticed',
  '.ls',
  '.ts'
];

module.exports = {
  extensions: extensions,
  register: register,
  jsVariants: jsVariantExtensions.reduce(function (result, ext) {
    result[ext] = extensions[ext];
    return result;
  }, {})
};

@@ -74,30 +74,16 @@
 coffee':
- %7B%0A    module:
  'coffee
@@ -107,144 +107,46 @@
 ,%0A  
-  legacyModules: %5B'coffee-script'%5D%0A  %7D,%0A  '.coffee.md': %7B%0A    module: 'coffee-script/register',%0A    legacyModules: %5B'coffee-script'%5D%0A  %7D
+'.coffee.md': 'coffee-script/register'
 ,%0A  
@@ -178,30 +178,16 @@
 '.iced':
- %7B%0A    module:
  'iced-c
@@ -216,157 +216,49 @@
 ,%0A  
-  legacyModules: %5B'iced-coffee-script'%5D%0A  %7D,%0A  '.iced.md': %7B%0A    module: 'iced-coffee-script/register',%0A    legacyModules: %5B'iced-coffee-script'%5D%0A  %7D
+'.iced.md': 'iced-coffee-script/register'
 ,%0A  
@@ -359,103 +359,18 @@
 x': 
-%7B%0A    module: 'node-jsx',%0A    options: %7B%0A      extension: '.jsx',%0A      harmony: true%0A    %7D%0A  %7D
+'node-jsx'
 ,%0A  
@@ -841,24 +841,265 @@
 ();%0A  %7D%0A%7D;%0A%0A
+var legacyModules = %7B%0A  '.coffee': 'coffee-script',%0A  '.coffee.md': 'coffee-script',%0A  '.iced': 'iced-coffee-script',%0A  '.iced.md': 'iced-coffee-script'%0A%7D;%0A%0Avar configurations = %7B%0A  '.jsx': %7B%0A    extension: '.jsx',%0A    harmony: true%0A  %7D%0A%7D;%0A%0A
 var jsVarian
@@ -1303,16 +1303,75 @@
 nsions,%0A
+  legacy: legacyModules,%0A  configurations: configurations,%0A
   regist

add legacy and configurations objects