{
  "env": {
    "node": true
  },
  "rules": {
    "comma-dangle": [ 1, "always-multiline" ],
    "no-cond-assign" : [ 2 ],
    "no-console": [ 2 ],
    "no-constant-condition": [ 2 ],
    "no-control-regex": [ 2 ],
    "no-debugger": [ 2 ],
    "no-dupe-args": [ 2 ],
    "no-dupe-keys": [ 2 ],
    "no-duplicate-case": [ 2 ],
    "no-empty-character-class": [ 2 ],
    "no-empty": [ 2 ],
    "no-ex-assign": [ 2 ],
    "no-extra-boolean-cast": [ 2 ],
    "no-extra-parens": [ 2, "functions" ],
    "no-extra-semi": [ 2 ],
    "no-func-assign": [ 2 ],
    "no-inner-declarations": [ 2 ],
    "no-invalid-regexp": [ 2 ],
    "no-irregular-whitespace": [ 2 ],
    "no-negated-in-lhs": [ 2 ],
    "no-obj-calls": [ 2 ],
    "no-regex-spaces": [ 2 ],
    "no-sparse-arrays": [ 2 ],
    "no-unreachable": [ 2 ],
    "use-isnan": [ 2 ],
    "valid-jsdoc": [ 2 ],
    "valid-typeof" : [ 2 ],
    "no-unexpected-multiline": [ 2 ],

    // best practices
    "accessor-pairs": [ 2 ],
    "block-scoped-var": [ 2 ],
    "complexity": [ 2, 7 ],
    "consistent-return": [ 2 ],
    "curly": [ 2, "all" ],
    "default-case": [ 2 ],
    "dot-location": [ 2, "property" ],
    "dot-notation" : [ 2 ],
    "eqeqeq" : [ 2 ],
    "guard-for-in": [ 2 ],
    "no-alert": [ 2 ],
    "no-caller": [ 2 ],
    "no-div-regex": [ 2 ],
    "no-else-return": [ 2 ],
    "no-empty-label": [ 2 ],
    "no-eq-null": [ 2 ],
    "no-eval": [ 2 ],
    "no-extend-native": [ 2 ],
    "no-extra-bind": [ 2 ],
    "no-fallthrough": [ 2 ],
    "no-floating-decimal": [ 2 ],
    "no-implied-eval": [ 2 ],
    "no-iterator": [ 2 ],
    "no-labels": [ 2 ],
    "no-lone-blocks": [ 2 ],
    "no-loop-func": [ 2 ],
    "no-multi-spaces": [ 2 ],
    "no-multi-str": [ 2 ],
    "no-native-reassign": [ 2 ],
    "no-new": [ 2 ],
    "no-new-func": [ 2 ],
    "no-new-wrappers": [ 2 ],
    "no-octal": [ 2 ],
    "no-octal-escape": [ 2 ],
    "no-param-reassign": [ 0 ],
    "no-process-env" : [ 0 ],
    "no-proto": [ 2 ],
    "no-redeclare": [ 2 ],
    "no-return-assign": [ 2 ],
    "no-script-url": [ 2 ],
    "no-self-compare": [ 2 ],
    "no-sequences": [ 2 ],
    "no-throw-literal": [ 2 ],
    "no-unused-expressions": [ 2 ],
    "no-void": [ 1 ],
    "no-warning-comments": [ 0, { "terms": [ "todo", "fixme" ], "location": "start" } ],
    "no-with": [ 2 ],
    "radix": [ 2 ],
    "vars-on-top": [ 0 ],
    "wrap-iife": [ 2 ],
    "yoda": [ 2, "never" ],

    // strict mode
    "strict": [ 1, "never" ],

    // variables
    "no-catch-shadow": [ 2 ],
    "no-delete-var": [ 2 ],
    "no-label-var": [ 2 ],
    "no-shadow": [ 2 ],
    "no-shadow-restricted-names": [ 2 ],
    "no-undef": [ 2 ],
    "no-undef-init": [ 2 ],
    "no-undefined": [ 0 ],
    "no-unused-vars": [ 2, {"args": "none"} ],
    "no-use-before-define": [ 2 ],

    // node environment
    "handle-callback-err": [ 2 ],
    "no-mixed-requires": [ 2 ],
    "no-new-require": [ 2 ],
    "no-path-concat": [ 2 ],
    "no-process-exit": [ 2 ],
    "no-restricted-modules": [ 2 ],
    "no-sync": [ 2 ],

    // style
    "array-bracket-spacing": [ 0, "always" ],
    "brace-style": [ 2, "1tbs" ],
    "camelcase": [ 2, { "properties" : "never" } ],
    "comma-spacing": [ 2, { "before": false, "after": true } ],
    "comma-style": [ 2, "last" ],
    "computed-property-spacing": [ 0, "always" ],
    "consistent-this": [ 2, "self" ],
    "eol-last": [ 2 ],
    "func-style": [ 2, "declaration" ],
    "indent": [2, 2, {"SwitchCase": 1}],
    "key-spacing": [ 1, { "beforeColon": true, "afterColon": true }],
    "linebreak-style": [ 2 ],
    "lines-around-comment": [ 0 ],
    "max-nested-callbacks": [ 2, 3 ],
    "new-cap": 0,
    "new-parens": [ 2 ],
    "newline-after-var": [ 0 ],
    "no-array-constructor": [ 2 ],
    "no-continue": [ 2 ],
    "no-inline-comments": [ 0 ],
    "no-lonely-if": [ 2 ],
    "no-mixed-spaces-and-tabs": [ 2 ],
    "no-multiple-empty-lines": [ 2 ],
    "no-nested-ternary": [ 2 ],
    "no-new-object": [ 2 ],
    "no-spaced-func": [ 2 ],
    "no-ternary": [ 0 ],
    "no-trailing-spaces": [ 2 ],
    "no-underscore-dangle": [ 0 ],
    "no-unneeded-ternary": [ 2 ],
    "object-curly-spacing": [ 2, "always" ],
    "one-var": [ 2, "never" ],
    "operator-assignment": [2, "always"],
    "operator-linebreak": [2, "after"],
    "padded-blocks": [ 0, "always" ],
    "quote-props": [ 2, "as-needed" ],
    "quotes": [ 2, "single", "avoid-escape" ],
    "semi": [ 2, "always" ],
    "semi-spacing": [ 2, {"before": false, "after": true}],
    "space-after-keywords": [ 2, "always" ],
    "space-before-blocks": [ 2, "always" ],
    "space-before-function-paren": [ 2, "never" ],
    "space-in-parens": [ 2, "never" ],
    "space-infix-ops": [ 2 ],
    "space-return-throw-case": [ 2 ],
    "spaced-comment": [ 2 ],
    "wrap-regex": [ 2 ],

    // legacy
    "max-depth": [ 2, 2 ],
    "max-len": [ 0, 100 ],
    "max-params": [ 0, 4 ],
    "max-statements": [ 2, 15 ],
    "no-bitwise": [ 2 ],
  }
}