]> source.dussan.org Git - svg.js.git/commitdiff
Merge branch '790-color-spaces' into 791-random-colors 939/head
authorUlrich-Matthias Schäfer <ulima.ums@googlemail.com>
Sat, 1 Dec 2018 14:29:12 +0000 (15:29 +0100)
committerUlrich-Matthias Schäfer <ulima.ums@googlemail.com>
Sat, 1 Dec 2018 14:29:12 +0000 (15:29 +0100)
1  2 
package-lock.json
package.json
src/types/Color.js

index 094b6798f568b1ef3fe2b8ca30ac8cd7d035e209,d51e3ba2f1e44cd5b22e0a09b50c245163c69cfc..4e58a0718631858934b3607fc003f6547e8f695d
          "resolve": "^1.3.2",
          "semver": "^5.4.1",
          "source-map": "^0.5.0"
 -        "lodash": {
 -          "version": "4.17.11",
 -          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
 -          "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
 -          "dev": true
 -        },
+       },
+       "dependencies": {
+         "debug": {
+           "version": "3.2.6",
+           "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+           "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+           "dev": true,
+           "requires": {
+             "ms": "^2.1.1"
+           }
+         },
+         "ms": {
+           "version": "2.1.1",
+           "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+           "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+           "dev": true
+         },
+         "semver": {
+           "version": "5.6.0",
+           "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
+           "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
+           "dev": true
+         }
        }
      },
      "@babel/generator": {
        "dev": true
      },
      "@types/node": {
-       "version": "10.12.11",
-       "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.11.tgz",
-       "integrity": "sha512-3iIOhNiPGTdcUNVCv9e5G7GotfvJJe2pc9w2UgDXlUwnxSZ3RgcUocIU+xYm+rTU54jIKih998QE4dMOyMN1NQ==",
+       "version": "10.12.2",
+       "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.2.tgz",
+       "integrity": "sha512-53ElVDSnZeFUUFIYzI8WLQ25IhWzb6vbddNp8UHlXQyU0ET2RhV5zg0NfubzU7iNMh5bBXb0htCzfvrSVNgzaQ==",
        "dev": true
      },
 +    "@webassemblyjs/ast": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz",
 +      "integrity": "sha512-ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/helper-module-context": "1.7.11",
 +        "@webassemblyjs/helper-wasm-bytecode": "1.7.11",
 +        "@webassemblyjs/wast-parser": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/floating-point-hex-parser": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz",
 +      "integrity": "sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-api-error": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz",
 +      "integrity": "sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-buffer": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz",
 +      "integrity": "sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-code-frame": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz",
 +      "integrity": "sha512-T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/wast-printer": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/helper-fsm": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz",
 +      "integrity": "sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-module-context": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz",
 +      "integrity": "sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-wasm-bytecode": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz",
 +      "integrity": "sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/helper-wasm-section": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz",
 +      "integrity": "sha512-8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-buffer": "1.7.11",
 +        "@webassemblyjs/helper-wasm-bytecode": "1.7.11",
 +        "@webassemblyjs/wasm-gen": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/ieee754": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz",
 +      "integrity": "sha512-Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==",
 +      "dev": true,
 +      "requires": {
 +        "@xtuc/ieee754": "^1.2.0"
 +      }
 +    },
 +    "@webassemblyjs/leb128": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.11.tgz",
 +      "integrity": "sha512-vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==",
 +      "dev": true,
 +      "requires": {
 +        "@xtuc/long": "4.2.1"
 +      }
 +    },
 +    "@webassemblyjs/utf8": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.11.tgz",
 +      "integrity": "sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==",
 +      "dev": true
 +    },
 +    "@webassemblyjs/wasm-edit": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz",
 +      "integrity": "sha512-FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-buffer": "1.7.11",
 +        "@webassemblyjs/helper-wasm-bytecode": "1.7.11",
 +        "@webassemblyjs/helper-wasm-section": "1.7.11",
 +        "@webassemblyjs/wasm-gen": "1.7.11",
 +        "@webassemblyjs/wasm-opt": "1.7.11",
 +        "@webassemblyjs/wasm-parser": "1.7.11",
 +        "@webassemblyjs/wast-printer": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/wasm-gen": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz",
 +      "integrity": "sha512-U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-wasm-bytecode": "1.7.11",
 +        "@webassemblyjs/ieee754": "1.7.11",
 +        "@webassemblyjs/leb128": "1.7.11",
 +        "@webassemblyjs/utf8": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/wasm-opt": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz",
 +      "integrity": "sha512-XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-buffer": "1.7.11",
 +        "@webassemblyjs/wasm-gen": "1.7.11",
 +        "@webassemblyjs/wasm-parser": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/wasm-parser": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz",
 +      "integrity": "sha512-6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-api-error": "1.7.11",
 +        "@webassemblyjs/helper-wasm-bytecode": "1.7.11",
 +        "@webassemblyjs/ieee754": "1.7.11",
 +        "@webassemblyjs/leb128": "1.7.11",
 +        "@webassemblyjs/utf8": "1.7.11"
 +      }
 +    },
 +    "@webassemblyjs/wast-parser": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz",
 +      "integrity": "sha512-lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/floating-point-hex-parser": "1.7.11",
 +        "@webassemblyjs/helper-api-error": "1.7.11",
 +        "@webassemblyjs/helper-code-frame": "1.7.11",
 +        "@webassemblyjs/helper-fsm": "1.7.11",
 +        "@xtuc/long": "4.2.1"
 +      }
 +    },
 +    "@webassemblyjs/wast-printer": {
 +      "version": "1.7.11",
 +      "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz",
 +      "integrity": "sha512-m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/wast-parser": "1.7.11",
 +        "@xtuc/long": "4.2.1"
 +      }
 +    },
 +    "@xtuc/ieee754": {
 +      "version": "1.2.0",
 +      "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
 +      "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
 +      "dev": true
 +    },
 +    "@xtuc/long": {
 +      "version": "4.2.1",
 +      "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz",
 +      "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==",
 +      "dev": true
 +    },
      "abbrev": {
        "version": "1.0.9",
        "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz",
        }
      },
      "acorn": {
-       "version": "6.0.4",
-       "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.4.tgz",
-       "integrity": "sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==",
+       "version": "5.7.3",
+       "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
+       "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
        "dev": true
      },
-       },
-       "dependencies": {
-         "acorn": {
-           "version": "5.7.3",
-           "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
-           "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
-           "dev": true
-         }
 +    "acorn-dynamic-import": {
 +      "version": "3.0.0",
 +      "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz",
 +      "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==",
 +      "dev": true,
 +      "requires": {
 +        "acorn": "^5.0.0"
 +      }
 +    },
      "acorn-jsx": {
-       "version": "5.0.1",
-       "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz",
-       "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==",
+       "version": "5.0.0",
+       "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.0.tgz",
+       "integrity": "sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg==",
+       "dev": true
+     },
+     "adm-zip": {
+       "version": "0.4.11",
+       "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz",
+       "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==",
        "dev": true
      },
      "after": {
          "fast-json-stable-stringify": "^2.0.0",
          "json-schema-traverse": "^0.4.1",
          "uri-js": "^4.2.2"
+       },
+       "dependencies": {
+         "fast-deep-equal": {
+           "version": "2.0.1",
+           "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
+           "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=",
+           "dev": true
+         },
+         "json-schema-traverse": {
+           "version": "0.4.1",
+           "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+           "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+           "dev": true
+         }
        }
      },
 +    "ajv-errors": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz",
 +      "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=",
 +      "dev": true
 +    },
 +    "ajv-keywords": {
 +      "version": "3.2.0",
 +      "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz",
 +      "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=",
 +      "dev": true
 +    },
      "amdefine": {
        "version": "1.0.1",
        "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
        "dev": true,
        "requires": {
          "string-width": "^2.0.0"
+       },
+       "dependencies": {
+         "ansi-regex": {
+           "version": "3.0.0",
+           "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
+           "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
+           "dev": true
+         },
+         "is-fullwidth-code-point": {
+           "version": "2.0.0",
+           "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+           "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+           "dev": true
+         },
+         "string-width": {
+           "version": "2.1.1",
+           "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
+           "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
+           "dev": true,
+           "requires": {
+             "is-fullwidth-code-point": "^2.0.0",
+             "strip-ansi": "^4.0.0"
+           }
+         },
+         "strip-ansi": {
+           "version": "4.0.0",
+           "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
+           "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
+           "dev": true,
+           "requires": {
+             "ansi-regex": "^3.0.0"
+           }
+         }
        }
      },
 +    "ansi-colors": {
 +      "version": "3.2.1",
 +      "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.1.tgz",
 +      "integrity": "sha512-Xt+zb6nqgvV9SWAVp0EG3lRsHcbq5DDgqjPPz6pwgtj6RKz65zGXMNa82oJfOSBA/to6GmRP7Dr+6o+kbApTzQ==",
 +      "dev": true
 +    },
      "ansi-escapes": {
        "version": "3.1.0",
        "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
        "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
        "dev": true
      },
 +    "ansi-html": {
 +      "version": "0.0.7",
 +      "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
 +      "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
 +      "dev": true
 +    },
      "ansi-regex": {
-       "version": "3.0.0",
-       "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
-       "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
+       "version": "2.1.1",
+       "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+       "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
        "dev": true
      },
      "ansi-styles": {
        "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
        "dev": true
      },
-     "array-slice": {
-       "version": "0.2.3",
-       "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
-       "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
-       "dev": true
-     },
 +    "array-flatten": {
 +      "version": "2.1.1",
 +      "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz",
 +      "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=",
 +      "dev": true
 +    },
      "array-union": {
        "version": "1.0.2",
        "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
        "dev": true
      },
      "asn1": {
-       "version": "0.2.4",
-       "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
-       "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
-       "dev": true,
-       "requires": {
-         "safer-buffer": "~2.1.0"
-       }
+       "version": "0.2.3",
+       "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
+       "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
+       "dev": true
      },
 +    "asn1.js": {
 +      "version": "4.10.1",
 +      "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
 +      "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
 +      "dev": true,
 +      "requires": {
 +        "bn.js": "^4.0.0",
 +        "inherits": "^2.0.1",
 +        "minimalistic-assert": "^1.0.0"
 +      }
 +    },
 +    "assert": {
 +      "version": "1.4.1",
 +      "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz",
 +      "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=",
 +      "dev": true,
 +      "requires": {
 +        "util": "0.10.3"
 +      },
 +      "dependencies": {
 +        "inherits": {
 +          "version": "2.0.1",
 +          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
 +          "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
 +          "dev": true
 +        },
 +        "util": {
 +          "version": "0.10.3",
 +          "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz",
 +          "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
 +          "dev": true,
 +          "requires": {
 +            "inherits": "2.0.1"
 +          }
 +        }
 +      }
 +    },
      "assert-plus": {
        "version": "1.0.0",
        "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
        "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
        "dev": true
      },
 +    "batch": {
 +      "version": "0.6.1",
 +      "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
 +      "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
 +      "dev": true
 +    },
      "bcrypt-pbkdf": {
-       "version": "1.0.2",
-       "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
-       "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
+       "version": "1.0.1",
+       "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
+       "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
        "dev": true,
+       "optional": true,
        "requires": {
          "tweetnacl": "^0.14.3"
        }
        "dev": true
      },
      "bluebird": {
-       "version": "3.5.3",
-       "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz",
-       "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==",
+       "version": "3.5.2",
+       "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.2.tgz",
+       "integrity": "sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg==",
        "dev": true
      },
 +    "bn.js": {
 +      "version": "4.11.8",
 +      "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
 +      "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
 +      "dev": true
 +    },
      "body-parser": {
        "version": "1.18.3",
        "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz",
          }
        }
      },
 +    "bonjour": {
 +      "version": "3.5.0",
 +      "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz",
 +      "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=",
 +      "dev": true,
 +      "requires": {
 +        "array-flatten": "^2.1.0",
 +        "deep-equal": "^1.0.1",
 +        "dns-equal": "^1.0.0",
 +        "dns-txt": "^2.0.2",
 +        "multicast-dns": "^6.0.1",
 +        "multicast-dns-service-types": "^1.1.0"
 +      }
 +    },
+     "boom": {
+       "version": "4.3.1",
+       "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
+       "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
+       "dev": true,
+       "requires": {
+         "hoek": "4.x.x"
+       }
+     },
      "boxen": {
        "version": "2.0.0",
        "resolved": "https://registry.npmjs.org/boxen/-/boxen-2.0.0.tgz",
          "browser-resolve": "^1.8.1"
        }
      },
 +    "browserify-rsa": {
 +      "version": "4.0.1",
 +      "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
 +      "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
 +      "dev": true,
 +      "requires": {
 +        "bn.js": "^4.1.0",
 +        "randombytes": "^2.0.1"
 +      }
 +    },
 +    "browserify-sign": {
 +      "version": "4.0.4",
 +      "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
 +      "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
 +      "dev": true,
 +      "requires": {
 +        "bn.js": "^4.1.1",
 +        "browserify-rsa": "^4.0.0",
 +        "create-hash": "^1.1.0",
 +        "create-hmac": "^1.1.2",
 +        "elliptic": "^6.0.0",
 +        "inherits": "^2.0.1",
 +        "parse-asn1": "^5.0.0"
 +      }
 +    },
 +    "browserify-zlib": {
 +      "version": "0.2.0",
 +      "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
 +      "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
 +      "dev": true,
 +      "requires": {
 +        "pako": "~1.0.5"
 +      },
 +      "dependencies": {
 +        "pako": {
 +          "version": "1.0.7",
 +          "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.7.tgz",
 +          "integrity": "sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ==",
 +          "dev": true
 +        }
 +      }
 +    },
      "browserslist": {
-       "version": "4.3.5",
-       "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.3.5.tgz",
-       "integrity": "sha512-z9ZhGc3d9e/sJ9dIx5NFXkKoaiQTnrvrMsN3R1fGb1tkWWNSz12UewJn9TNxGo1l7J23h0MRaPmk7jfeTZYs1w==",
+       "version": "4.3.4",
+       "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.3.4.tgz",
+       "integrity": "sha512-u5iz+ijIMUlmV8blX82VGFrB9ecnUg5qEt55CMZ/YJEhha+d8qpBfOFuutJ6F/VKRXjZoD33b6uvarpPxcl3RA==",
        "dev": true,
        "requires": {
-         "caniuse-lite": "^1.0.30000912",
-         "electron-to-chromium": "^1.3.86",
-         "node-releases": "^1.0.5"
+         "caniuse-lite": "^1.0.30000899",
+         "electron-to-chromium": "^1.3.82",
+         "node-releases": "^1.0.1"
        }
      },
      "buffer": {
        "dev": true
      },
      "buffer-from": {
-       "version": "1.1.1",
-       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
-       "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
+       "version": "1.1.0",
+       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz",
+       "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==",
        "dev": true
      },
 +    "buffer-indexof": {
 +      "version": "1.1.1",
 +      "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz",
 +      "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
 +      "dev": true
 +    },
 +    "buffer-xor": {
 +      "version": "1.0.3",
 +      "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
 +      "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
 +      "dev": true
 +    },
      "builtin-modules": {
        "version": "1.1.1",
        "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
        "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
        "dev": true
      },
-       },
-       "dependencies": {
-         "lru-cache": {
-           "version": "4.1.5",
-           "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
-           "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
-           "dev": true,
-           "requires": {
-             "pseudomap": "^1.0.2",
-             "yallist": "^2.1.2"
-           }
-         }
 +    "cacache": {
 +      "version": "11.3.1",
 +      "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.1.tgz",
 +      "integrity": "sha512-2PEw4cRRDu+iQvBTTuttQifacYjLPhET+SYO/gEFMy8uhi+jlJREDAjSF5FWSdV/Aw5h18caHA7vMTw2c+wDzA==",
 +      "dev": true,
 +      "requires": {
 +        "bluebird": "^3.5.1",
 +        "chownr": "^1.0.1",
 +        "figgy-pudding": "^3.1.0",
 +        "glob": "^7.1.2",
 +        "graceful-fs": "^4.1.11",
 +        "lru-cache": "^4.1.3",
 +        "mississippi": "^3.0.0",
 +        "mkdirp": "^0.5.1",
 +        "move-concurrently": "^1.0.1",
 +        "promise-inflight": "^1.0.1",
 +        "rimraf": "^2.6.2",
 +        "ssri": "^6.0.0",
 +        "unique-filename": "^1.1.0",
 +        "y18n": "^4.0.0"
 +      }
 +    },
      "cache-base": {
        "version": "1.0.1",
        "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
        "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
        "dev": true
      },
 +    "cliui": {
 +      "version": "4.1.0",
 +      "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
 +      "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==",
 +      "dev": true,
 +      "requires": {
 +        "string-width": "^2.1.1",
 +        "strip-ansi": "^4.0.0",
 +        "wrap-ansi": "^2.0.0"
++      },
++      "dependencies": {
++        "ansi-regex": {
++          "version": "3.0.0",
++          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
++          "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
++          "dev": true
++        },
++        "is-fullwidth-code-point": {
++          "version": "2.0.0",
++          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
++          "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
++          "dev": true
++        },
++        "string-width": {
++          "version": "2.1.1",
++          "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
++          "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
++          "dev": true,
++          "requires": {
++            "is-fullwidth-code-point": "^2.0.0",
++            "strip-ansi": "^4.0.0"
++          }
++        },
++        "strip-ansi": {
++          "version": "4.0.0",
++          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
++          "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
++          "dev": true,
++          "requires": {
++            "ansi-regex": "^3.0.0"
++          }
++        }
 +      }
 +    },
      "clone": {
        "version": "1.0.4",
        "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
        "version": "2.17.1",
        "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
        "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
-       "dev": true
+       "dev": true,
+       "optional": true
      },
 +    "commondir": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
 +      "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
 +      "dev": true
 +    },
      "component-bind": {
        "version": "1.0.0",
        "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
        "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
        "dev": true
      },
 -    "concat-map": {
 -      "version": "0.0.1",
 -      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 -      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
 -      "dev": true
+     "compress-commons": {
+       "version": "1.2.2",
+       "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
+       "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
+       "dev": true,
+       "requires": {
+         "buffer-crc32": "^0.2.1",
+         "crc32-stream": "^2.0.0",
+         "normalize-path": "^2.0.0",
+         "readable-stream": "^2.0.0"
+       }
+     },
-       },
-       "dependencies": {
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         }
 +    "compressible": {
 +      "version": "2.0.15",
 +      "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz",
 +      "integrity": "sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==",
 +      "dev": true,
 +      "requires": {
 +        "mime-db": ">= 1.36.0 < 2"
 +      }
 +    },
 +    "compression": {
 +      "version": "1.7.3",
 +      "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz",
 +      "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==",
 +      "dev": true,
 +      "requires": {
 +        "accepts": "~1.3.5",
 +        "bytes": "3.0.0",
 +        "compressible": "~2.0.14",
 +        "debug": "2.6.9",
 +        "on-headers": "~1.0.1",
 +        "safe-buffer": "5.1.2",
 +        "vary": "~1.1.2"
 +      }
 +    },
 +    "concat-map": {
 +      "version": "0.0.1",
 +      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 +      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
 +      "dev": true
      },
      "concat-stream": {
        "version": "1.6.2",
          "finalhandler": "1.1.0",
          "parseurl": "~1.3.2",
          "utils-merge": "1.0.1"
-       },
-       "dependencies": {
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         }
        }
      },
 +    "connect-history-api-fallback": {
 +      "version": "1.5.0",
 +      "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz",
 +      "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=",
 +      "dev": true
 +    },
 +    "console-browserify": {
 +      "version": "1.1.0",
 +      "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
 +      "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
 +      "dev": true,
 +      "requires": {
 +        "date-now": "^0.1.4"
 +      }
 +    },
      "console-control-strings": {
        "version": "1.1.0",
        "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
          "log-driver": "^1.2.7",
          "minimist": "^1.2.0",
          "request": "^2.85.0"
+       },
+       "dependencies": {
+         "esprima": {
+           "version": "4.0.1",
+           "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+           "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+           "dev": true
+         },
+         "js-yaml": {
+           "version": "3.12.0",
+           "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz",
+           "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==",
+           "dev": true,
+           "requires": {
+             "argparse": "^1.0.7",
+             "esprima": "^4.0.0"
+           }
+         }
+       }
+     },
+     "crc": {
+       "version": "3.8.0",
+       "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz",
+       "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==",
+       "dev": true,
+       "requires": {
+         "buffer": "^5.1.0"
+       }
+     },
+     "crc32-stream": {
+       "version": "2.0.0",
+       "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
+       "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
+       "dev": true,
+       "requires": {
+         "crc": "^3.4.4",
+         "readable-stream": "^2.0.0"
        }
      },
 +    "create-ecdh": {
 +      "version": "4.0.3",
 +      "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
 +      "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==",
 +      "dev": true,
 +      "requires": {
 +        "bn.js": "^4.1.0",
 +        "elliptic": "^6.0.0"
 +      }
 +    },
 +    "create-hash": {
 +      "version": "1.2.0",
 +      "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
 +      "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
 +      "dev": true,
 +      "requires": {
 +        "cipher-base": "^1.0.1",
 +        "inherits": "^2.0.1",
 +        "md5.js": "^1.3.4",
 +        "ripemd160": "^2.0.1",
 +        "sha.js": "^2.4.0"
 +      }
 +    },
 +    "create-hmac": {
 +      "version": "1.1.7",
 +      "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
 +      "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
 +      "dev": true,
 +      "requires": {
 +        "cipher-base": "^1.0.3",
 +        "create-hash": "^1.1.0",
 +        "inherits": "^2.0.1",
 +        "ripemd160": "^2.0.0",
 +        "safe-buffer": "^5.0.1",
 +        "sha.js": "^2.4.8"
 +      }
 +    },
      "cross-spawn": {
-       "version": "6.0.5",
-       "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
-       "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
+       "version": "5.1.0",
+       "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
+       "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
        "dev": true,
        "requires": {
-         "nice-try": "^1.0.4",
-         "path-key": "^2.0.1",
-         "semver": "^5.5.0",
+         "lru-cache": "^4.0.1",
          "shebang-command": "^1.2.0",
          "which": "^1.2.9"
+       },
+       "dependencies": {
+         "lru-cache": {
+           "version": "4.1.3",
+           "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz",
+           "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==",
+           "dev": true,
+           "requires": {
+             "pseudomap": "^1.0.2",
+             "yallist": "^2.1.2"
+           }
+         }
+       }
+     },
+     "cryptiles": {
+       "version": "3.1.4",
+       "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.4.tgz",
+       "integrity": "sha512-8I1sgZHfVwcSOY6mSGpVU3lw/GSIZvusg8dD2+OGehCJpOhQRLNcH0qb9upQnOH4XhgxxFJSg6E2kx95deb1Tw==",
+       "dev": true,
+       "requires": {
+         "boom": "5.x.x"
+       },
+       "dependencies": {
+         "boom": {
+           "version": "5.2.0",
+           "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
+           "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
+           "dev": true,
+           "requires": {
+             "hoek": "4.x.x"
+           }
+         }
        }
      },
 +    "crypto-browserify": {
 +      "version": "3.12.0",
 +      "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
 +      "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
 +      "dev": true,
 +      "requires": {
 +        "browserify-cipher": "^1.0.0",
 +        "browserify-sign": "^4.0.0",
 +        "create-ecdh": "^4.0.0",
 +        "create-hash": "^1.1.0",
 +        "create-hmac": "^1.1.0",
 +        "diffie-hellman": "^5.0.0",
 +        "inherits": "^2.0.1",
 +        "pbkdf2": "^3.0.3",
 +        "public-encrypt": "^4.0.0",
 +        "randombytes": "^2.0.0",
 +        "randomfill": "^1.0.3"
 +      }
 +    },
      "currently-unhandled": {
        "version": "0.4.1",
        "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
        "integrity": "sha1-YV6CjiM90aubua4JUODOzPpuytg=",
        "dev": true
      },
-     "dateformat": {
-       "version": "1.0.12",
-       "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz",
-       "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=",
-       "dev": true,
-       "requires": {
-         "get-stdin": "^4.0.1",
-         "meow": "^3.3.0"
-       }
-     },
 +    "date-now": {
 +      "version": "0.1.4",
 +      "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
 +      "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
 +      "dev": true
 +    },
      "debug": {
-       "version": "4.1.0",
-       "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz",
-       "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==",
+       "version": "2.6.9",
+       "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+       "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
        "dev": true,
        "requires": {
-         "ms": "^2.1.1"
+         "ms": "2.0.0"
        }
      },
      "decamelize": {
        "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
        "dev": true
      },
-         "execa": {
-           "version": "0.10.0",
-           "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
 +    "default-gateway": {
 +      "version": "2.7.2",
 +      "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz",
 +      "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==",
 +      "dev": true,
 +      "requires": {
 +        "execa": "^0.10.0",
 +        "ip-regex": "^2.1.0"
 +      },
 +      "dependencies": {
++        "cross-spawn": {
++          "version": "6.0.5",
++          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
++          "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
++          "dev": true,
++          "requires": {
++            "nice-try": "^1.0.4",
++            "path-key": "^2.0.1",
++            "semver": "^5.5.0",
++            "shebang-command": "^1.2.0",
++            "which": "^1.2.9"
++          }
++        },
++        "execa": {
++          "version": "0.10.0",
++          "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
 +          "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==",
 +          "dev": true,
 +          "requires": {
 +            "cross-spawn": "^6.0.0",
 +            "get-stream": "^3.0.0",
 +            "is-stream": "^1.1.0",
 +            "npm-run-path": "^2.0.0",
 +            "p-finally": "^1.0.0",
 +            "signal-exit": "^3.0.0",
 +            "strip-eof": "^1.0.0"
 +          }
++        },
++        "semver": {
++          "version": "5.6.0",
++          "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
++          "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
++          "dev": true
 +        }
 +      }
 +    },
      "define-property": {
        "version": "2.0.2",
        "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
          "void-elements": "^2.0.0"
        }
      },
 +    "domain-browser": {
 +      "version": "1.2.0",
 +      "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
 +      "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
 +      "dev": true
 +    },
      "duplexer": {
        "version": "0.1.1",
-       "resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
+       "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
        "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
        "dev": true
      },
          "readable-stream": "^2.0.2"
        }
      },
 +    "duplexify": {
 +      "version": "3.6.1",
 +      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.1.tgz",
 +      "integrity": "sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA==",
 +      "dev": true,
 +      "requires": {
 +        "end-of-stream": "^1.0.0",
 +        "inherits": "^2.0.1",
 +        "readable-stream": "^2.0.0",
 +        "stream-shift": "^1.0.0"
 +      }
 +    },
      "ecc-jsbn": {
-       "version": "0.1.2",
-       "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
-       "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
+       "version": "0.1.1",
+       "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
+       "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
        "dev": true,
+       "optional": true,
        "requires": {
-         "jsbn": "~0.1.0",
-         "safer-buffer": "^2.1.0"
+         "jsbn": "~0.1.0"
        }
      },
      "ecstatic": {
        "dev": true
      },
      "electron-to-chromium": {
-       "version": "1.3.86",
-       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.86.tgz",
-       "integrity": "sha512-BcmXOu37FCPxrrh0wyKgKi5dAjIu2ohxN5ptapkLPKRC3IBK2NeIwh9n1x/8HzSRQiEKamJkDce1ZgOGgEX9iw==",
+       "version": "1.3.82",
+       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.82.tgz",
+       "integrity": "sha512-NI4nB2IWGcU4JVT1AE8kBb/dFor4zjLHMLsOROPahppeHrR0FG5uslxMmkp/thO1MvPjM2xhlKoY29/I60s0ew==",
        "dev": true
      },
 +    "elliptic": {
 +      "version": "6.4.1",
 +      "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz",
 +      "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==",
 +      "dev": true,
 +      "requires": {
 +        "bn.js": "^4.4.0",
 +        "brorand": "^1.0.1",
 +        "hash.js": "^1.0.0",
 +        "hmac-drbg": "^1.0.0",
 +        "inherits": "^2.0.1",
 +        "minimalistic-assert": "^1.0.0",
 +        "minimalistic-crypto-utils": "^1.0.0"
 +      }
 +    },
 +    "emojis-list": {
 +      "version": "2.1.0",
 +      "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
 +      "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
 +      "dev": true
 +    },
      "encodeurl": {
        "version": "1.0.2",
        "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
        }
      },
      "expand-template": {
-       "version": "2.0.3",
-       "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
-       "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
+       "version": "1.1.1",
+       "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.1.tgz",
+       "integrity": "sha512-cebqLtV8KOZfw0UI8TEFWxtczxxC1jvyUvx6H4fyp1K1FN7A4Q+uggVUlOsI1K8AGU0rwOGqP8nCapdrw8CYQg==",
        "dev": true
      },
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
+     "expand-tilde": {
+       "version": "1.2.2",
+       "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz",
+       "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=",
+       "dev": true,
+       "requires": {
+         "os-homedir": "^1.0.1"
+       }
+     },
 +    "express": {
 +      "version": "4.16.4",
 +      "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz",
 +      "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==",
 +      "dev": true,
 +      "requires": {
 +        "accepts": "~1.3.5",
 +        "array-flatten": "1.1.1",
 +        "body-parser": "1.18.3",
 +        "content-disposition": "0.5.2",
 +        "content-type": "~1.0.4",
 +        "cookie": "0.3.1",
 +        "cookie-signature": "1.0.6",
 +        "debug": "2.6.9",
 +        "depd": "~1.1.2",
 +        "encodeurl": "~1.0.2",
 +        "escape-html": "~1.0.3",
 +        "etag": "~1.8.1",
 +        "finalhandler": "1.1.1",
 +        "fresh": "0.5.2",
 +        "merge-descriptors": "1.0.1",
 +        "methods": "~1.1.2",
 +        "on-finished": "~2.3.0",
 +        "parseurl": "~1.3.2",
 +        "path-to-regexp": "0.1.7",
 +        "proxy-addr": "~2.0.4",
 +        "qs": "6.5.2",
 +        "range-parser": "~1.2.0",
 +        "safe-buffer": "5.1.2",
 +        "send": "0.16.2",
 +        "serve-static": "1.13.2",
 +        "setprototypeof": "1.1.0",
 +        "statuses": "~1.4.0",
 +        "type-is": "~1.6.16",
 +        "utils-merge": "1.0.1",
 +        "vary": "~1.1.2"
 +      },
 +      "dependencies": {
 +        "array-flatten": {
 +          "version": "1.1.1",
 +          "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
 +          "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
 +          "dev": true
 +        },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         },
 +        "finalhandler": {
 +          "version": "1.1.1",
 +          "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
 +          "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
 +          "dev": true,
 +          "requires": {
 +            "debug": "2.6.9",
 +            "encodeurl": "~1.0.2",
 +            "escape-html": "~1.0.3",
 +            "on-finished": "~2.3.0",
 +            "parseurl": "~1.3.2",
 +            "statuses": "~1.4.0",
 +            "unpipe": "~1.0.0"
 +          }
 +        },
 +        "statuses": {
 +          "version": "1.4.0",
 +          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
 +          "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==",
 +          "dev": true
 +        }
 +      }
 +    },
      "extend": {
-       "version": "3.0.2",
-       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
-       "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+       "version": "3.0.1",
+       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
+       "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
        "dev": true
      },
      "extend-shallow": {
          "write": "^0.2.1"
        }
      },
 -    "follow-redirects": {
 -      "version": "1.5.0",
 +    "flush-write-stream": {
 +      "version": "1.0.3",
 +      "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz",
 +      "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "^2.0.1",
 +        "readable-stream": "^2.0.4"
 +      }
 +    },
 +    "follow-redirects": {
-       "version": "1.5.10",
-       "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
-       "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
++      "version": "1.5.0",
+       "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.0.tgz",
+       "integrity": "sha512-fdrt472/9qQ6Kgjvb935ig6vJCuofpBUD14f9Vb+SLlm7xIe4Qva5gey8EKtv8lp7ahE1wilg3xL1znpVGtZIA==",
        "dev": true,
        "requires": {
-         "debug": "=3.1.0"
+         "debug": "^3.1.0"
        },
        "dependencies": {
          "debug": {
          "map-cache": "^0.2.2"
        }
      },
 +    "fresh": {
 +      "version": "0.5.2",
 +      "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
 +      "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
 +      "dev": true
 +    },
 +    "from2": {
 +      "version": "2.3.0",
 +      "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
 +      "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "^2.0.1",
 +        "readable-stream": "^2.0.0"
 +      }
 +    },
      "fs-access": {
        "version": "1.0.1",
-       "resolved": "http://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
+       "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
        "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
        "dev": true,
        "requires": {
        "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
        "dev": true
      },
+     "fs-exists-sync": {
+       "version": "0.1.0",
+       "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz",
+       "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=",
+       "dev": true
+     },
 +    "fs-write-stream-atomic": {
 +      "version": "1.0.10",
 +      "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
 +      "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
 +      "dev": true,
 +      "requires": {
 +        "graceful-fs": "^4.1.2",
 +        "iferr": "^0.1.5",
 +        "imurmurhash": "^0.1.4",
 +        "readable-stream": "1 || 2"
 +      }
 +    },
      "fs.realpath": {
        "version": "1.0.0",
        "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
        "dependencies": {
          "abbrev": {
            "version": "1.1.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
++          "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
            "dev": true,
            "optional": true
          },
          "ansi-regex": {
            "version": "2.1.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
++          "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
            "dev": true
          },
          "aproba": {
            "version": "1.2.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
++          "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
            "dev": true,
            "optional": true
          },
          "are-we-there-yet": {
            "version": "1.1.4",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
++          "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "balanced-match": {
            "version": "1.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
++          "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
            "dev": true
          },
          "brace-expansion": {
            "version": "1.1.11",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
++          "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
            "dev": true,
            "requires": {
              "balanced-match": "^1.0.0",
          },
          "chownr": {
            "version": "1.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
++          "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
            "dev": true,
            "optional": true
          },
          "code-point-at": {
            "version": "1.1.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
++          "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
            "dev": true
          },
          "concat-map": {
            "version": "0.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
++          "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
            "dev": true
          },
          "console-control-strings": {
            "version": "1.1.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
++          "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
            "dev": true
          },
          "core-util-is": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
++          "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
            "dev": true,
            "optional": true
          },
          "debug": {
            "version": "2.6.9",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
++          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "deep-extend": {
            "version": "0.5.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz",
++          "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==",
            "dev": true,
            "optional": true
          },
          "delegates": {
            "version": "1.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
++          "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
            "dev": true,
            "optional": true
          },
          "detect-libc": {
            "version": "1.0.3",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
++          "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
            "dev": true,
            "optional": true
          },
          "fs-minipass": {
            "version": "1.2.5",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz",
++          "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "fs.realpath": {
            "version": "1.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
++          "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
            "dev": true,
            "optional": true
          },
          "gauge": {
            "version": "2.7.4",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
++          "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "glob": {
            "version": "7.1.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
++          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "has-unicode": {
            "version": "2.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
++          "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
            "dev": true,
            "optional": true
          },
          "iconv-lite": {
            "version": "0.4.21",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.21.tgz",
++          "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "ignore-walk": {
            "version": "3.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz",
++          "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "inflight": {
            "version": "1.0.6",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
++          "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "inherits": {
            "version": "2.0.3",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
++          "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
            "dev": true
          },
          "ini": {
            "version": "1.3.5",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
++          "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
            "dev": true,
            "optional": true
          },
          "is-fullwidth-code-point": {
            "version": "1.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
++          "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
            "dev": true,
            "requires": {
              "number-is-nan": "^1.0.0"
          },
          "isarray": {
            "version": "1.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
++          "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
            "dev": true,
            "optional": true
          },
          "minimatch": {
            "version": "3.0.4",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
++          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
            "dev": true,
            "requires": {
              "brace-expansion": "^1.1.7"
          },
          "minimist": {
            "version": "0.0.8",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
++          "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
            "dev": true
          },
          "minipass": {
            "version": "2.2.4",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz",
++          "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==",
            "dev": true,
            "requires": {
              "safe-buffer": "^5.1.1",
          },
          "minizlib": {
            "version": "1.1.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz",
++          "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "mkdirp": {
            "version": "0.5.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
++          "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
            "dev": true,
            "requires": {
              "minimist": "0.0.8"
          },
          "ms": {
            "version": "2.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
++          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
            "dev": true,
            "optional": true
          },
          "needle": {
            "version": "2.2.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.0.tgz",
++          "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "node-pre-gyp": {
            "version": "0.10.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz",
++          "integrity": "sha512-G7kEonQLRbcA/mOoFoxvlMrw6Q6dPf92+t/l0DFSMuSlDoWaI9JWIyPwK0jyE1bph//CUEL65/Fz1m2vJbmjQQ==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "nopt": {
            "version": "4.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz",
++          "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "npm-bundled": {
            "version": "1.0.3",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.3.tgz",
++          "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==",
            "dev": true,
            "optional": true
          },
          "npm-packlist": {
            "version": "1.1.10",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.1.10.tgz",
++          "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "npmlog": {
            "version": "4.1.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
++          "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "number-is-nan": {
            "version": "1.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
++          "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
            "dev": true
          },
          "object-assign": {
            "version": "4.1.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
++          "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
            "dev": true,
            "optional": true
          },
          "once": {
            "version": "1.4.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
++          "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
            "dev": true,
            "requires": {
              "wrappy": "1"
          },
          "os-homedir": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
++          "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
            "dev": true,
            "optional": true
          },
          "os-tmpdir": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
++          "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
            "dev": true,
            "optional": true
          },
          "osenv": {
            "version": "0.1.5",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
++          "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "path-is-absolute": {
            "version": "1.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
++          "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
            "dev": true,
            "optional": true
          },
          "process-nextick-args": {
            "version": "2.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
++          "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
            "dev": true,
            "optional": true
          },
          "rc": {
            "version": "1.2.7",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz",
++          "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==",
            "dev": true,
            "optional": true,
            "requires": {
            "dependencies": {
              "minimist": {
                "version": "1.2.0",
--              "bundled": true,
++              "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
++              "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
                "dev": true,
                "optional": true
              }
          },
          "readable-stream": {
            "version": "2.3.6",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
++          "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "rimraf": {
            "version": "2.6.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
++          "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "safe-buffer": {
            "version": "5.1.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
++          "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
            "dev": true
          },
          "safer-buffer": {
            "version": "2.1.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
++          "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
            "dev": true,
            "optional": true
          },
          "sax": {
            "version": "1.2.4",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
++          "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
            "dev": true,
            "optional": true
          },
          "semver": {
            "version": "5.5.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
++          "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
            "dev": true,
            "optional": true
          },
          "set-blocking": {
            "version": "2.0.0",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
++          "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
            "dev": true,
            "optional": true
          },
          "signal-exit": {
            "version": "3.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
++          "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
            "dev": true,
            "optional": true
          },
          "string-width": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
++          "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
            "dev": true,
            "requires": {
              "code-point-at": "^1.0.0",
          },
          "string_decoder": {
            "version": "1.1.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
++          "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "strip-ansi": {
            "version": "3.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
++          "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
            "dev": true,
            "requires": {
              "ansi-regex": "^2.0.0"
          },
          "strip-json-comments": {
            "version": "2.0.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
++          "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
            "dev": true,
            "optional": true
          },
          "tar": {
            "version": "4.4.1",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz",
++          "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "util-deprecate": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
++          "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
            "dev": true,
            "optional": true
          },
          "wide-align": {
            "version": "1.1.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
++          "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
            "dev": true,
            "optional": true,
            "requires": {
          },
          "wrappy": {
            "version": "1.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
++          "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
            "dev": true
          },
          "yallist": {
            "version": "3.0.2",
--          "bundled": true,
++          "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz",
++          "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=",
            "dev": true
          }
        }
          "string-width": "^1.0.1",
          "strip-ansi": "^3.0.1",
          "wide-align": "^1.1.0"
-       },
-       "dependencies": {
-         "ansi-regex": {
-           "version": "2.1.1",
-           "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-           "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
-           "dev": true
-         },
-         "is-fullwidth-code-point": {
-           "version": "1.0.0",
-           "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
-           "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
-           "dev": true,
-           "requires": {
-             "number-is-nan": "^1.0.0"
-           }
-         },
-         "string-width": {
-           "version": "1.0.2",
-           "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
-           "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
-           "dev": true,
-           "requires": {
-             "code-point-at": "^1.0.0",
-             "is-fullwidth-code-point": "^1.0.0",
-             "strip-ansi": "^3.0.0"
-           }
-         },
-         "strip-ansi": {
-           "version": "3.0.1",
-           "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
-           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
-           "dev": true,
-           "requires": {
-             "ansi-regex": "^2.0.0"
-           }
-         }
        }
      },
-     "get-stdin": {
-       "version": "4.0.1",
-       "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-       "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-       "dev": true
-     },
 +    "get-caller-file": {
 +      "version": "1.0.3",
 +      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
 +      "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
 +      "dev": true
 +    },
      "get-stream": {
        "version": "3.0.0",
        "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
          }
        }
      },
+     "global-modules": {
+       "version": "0.2.3",
+       "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz",
+       "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=",
+       "dev": true,
+       "requires": {
+         "global-prefix": "^0.1.4",
+         "is-windows": "^0.2.0"
+       },
+       "dependencies": {
+         "is-windows": {
+           "version": "0.2.0",
+           "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz",
+           "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=",
+           "dev": true
+         }
+       }
+     },
 +    "global-modules-path": {
 +      "version": "2.3.1",
 +      "resolved": "https://registry.npmjs.org/global-modules-path/-/global-modules-path-2.3.1.tgz",
 +      "integrity": "sha512-y+shkf4InI7mPRHSo2b/k6ix6+NLDtyccYv86whhxrSGX9wjPX1VMITmrDbE1eh7zkzhiWtW2sHklJYoQ62Cxg==",
 +      "dev": true
 +    },
+     "global-prefix": {
+       "version": "0.1.5",
+       "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz",
+       "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=",
+       "dev": true,
+       "requires": {
+         "homedir-polyfill": "^1.0.0",
+         "ini": "^1.3.4",
+         "is-windows": "^0.2.0",
+         "which": "^1.2.12"
+       },
+       "dependencies": {
+         "is-windows": {
+           "version": "0.2.0",
+           "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz",
+           "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=",
+           "dev": true
+         }
+       }
+     },
      "globals": {
        "version": "11.9.0",
        "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz",
        "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
        "dev": true
      },
-     "gzip-size": {
-       "version": "5.0.0",
-       "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.0.0.tgz",
-       "integrity": "sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA==",
-       "dev": true,
-       "requires": {
-         "duplexer": "^0.1.1",
-         "pify": "^3.0.0"
-       },
-       "dependencies": {
-         "pify": {
-           "version": "3.0.0",
-           "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
-           "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
-           "dev": true
-         }
-       }
-     },
 +    "handle-thing": {
 +      "version": "1.2.5",
 +      "resolved": "http://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz",
 +      "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=",
 +      "dev": true
 +    },
      "handlebars": {
        "version": "4.0.12",
        "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz",
          }
        }
      },
 +    "hash-base": {
 +      "version": "3.0.4",
 +      "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
 +      "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "^2.0.1",
 +        "safe-buffer": "^5.0.1"
 +      }
 +    },
 +    "hash.js": {
 +      "version": "1.1.7",
 +      "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
 +      "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "^2.0.3",
 +        "minimalistic-assert": "^1.0.1"
 +      }
 +    },
+     "hawk": {
+       "version": "6.0.2",
+       "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
+       "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
+       "dev": true,
+       "requires": {
+         "boom": "4.x.x",
+         "cryptiles": "3.x.x",
+         "hoek": "4.x.x",
+         "sntp": "2.x.x"
+       }
+     },
      "he": {
        "version": "1.2.0",
        "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
        "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
        "dev": true
      },
 +    "hmac-drbg": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
 +      "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
 +      "dev": true,
 +      "requires": {
 +        "hash.js": "^1.0.3",
 +        "minimalistic-assert": "^1.0.0",
 +        "minimalistic-crypto-utils": "^1.0.1"
 +      }
 +    },
+     "hoek": {
+       "version": "4.2.1",
+       "resolved": "http://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz",
+       "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==",
+       "dev": true
+     },
+     "homedir-polyfill": {
+       "version": "1.0.1",
+       "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz",
+       "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=",
+       "dev": true,
+       "requires": {
+         "parse-passwd": "^1.0.0"
+       }
+     },
      "hosted-git-info": {
-       "version": "2.7.1",
-       "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
-       "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==",
+       "version": "2.6.1",
+       "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.1.tgz",
+       "integrity": "sha512-Ba4+0M4YvIDUUsprMjhVTU1yN9F2/LJSAl69ZpzaLT4l4j5mwTS6jqqW9Ojvj6lKz/veqPzpJBqGbXspOb533A==",
        "dev": true
      },
 +    "hpack.js": {
 +      "version": "2.1.6",
 +      "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
 +      "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "^2.0.1",
 +        "obuf": "^1.0.0",
 +        "readable-stream": "^2.0.1",
 +        "wbuf": "^1.1.0"
 +      }
 +    },
 +    "html-entities": {
 +      "version": "1.2.1",
 +      "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz",
 +      "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=",
 +      "dev": true
 +    },
 +    "http-deceiver": {
 +      "version": "1.2.7",
 +      "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
 +      "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=",
 +      "dev": true
 +    },
      "http-errors": {
        "version": "1.6.3",
        "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
          "requires-port": "^1.0.0"
        }
      },
 +    "http-proxy-middleware": {
 +      "version": "0.18.0",
 +      "resolved": "http://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
 +      "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==",
 +      "dev": true,
 +      "requires": {
 +        "http-proxy": "^1.16.2",
 +        "is-glob": "^4.0.0",
 +        "lodash": "^4.17.5",
 +        "micromatch": "^3.1.9"
++      },
++      "dependencies": {
++        "is-glob": {
++          "version": "4.0.0",
++          "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz",
++          "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=",
++          "dev": true,
++          "requires": {
++            "is-extglob": "^2.1.1"
++          }
++        }
 +      }
 +    },
      "http-server": {
        "version": "0.11.1",
        "resolved": "https://registry.npmjs.org/http-server/-/http-server-0.11.1.tgz",
          "sshpk": "^1.7.0"
        }
      },
 +    "https-browserify": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
 +      "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
 +      "dev": true
 +    },
+     "https-proxy-agent": {
+       "version": "2.2.1",
+       "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz",
+       "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==",
+       "dev": true,
+       "requires": {
+         "agent-base": "^4.1.0",
+         "debug": "^3.1.0"
+       },
+       "dependencies": {
+         "debug": {
+           "version": "3.2.6",
+           "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+           "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+           "dev": true,
+           "requires": {
+             "ms": "^2.1.1"
+           }
+         },
+         "ms": {
+           "version": "2.1.1",
+           "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+           "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+           "dev": true
+         }
+       }
+     },
      "iconv-lite": {
        "version": "0.4.24",
        "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
        "version": "0.1.1",
        "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
        "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
-       "dev": true
+       "dev": true,
+       "optional": true
      },
      "jsesc": {
-       "version": "2.5.2",
-       "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
-       "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
+       "version": "2.5.1",
+       "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz",
+       "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=",
        "dev": true
      },
 +    "json-parse-better-errors": {
 +      "version": "1.0.2",
 +      "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
 +      "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
 +      "dev": true
 +    },
      "json-schema": {
        "version": "0.2.3",
        "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
        "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
        "dev": true
      },
 +    "json3": {
 +      "version": "3.3.2",
 +      "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz",
 +      "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=",
 +      "dev": true
 +    },
      "json5": {
-       "version": "2.1.0",
-       "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz",
-       "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==",
-       "dev": true,
-       "requires": {
-         "minimist": "^1.2.0"
-       }
+       "version": "0.5.1",
+       "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
+       "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
+       "dev": true
      },
      "jsprim": {
        "version": "1.4.1",
        "dev": true
      },
      "karma-jasmine": {
-       "version": "1.1.2",
-       "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-1.1.2.tgz",
-       "integrity": "sha1-OU8rJf+0pkS5rabyLUQ+L9CIhsM=",
+       "version": "2.0.0",
+       "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.0.tgz",
+       "integrity": "sha512-MxgbjgIkm+BFPoMkkaXb/2zAgRaeSe+ZWI6n+vpx4eisokHsHiZt9WGFj2qPrLXG2qrzEOyorCl8g/nqNXtBgA==",
        "dev": true
      },
+     "karma-sauce-launcher": {
+       "version": "1.2.0",
+       "resolved": "https://registry.npmjs.org/karma-sauce-launcher/-/karma-sauce-launcher-1.2.0.tgz",
+       "integrity": "sha512-lEhtGRGS+3Yw6JSx/vJY9iQyHNtTjcojrSwNzqNUOaDceKDu9dPZqA/kr69bUO9G2T6GKbu8AZgXqy94qo31Jg==",
+       "dev": true,
+       "requires": {
+         "q": "^1.5.0",
+         "sauce-connect-launcher": "^1.2.2",
+         "saucelabs": "^1.4.0",
+         "wd": "^1.4.0"
+       }
+     },
 +    "killable": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
 +      "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==",
 +      "dev": true
 +    },
      "kind-of": {
        "version": "6.0.2",
        "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
        "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==",
        "dev": true
      },
+     "lazy-cache": {
+       "version": "2.0.2",
+       "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz",
+       "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=",
+       "dev": true,
+       "requires": {
+         "set-getter": "^0.1.0"
+       }
+     },
+     "lazystream": {
+       "version": "1.0.0",
+       "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
+       "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
+       "dev": true,
+       "requires": {
+         "readable-stream": "^2.0.5"
+       }
+     },
 +    "lcid": {
 +      "version": "2.0.0",
 +      "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
 +      "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
 +      "dev": true,
 +      "requires": {
 +        "invert-kv": "^2.0.0"
 +      }
 +    },
      "lcov-parse": {
        "version": "0.0.10",
        "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz",
          "parse-json": "^2.2.0",
          "pify": "^2.0.0",
          "strip-bom": "^3.0.0"
+       },
+       "dependencies": {
+         "graceful-fs": {
+           "version": "4.1.15",
+           "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
+           "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==",
+           "dev": true
+         },
+         "strip-bom": {
+           "version": "3.0.0",
+           "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+           "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+           "dev": true
+         }
        }
      },
-       },
-       "dependencies": {
-         "json5": {
-           "version": "0.5.1",
-           "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
-           "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
-           "dev": true
-         }
 +    "loader-runner": {
 +      "version": "2.3.1",
 +      "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz",
 +      "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==",
 +      "dev": true
 +    },
 +    "loader-utils": {
 +      "version": "1.1.0",
 +      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz",
 +      "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
 +      "dev": true,
 +      "requires": {
 +        "big.js": "^3.1.3",
 +        "emojis-list": "^2.0.0",
 +        "json5": "^0.5.0"
 +      }
 +    },
      "locate-path": {
        "version": "2.0.0",
        "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
          "signal-exit": "^3.0.0"
        }
      },
-       "version": "2.2.4",
-       "resolved": "http://registry.npmjs.org/lru-cache/-/lru-cache-2.2.4.tgz",
-       "integrity": "sha1-bGWGGb7PFAMdDQtZSxYELOTcBj0=",
-       "dev": true
 +    "lru-cache": {
++      "version": "4.1.5",
++      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
++      "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
++      "dev": true,
++      "requires": {
++        "pseudomap": "^1.0.2",
++        "yallist": "^2.1.2"
++      }
 +    },
      "magic-string": {
-       "version": "0.25.1",
-       "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.1.tgz",
-       "integrity": "sha512-sCuTz6pYom8Rlt4ISPFn6wuFodbKMIHUMv4Qko9P17dpxb7s52KJTmRuZZqHdGmLCK9AOcDare039nRIcfdkEg==",
+       "version": "0.22.5",
+       "resolved": "http://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz",
+       "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==",
        "dev": true,
        "requires": {
-         "sourcemap-codec": "^1.4.1"
+         "vlq": "^0.2.2"
        }
      },
 +    "make-dir": {
 +      "version": "1.3.0",
 +      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
 +      "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
 +      "dev": true,
 +      "requires": {
 +        "pify": "^3.0.0"
 +      },
 +      "dependencies": {
 +        "pify": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
 +          "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
 +          "dev": true
 +        }
 +      }
 +    },
 +    "map-age-cleaner": {
 +      "version": "0.1.3",
 +      "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
 +      "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
 +      "dev": true,
 +      "requires": {
 +        "p-defer": "^1.0.0"
 +      }
 +    },
      "map-cache": {
        "version": "0.2.2",
        "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
        "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
        "dev": true
      },
 +    "mem": {
 +      "version": "4.0.0",
 +      "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz",
 +      "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==",
 +      "dev": true,
 +      "requires": {
 +        "map-age-cleaner": "^0.1.1",
 +        "mimic-fn": "^1.0.0",
 +        "p-is-promise": "^1.1.0"
 +      }
 +    },
 +    "memory-fs": {
 +      "version": "0.4.1",
 +      "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
 +      "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
 +      "dev": true,
 +      "requires": {
 +        "errno": "^0.1.3",
 +        "readable-stream": "^2.0.1"
 +      }
 +    },
      "meow": {
        "version": "3.7.0",
-       "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+       "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
        "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
        "dev": true,
        "requires": {
          "read-pkg-up": "^1.0.1",
          "redent": "^1.0.0",
          "trim-newlines": "^1.0.0"
-       },
-       "dependencies": {
-         "load-json-file": {
-           "version": "1.1.0",
-           "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
-           "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
-           "dev": true,
-           "requires": {
-             "graceful-fs": "^4.1.2",
-             "parse-json": "^2.2.0",
-             "pify": "^2.0.0",
-             "pinkie-promise": "^2.0.0",
-             "strip-bom": "^2.0.0"
-           }
-         },
-         "path-type": {
-           "version": "1.1.0",
-           "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
-           "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
-           "dev": true,
-           "requires": {
-             "graceful-fs": "^4.1.2",
-             "pify": "^2.0.0",
-             "pinkie-promise": "^2.0.0"
-           }
-         },
-         "read-pkg": {
-           "version": "1.1.0",
-           "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
-           "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
-           "dev": true,
-           "requires": {
-             "load-json-file": "^1.0.0",
-             "normalize-package-data": "^2.3.2",
-             "path-type": "^1.0.0"
-           }
-         },
-         "read-pkg-up": {
-           "version": "1.0.1",
-           "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
-           "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
-           "dev": true,
-           "requires": {
-             "find-up": "^1.0.0",
-             "read-pkg": "^1.0.0"
-           }
-         },
-         "strip-bom": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
-           "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
-           "dev": true,
-           "requires": {
-             "is-utf8": "^0.2.0"
-           }
-         }
        }
      },
 +    "merge-descriptors": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
 +      "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=",
 +      "dev": true
 +    },
      "merge-source-map": {
        "version": "1.0.4",
        "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz",
        "dev": true,
        "requires": {
          "readable-stream": "^2.0.1"
+       },
+       "dependencies": {
+         "isarray": {
+           "version": "1.0.0",
+           "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+           "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+           "dev": true
+         },
+         "readable-stream": {
+           "version": "2.3.6",
+           "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
+           "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
+           "dev": true,
+           "requires": {
+             "core-util-is": "~1.0.0",
+             "inherits": "~2.0.3",
+             "isarray": "~1.0.0",
+             "process-nextick-args": "~2.0.0",
+             "safe-buffer": "~5.1.1",
+             "string_decoder": "~1.1.1",
+             "util-deprecate": "~1.0.1"
+           }
+         },
+         "string_decoder": {
+           "version": "1.1.1",
+           "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+           "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+           "dev": true,
+           "requires": {
+             "safe-buffer": "~5.1.0"
+           }
+         }
        }
      },
 +    "methods": {
 +      "version": "1.1.2",
 +      "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
 +      "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
 +      "dev": true
 +    },
      "micromatch": {
        "version": "3.1.10",
        "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
          }
        }
      },
 +    "move-concurrently": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
 +      "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
 +      "dev": true,
 +      "requires": {
 +        "aproba": "^1.1.1",
 +        "copy-concurrently": "^1.0.0",
 +        "fs-write-stream-atomic": "^1.0.8",
 +        "mkdirp": "^0.5.1",
 +        "rimraf": "^2.5.4",
 +        "run-queue": "^1.0.3"
 +      }
 +    },
      "ms": {
-       "version": "2.1.1",
-       "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
-       "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+       "version": "2.0.0",
+       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+       "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
        "dev": true
      },
 +    "multicast-dns": {
 +      "version": "6.2.3",
 +      "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz",
 +      "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==",
 +      "dev": true,
 +      "requires": {
 +        "dns-packet": "^1.3.1",
 +        "thunky": "^1.0.2"
 +      }
 +    },
 +    "multicast-dns-service-types": {
 +      "version": "1.1.0",
 +      "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
 +      "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
 +      "dev": true
 +    },
      "mute-stream": {
        "version": "0.0.7",
        "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
        "dev": true,
        "requires": {
          "semver": "^5.4.1"
+       },
+       "dependencies": {
+         "semver": {
+           "version": "5.6.0",
+           "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
+           "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
+           "dev": true
+         }
        }
      },
-         "punycode": {
-           "version": "1.4.1",
-           "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
-           "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
-           "dev": true
 +    "node-forge": {
 +      "version": "0.7.5",
 +      "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz",
 +      "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==",
 +      "dev": true
 +    },
 +    "node-libs-browser": {
 +      "version": "2.1.0",
 +      "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz",
 +      "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==",
 +      "dev": true,
 +      "requires": {
 +        "assert": "^1.1.1",
 +        "browserify-zlib": "^0.2.0",
 +        "buffer": "^4.3.0",
 +        "console-browserify": "^1.1.0",
 +        "constants-browserify": "^1.0.0",
 +        "crypto-browserify": "^3.11.0",
 +        "domain-browser": "^1.1.1",
 +        "events": "^1.0.0",
 +        "https-browserify": "^1.0.0",
 +        "os-browserify": "^0.3.0",
 +        "path-browserify": "0.0.0",
 +        "process": "^0.11.10",
 +        "punycode": "^1.2.4",
 +        "querystring-es3": "^0.2.0",
 +        "readable-stream": "^2.3.3",
 +        "stream-browserify": "^2.0.1",
 +        "stream-http": "^2.7.2",
 +        "string_decoder": "^1.0.0",
 +        "timers-browserify": "^2.0.4",
 +        "tty-browserify": "0.0.0",
 +        "url": "^0.11.0",
 +        "util": "^0.10.3",
 +        "vm-browserify": "0.0.4"
 +      },
 +      "dependencies": {
++        "buffer": {
++          "version": "4.9.1",
++          "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
++          "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
++          "dev": true,
++          "requires": {
++            "base64-js": "^1.0.2",
++            "ieee754": "^1.1.4",
++            "isarray": "^1.0.0"
++          }
 +        }
 +      }
 +    },
      "node-releases": {
-       "version": "1.0.5",
-       "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.0.5.tgz",
-       "integrity": "sha512-Ky7q0BO1BBkG/rQz6PkEZ59rwo+aSfhczHP1wwq8IowoVdN/FpiP7qp0XW0P2+BVCWe5fQUBozdbVd54q1RbCQ==",
+       "version": "1.0.1",
+       "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.0.1.tgz",
+       "integrity": "sha512-/kOv7jA26OBwkBPx6B9xR/FzJzs2OkMtcWjS8uPQRMHE7IELdSfN0QKZvmiWnf5P1QJ8oYq/e9qe0aCZISB1pQ==",
        "dev": true,
        "requires": {
          "semver": "^5.3.0"
          "wordwrap": "~1.0.0"
        }
      },
 +    "original": {
 +      "version": "1.0.2",
 +      "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
 +      "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
 +      "dev": true,
 +      "requires": {
 +        "url-parse": "^1.4.3"
 +      }
 +    },
 +    "os-browserify": {
 +      "version": "0.3.0",
 +      "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
 +      "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
 +      "dev": true
 +    },
      "os-homedir": {
        "version": "1.0.2",
-       "resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
+       "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
        "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
        "dev": true
      },
 +    "os-locale": {
 +      "version": "3.0.1",
 +      "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz",
 +      "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==",
 +      "dev": true,
 +      "requires": {
 +        "execa": "^0.10.0",
 +        "lcid": "^2.0.0",
 +        "mem": "^4.0.0"
 +      },
 +      "dependencies": {
++        "cross-spawn": {
++          "version": "6.0.5",
++          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
++          "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
++          "dev": true,
++          "requires": {
++            "nice-try": "^1.0.4",
++            "path-key": "^2.0.1",
++            "semver": "^5.5.0",
++            "shebang-command": "^1.2.0",
++            "which": "^1.2.9"
++          }
++        },
 +        "execa": {
 +          "version": "0.10.0",
 +          "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
 +          "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==",
 +          "dev": true,
 +          "requires": {
 +            "cross-spawn": "^6.0.0",
 +            "get-stream": "^3.0.0",
 +            "is-stream": "^1.1.0",
 +            "npm-run-path": "^2.0.0",
 +            "p-finally": "^1.0.0",
 +            "signal-exit": "^3.0.0",
 +            "strip-eof": "^1.0.0"
 +          }
++        },
++        "semver": {
++          "version": "5.6.0",
++          "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
++          "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
++          "dev": true
 +        }
 +      }
 +    },
      "os-tmpdir": {
        "version": "1.0.2",
-       "resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+       "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
        "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
        "dev": true
      },
        "dev": true
      },
      "path-parse": {
-       "version": "1.0.6",
-       "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
-       "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+       "version": "1.0.5",
+       "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
+       "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
        "dev": true
      },
 +    "path-to-regexp": {
 +      "version": "0.1.7",
 +      "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
 +      "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=",
 +      "dev": true
 +    },
      "path-type": {
-       "version": "2.0.0",
-       "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
-       "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
+       "version": "1.1.0",
+       "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
+       "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
        "dev": true,
        "requires": {
-         "pify": "^2.0.0"
+         "graceful-fs": "^4.1.2",
+         "pify": "^2.0.0",
+         "pinkie-promise": "^2.0.0"
+       },
+       "dependencies": {
+         "graceful-fs": {
+           "version": "4.1.11",
+           "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
+           "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+           "dev": true
+         }
        }
      },
 +    "pbkdf2": {
 +      "version": "3.0.17",
 +      "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz",
 +      "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==",
 +      "dev": true,
 +      "requires": {
 +        "create-hash": "^1.1.2",
 +        "create-hmac": "^1.1.4",
 +        "ripemd160": "^2.0.1",
 +        "safe-buffer": "^5.0.1",
 +        "sha.js": "^2.4.8"
 +      }
 +    },
      "performance-now": {
        "version": "2.1.0",
        "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
        "requires": {
          "end-of-stream": "^1.1.0",
          "once": "^1.3.1"
+       },
+       "dependencies": {
+         "end-of-stream": {
+           "version": "1.4.1",
+           "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
+           "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
+           "dev": true,
+           "requires": {
+             "once": "^1.4.0"
+           }
+         }
        }
      },
 +    "pumpify": {
 +      "version": "1.5.1",
 +      "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
 +      "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
 +      "dev": true,
 +      "requires": {
 +        "duplexify": "^3.6.0",
 +        "inherits": "^2.0.3",
 +        "pump": "^2.0.0"
 +      }
 +    },
      "punycode": {
-       "version": "2.1.1",
-       "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
-       "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+       "version": "1.4.1",
+       "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
+       "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
+       "dev": true
+     },
+     "q": {
+       "version": "1.5.1",
+       "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
+       "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
        "dev": true
      },
      "qjobs": {
          "tough-cookie": "~2.4.3",
          "tunnel-agent": "^0.6.0",
          "uuid": "^3.3.2"
+       },
+       "dependencies": {
+         "ajv": {
+           "version": "5.5.2",
+           "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
+           "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
+           "dev": true,
+           "requires": {
+             "co": "^4.6.0",
+             "fast-deep-equal": "^1.0.0",
+             "fast-json-stable-stringify": "^2.0.0",
+             "json-schema-traverse": "^0.3.0"
+           }
+         },
+         "assert-plus": {
+           "version": "1.0.0",
+           "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+           "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+           "dev": true
+         },
+         "aws-sign2": {
+           "version": "0.7.0",
+           "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+           "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
+           "dev": true
+         },
+         "aws4": {
+           "version": "1.8.0",
+           "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz",
+           "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==",
+           "dev": true
+         },
+         "caseless": {
+           "version": "0.12.0",
+           "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+           "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
+           "dev": true
+         },
+         "extend": {
+           "version": "3.0.2",
+           "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+           "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+           "dev": true
+         },
+         "form-data": {
+           "version": "2.3.3",
+           "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+           "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+           "dev": true,
+           "requires": {
+             "asynckit": "^0.4.0",
+             "combined-stream": "^1.0.6",
+             "mime-types": "^2.1.12"
+           }
+         },
+         "har-validator": {
+           "version": "5.1.0",
+           "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz",
+           "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==",
+           "dev": true,
+           "requires": {
+             "ajv": "^5.3.0",
+             "har-schema": "^2.0.0"
+           }
+         },
+         "http-signature": {
+           "version": "1.2.0",
+           "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+           "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+           "dev": true,
+           "requires": {
+             "assert-plus": "^1.0.0",
+             "jsprim": "^1.2.2",
+             "sshpk": "^1.7.0"
+           }
+         },
+         "mime-db": {
+           "version": "1.37.0",
+           "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz",
+           "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==",
+           "dev": true
+         },
+         "mime-types": {
+           "version": "2.1.21",
+           "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz",
+           "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==",
+           "dev": true,
+           "requires": {
+             "mime-db": "~1.37.0"
+           }
+         },
+         "oauth-sign": {
+           "version": "0.9.0",
+           "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+           "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
+           "dev": true
+         },
+         "qs": {
+           "version": "6.5.2",
+           "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
+           "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
+           "dev": true
+         },
+         "tough-cookie": {
+           "version": "2.4.3",
+           "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz",
+           "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==",
+           "dev": true,
+           "requires": {
+             "psl": "^1.1.24",
+             "punycode": "^1.4.1"
+           }
+         },
+         "tunnel-agent": {
+           "version": "0.6.0",
+           "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+           "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
+           "dev": true,
+           "requires": {
+             "safe-buffer": "^5.0.1"
+           }
+         },
+         "uuid": {
+           "version": "3.3.2",
+           "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz",
+           "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
+           "dev": true
+         }
        }
      },
 +    "require-directory": {
 +      "version": "2.1.1",
 +      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
 +      "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
 +      "dev": true
 +    },
 +    "require-main-filename": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
 +      "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
 +      "dev": true
 +    },
      "require-uncached": {
        "version": "1.0.3",
-       "resolved": "http://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
+       "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
        "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=",
        "dev": true,
        "requires": {
          "path-parse": "^1.0.5"
        }
      },
 +    "resolve-cwd": {
 +      "version": "2.0.0",
 +      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz",
 +      "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=",
 +      "dev": true,
 +      "requires": {
 +        "resolve-from": "^3.0.0"
 +      },
 +      "dependencies": {
 +        "resolve-from": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
 +          "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
 +          "dev": true
 +        }
 +      }
 +    },
+     "resolve-dir": {
+       "version": "0.1.1",
+       "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz",
+       "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=",
+       "dev": true,
+       "requires": {
+         "expand-tilde": "^1.2.2",
+         "global-modules": "^0.2.3"
+       }
+     },
      "resolve-from": {
        "version": "1.0.1",
        "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz",
          "glob": "^7.0.5"
        }
      },
 +    "ripemd160": {
 +      "version": "2.0.2",
 +      "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
 +      "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
 +      "dev": true,
 +      "requires": {
 +        "hash-base": "^3.0.0",
 +        "inherits": "^2.0.1"
 +      }
 +    },
      "rollup": {
-       "version": "0.67.3",
-       "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.67.3.tgz",
-       "integrity": "sha512-TyNQCz97rKuVVbsKUTXfwIjV7UljWyTVd7cTMuE+aqlQ7WJslkYF5QaYGjMLR2BlQtUOO5CAxSVnpQ55iYp5jg==",
+       "version": "0.67.0",
+       "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.67.0.tgz",
+       "integrity": "sha512-p34buXxArhwv9ieTdHvdhdo65Cbig68s/Z8llbZuiX5e+3zCqnBF02Ck9IH0tECrmvvrJVMws32Ry84hTnS1Tw==",
        "dev": true,
        "requires": {
          "@types/estree": "0.0.39",
          "jest-worker": "^23.2.0",
          "serialize-javascript": "^1.5.0",
          "uglify-js": "^3.4.9"
+       },
+       "dependencies": {
+         "commander": {
+           "version": "2.17.1",
+           "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
+           "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
+           "dev": true
+         },
+         "source-map": {
+           "version": "0.6.1",
+           "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+           "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+           "dev": true
+         },
+         "uglify-js": {
+           "version": "3.4.9",
+           "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz",
+           "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==",
+           "dev": true,
+           "requires": {
+             "commander": "~2.17.1",
+             "source-map": "~0.6.1"
+           }
+         }
        }
      },
 +    "rollup-plugin-uglify-es": {
 +      "version": "0.0.1",
 +      "resolved": "https://registry.npmjs.org/rollup-plugin-uglify-es/-/rollup-plugin-uglify-es-0.0.1.tgz",
 +      "integrity": "sha1-5FZE8raFpZq9uTY0ByB6A6e1qbc=",
 +      "dev": true,
 +      "requires": {
 +        "uglify-es": "3.0.3"
 +      },
 +      "dependencies": {
 +        "commander": {
 +          "version": "2.9.0",
 +          "resolved": "http://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
 +          "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
 +          "dev": true,
 +          "requires": {
 +            "graceful-readlink": ">= 1.0.0"
 +          }
 +        },
 +        "uglify-es": {
 +          "version": "3.0.3",
 +          "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.0.3.tgz",
 +          "integrity": "sha1-Y8yEqpRos0lzpIh3h8ZMAaiodXY=",
 +          "dev": true,
 +          "requires": {
 +            "commander": "~2.9.0",
 +            "source-map": "~0.5.1",
 +            "uglify-to-browserify": "~1.0.0"
 +          }
 +        }
 +      }
 +    },
      "rollup-pluginutils": {
        "version": "2.3.3",
        "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.3.tgz",
        "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
        "dev": true
      },
-       "version": "1.0.0",
-       "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
-       "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
 +    "schema-utils": {
-         "ajv-errors": "^1.0.0",
++      "version": "0.4.7",
++      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz",
++      "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==",
 +      "dev": true,
 +      "requires": {
 +        "ajv": "^6.1.0",
 +        "ajv-keywords": "^3.1.0"
 +      }
 +    },
 +    "select-hose": {
 +      "version": "2.0.0",
 +      "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
 +      "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=",
 +      "dev": true
 +    },
 +    "selfsigned": {
 +      "version": "1.10.4",
 +      "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz",
 +      "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==",
 +      "dev": true,
 +      "requires": {
 +        "node-forge": "0.7.5"
 +      }
 +    },
      "semver": {
-       "version": "5.6.0",
-       "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
-       "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
+       "version": "4.3.6",
+       "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
+       "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=",
        "dev": true
      },
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
 +    "send": {
 +      "version": "0.16.2",
 +      "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
 +      "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
 +      "dev": true,
 +      "requires": {
 +        "debug": "2.6.9",
 +        "depd": "~1.1.2",
 +        "destroy": "~1.0.4",
 +        "encodeurl": "~1.0.2",
 +        "escape-html": "~1.0.3",
 +        "etag": "~1.8.1",
 +        "fresh": "0.5.2",
 +        "http-errors": "~1.6.2",
 +        "mime": "1.4.1",
 +        "ms": "2.0.0",
 +        "on-finished": "~2.3.0",
 +        "range-parser": "~1.2.0",
 +        "statuses": "~1.4.0"
 +      },
 +      "dependencies": {
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         },
 +        "mime": {
 +          "version": "1.4.1",
 +          "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
 +          "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==",
 +          "dev": true
 +        },
 +        "statuses": {
 +          "version": "1.4.0",
 +          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
 +          "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==",
 +          "dev": true
 +        }
 +      }
 +    },
      "serialize-javascript": {
        "version": "1.5.0",
        "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz",
        "integrity": "sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ==",
        "dev": true
      },
-       },
-       "dependencies": {
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         }
 +    "serve-index": {
 +      "version": "1.9.1",
 +      "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
 +      "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
 +      "dev": true,
 +      "requires": {
 +        "accepts": "~1.3.4",
 +        "batch": "0.6.1",
 +        "debug": "2.6.9",
 +        "escape-html": "~1.0.3",
 +        "http-errors": "~1.6.2",
 +        "mime-types": "~2.1.17",
 +        "parseurl": "~1.3.2"
 +      }
 +    },
 +    "serve-static": {
 +      "version": "1.13.2",
 +      "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
 +      "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==",
 +      "dev": true,
 +      "requires": {
 +        "encodeurl": "~1.0.2",
 +        "escape-html": "~1.0.3",
 +        "parseurl": "~1.3.2",
 +        "send": "0.16.2"
 +      }
 +    },
      "set-blocking": {
        "version": "2.0.0",
        "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
          }
        }
      },
 +    "sockjs": {
 +      "version": "0.3.19",
 +      "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz",
 +      "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==",
 +      "dev": true,
 +      "requires": {
 +        "faye-websocket": "^0.10.0",
 +        "uuid": "^3.0.1"
 +      }
 +    },
 +    "sockjs-client": {
 +      "version": "1.3.0",
 +      "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz",
 +      "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==",
 +      "dev": true,
 +      "requires": {
 +        "debug": "^3.2.5",
 +        "eventsource": "^1.0.7",
 +        "faye-websocket": "~0.11.1",
 +        "inherits": "^2.0.3",
 +        "json3": "^3.3.2",
 +        "url-parse": "^1.4.3"
 +      },
 +      "dependencies": {
 +        "debug": {
 +          "version": "3.2.6",
 +          "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
 +          "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
 +          "dev": true,
 +          "requires": {
 +            "ms": "^2.1.1"
 +          }
 +        },
 +        "faye-websocket": {
 +          "version": "0.11.1",
 +          "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz",
 +          "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=",
 +          "dev": true,
 +          "requires": {
 +            "websocket-driver": ">=0.5.1"
 +          }
++        },
++        "ms": {
++          "version": "2.1.1",
++          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
++          "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
++          "dev": true
 +        }
 +      }
 +    },
 +    "source-list-map": {
 +      "version": "2.0.1",
 +      "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
 +      "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
 +      "dev": true
 +    },
      "source-map": {
        "version": "0.5.7",
        "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
        }
      },
      "spdx-license-ids": {
-       "version": "3.0.2",
-       "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz",
-       "integrity": "sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg==",
+       "version": "3.0.0",
+       "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz",
+       "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==",
        "dev": true
      },
-       },
-       "dependencies": {
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         }
 +    "spdy": {
 +      "version": "3.4.7",
 +      "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz",
 +      "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=",
 +      "dev": true,
 +      "requires": {
 +        "debug": "^2.6.8",
 +        "handle-thing": "^1.2.5",
 +        "http-deceiver": "^1.2.7",
 +        "safe-buffer": "^5.0.1",
 +        "select-hose": "^2.0.0",
 +        "spdy-transport": "^2.0.18"
-       },
-       "dependencies": {
-         "debug": {
-           "version": "2.6.9",
-           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-           "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-           "dev": true,
-           "requires": {
-             "ms": "2.0.0"
-           }
-         },
-         "ms": {
-           "version": "2.0.0",
-           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
-           "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
-           "dev": true
-         }
 +      }
 +    },
 +    "spdy-transport": {
 +      "version": "2.1.1",
 +      "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz",
 +      "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==",
 +      "dev": true,
 +      "requires": {
 +        "debug": "^2.6.8",
 +        "detect-node": "^2.0.3",
 +        "hpack.js": "^2.1.6",
 +        "obuf": "^1.1.1",
 +        "readable-stream": "^2.2.9",
 +        "safe-buffer": "^5.0.1",
 +        "wbuf": "^1.7.2"
 +      }
 +    },
      "split-string": {
        "version": "3.1.0",
        "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
          "jsbn": "~0.1.0",
          "safer-buffer": "^2.0.2",
          "tweetnacl": "~0.14.0"
+       },
+       "dependencies": {
+         "assert-plus": {
+           "version": "1.0.0",
+           "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+           "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+           "dev": true
+         }
        }
      },
 +    "ssri": {
 +      "version": "6.0.1",
 +      "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz",
 +      "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==",
 +      "dev": true,
 +      "requires": {
 +        "figgy-pudding": "^3.5.1"
 +      }
 +    },
      "static-eval": {
        "version": "2.0.0",
        "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.0.tgz",
        }
      },
      "table": {
-       "version": "5.1.1",
-       "resolved": "https://registry.npmjs.org/table/-/table-5.1.1.tgz",
-       "integrity": "sha512-NUjapYb/qd4PeFW03HnAuOJ7OMcBkJlqeClWxeNlQ0lXGSb52oZXGzkO0/I0ARegQ2eUT1g2VDJH0eUxDRcHmw==",
+       "version": "5.1.0",
+       "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz",
+       "integrity": "sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==",
        "dev": true,
        "requires": {
-         "ajv": "^6.6.1",
-         "lodash": "^4.17.11",
-         "slice-ansi": "2.0.0",
+         "ajv": "^6.5.3",
+         "lodash": "^4.17.10",
+         "slice-ansi": "1.0.0",
          "string-width": "^2.1.1"
+       },
+       "dependencies": {
+         "ansi-regex": {
+           "version": "3.0.0",
+           "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
+           "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
+           "dev": true
+         },
+         "is-fullwidth-code-point": {
+           "version": "2.0.0",
+           "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+           "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+           "dev": true
+         },
+         "string-width": {
+           "version": "2.1.1",
+           "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
+           "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
+           "dev": true,
+           "requires": {
+             "is-fullwidth-code-point": "^2.0.0",
+             "strip-ansi": "^4.0.0"
+           }
+         },
+         "strip-ansi": {
+           "version": "4.0.0",
+           "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
+           "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
+           "dev": true,
+           "requires": {
+             "ansi-regex": "^3.0.0"
+           }
+         }
        }
      },
 +    "tapable": {
 +      "version": "1.1.1",
 +      "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.1.tgz",
 +      "integrity": "sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA==",
 +      "dev": true
 +    },
      "tar-fs": {
        "version": "1.16.3",
        "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-1.16.3.tgz",
          }
        }
      },
 +    "terser-webpack-plugin": {
 +      "version": "1.1.0",
 +      "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz",
 +      "integrity": "sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA==",
 +      "dev": true,
 +      "requires": {
 +        "cacache": "^11.0.2",
 +        "find-cache-dir": "^2.0.0",
 +        "schema-utils": "^1.0.0",
 +        "serialize-javascript": "^1.4.0",
 +        "source-map": "^0.6.1",
 +        "terser": "^3.8.1",
 +        "webpack-sources": "^1.1.0",
 +        "worker-farm": "^1.5.2"
 +      },
 +      "dependencies": {
++        "schema-utils": {
++          "version": "1.0.0",
++          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
++          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
++          "dev": true,
++          "requires": {
++            "ajv": "^6.1.0",
++            "ajv-errors": "^1.0.0",
++            "ajv-keywords": "^3.1.0"
++          }
++        },
 +        "source-map": {
 +          "version": "0.6.1",
 +          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
 +          "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
 +          "dev": true
 +        }
 +      }
 +    },
      "text-table": {
        "version": "0.2.0",
        "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
        "integrity": "sha1-WvIvGMBSoACkjXuCxenC4v7tpyg=",
        "dev": true
      },
 +    "url-parse": {
 +      "version": "1.4.4",
 +      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz",
 +      "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==",
 +      "dev": true,
 +      "requires": {
 +        "querystringify": "^2.0.0",
 +        "requires-port": "^1.0.0"
 +      }
 +    },
      "use": {
-       "version": "3.1.1",
-       "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
-       "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
-       "dev": true
+       "version": "3.1.0",
+       "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz",
+       "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==",
+       "dev": true,
+       "requires": {
+         "kind-of": "^6.0.2"
+       }
      },
      "useragent": {
        "version": "2.2.1",
        "requires": {
          "lru-cache": "2.2.x",
          "tmp": "0.0.x"
+       },
+       "dependencies": {
+         "lru-cache": {
+           "version": "2.2.4",
+           "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.2.4.tgz",
+           "integrity": "sha1-bGWGGb7PFAMdDQtZSxYELOTcBj0=",
+           "dev": true
+         }
        }
      },
 +    "util": {
 +      "version": "0.10.4",
 +      "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
 +      "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
 +      "dev": true,
 +      "requires": {
 +        "inherits": "2.0.3"
 +      }
 +    },
      "util-deprecate": {
        "version": "1.0.2",
        "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
        "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
        "dev": true
      },
 +    "v8-compile-cache": {
 +      "version": "2.0.2",
 +      "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz",
 +      "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==",
 +      "dev": true
 +    },
      "validate-npm-package-license": {
-       "version": "3.0.4",
-       "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
-       "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+       "version": "3.0.3",
+       "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
+       "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
        "dev": true,
        "requires": {
          "spdx-correct": "^3.0.0",
          "spdx-expression-parse": "^3.0.0"
        }
      },
+     "vargs": {
+       "version": "0.1.0",
+       "resolved": "https://registry.npmjs.org/vargs/-/vargs-0.1.0.tgz",
+       "integrity": "sha1-a2GE2mUgzDIEzhtAfKwm2SYJ6/8=",
+       "dev": true
+     },
 +    "vary": {
 +      "version": "1.1.2",
 +      "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
 +      "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
 +      "dev": true
 +    },
      "verror": {
        "version": "1.10.0",
        "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
        "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=",
        "dev": true
      },
-         "acorn": {
-           "version": "5.7.3",
-           "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
-           "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
-           "dev": true
-         },
 +    "watchpack": {
 +      "version": "1.6.0",
 +      "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz",
 +      "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==",
 +      "dev": true,
 +      "requires": {
 +        "chokidar": "^2.0.2",
 +        "graceful-fs": "^4.1.2",
 +        "neo-async": "^2.5.0"
 +      }
 +    },
 +    "wbuf": {
 +      "version": "1.7.3",
 +      "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz",
 +      "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==",
 +      "dev": true,
 +      "requires": {
 +        "minimalistic-assert": "^1.0.0"
 +      }
 +    },
+     "wd": {
+       "version": "1.11.0",
+       "resolved": "https://registry.npmjs.org/wd/-/wd-1.11.0.tgz",
+       "integrity": "sha512-h2EBfJvmsWocIjOOg5BsHh9IJKrqZDG4Az4jEZhFugEH7sOPcX6feZQ30aFuktqDI0jquarZJmNpA6V0A0Q7Mg==",
+       "dev": true,
+       "requires": {
+         "archiver": "2.1.1",
+         "async": "2.0.1",
+         "lodash": "4.17.10",
+         "mkdirp": "^0.5.1",
+         "q": "1.4.1",
+         "request": "2.85.0",
+         "vargs": "0.1.0"
+       },
+       "dependencies": {
+         "async": {
+           "version": "2.0.1",
+           "resolved": "http://registry.npmjs.org/async/-/async-2.0.1.tgz",
+           "integrity": "sha1-twnMAoCpw28J9FNr6CPIOKkEniU=",
+           "dev": true,
+           "requires": {
+             "lodash": "^4.8.0"
+           }
+         },
+         "lodash": {
+           "version": "4.17.10",
+           "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+           "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+           "dev": true
+         },
+         "q": {
+           "version": "1.4.1",
+           "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz",
+           "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=",
+           "dev": true
+         },
+         "request": {
+           "version": "2.85.0",
+           "resolved": "http://registry.npmjs.org/request/-/request-2.85.0.tgz",
+           "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==",
+           "dev": true,
+           "requires": {
+             "aws-sign2": "~0.7.0",
+             "aws4": "^1.6.0",
+             "caseless": "~0.12.0",
+             "combined-stream": "~1.0.5",
+             "extend": "~3.0.1",
+             "forever-agent": "~0.6.1",
+             "form-data": "~2.3.1",
+             "har-validator": "~5.0.3",
+             "hawk": "~6.0.2",
+             "http-signature": "~1.2.0",
+             "is-typedarray": "~1.0.0",
+             "isstream": "~0.1.2",
+             "json-stringify-safe": "~5.0.1",
+             "mime-types": "~2.1.17",
+             "oauth-sign": "~0.8.2",
+             "performance-now": "^2.1.0",
+             "qs": "~6.5.1",
+             "safe-buffer": "^5.1.1",
+             "stringstream": "~0.0.5",
+             "tough-cookie": "~2.3.3",
+             "tunnel-agent": "^0.6.0",
+             "uuid": "^3.1.0"
+           }
+         }
+       }
+     },
 +    "webpack": {
 +      "version": "4.26.1",
 +      "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.26.1.tgz",
 +      "integrity": "sha512-i2oOvEvuvLLSuSCkdVrknaxAhtUZ9g+nLSoHCWV0gDzqGX2DXaCrMmMUpbRsTSSLrUqAI56PoEiyMUZIZ1msug==",
 +      "dev": true,
 +      "requires": {
 +        "@webassemblyjs/ast": "1.7.11",
 +        "@webassemblyjs/helper-module-context": "1.7.11",
 +        "@webassemblyjs/wasm-edit": "1.7.11",
 +        "@webassemblyjs/wasm-parser": "1.7.11",
 +        "acorn": "^5.6.2",
 +        "acorn-dynamic-import": "^3.0.0",
 +        "ajv": "^6.1.0",
 +        "ajv-keywords": "^3.1.0",
 +        "chrome-trace-event": "^1.0.0",
 +        "enhanced-resolve": "^4.1.0",
 +        "eslint-scope": "^4.0.0",
 +        "json-parse-better-errors": "^1.0.2",
 +        "loader-runner": "^2.3.0",
 +        "loader-utils": "^1.1.0",
 +        "memory-fs": "~0.4.1",
 +        "micromatch": "^3.1.8",
 +        "mkdirp": "~0.5.0",
 +        "neo-async": "^2.5.0",
 +        "node-libs-browser": "^2.0.0",
 +        "schema-utils": "^0.4.4",
 +        "tapable": "^1.1.0",
 +        "terser-webpack-plugin": "^1.1.0",
 +        "watchpack": "^1.5.0",
 +        "webpack-sources": "^1.3.0"
 +      },
 +      "dependencies": {
-         },
-         "schema-utils": {
-           "version": "0.4.7",
-           "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz",
-           "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==",
-           "dev": true,
-           "requires": {
-             "ajv": "^6.1.0",
-             "ajv-keywords": "^3.1.0"
-           }
 +        "eslint-scope": {
 +          "version": "4.0.0",
 +          "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz",
 +          "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==",
 +          "dev": true,
 +          "requires": {
 +            "esrecurse": "^4.1.0",
 +            "estraverse": "^4.1.1"
 +          }
-           "version": "2.1.1",
-           "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-           "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
 +        }
 +      }
 +    },
 +    "webpack-cli": {
 +      "version": "3.1.2",
 +      "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.2.tgz",
 +      "integrity": "sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ==",
 +      "dev": true,
 +      "requires": {
 +        "chalk": "^2.4.1",
 +        "cross-spawn": "^6.0.5",
 +        "enhanced-resolve": "^4.1.0",
 +        "global-modules-path": "^2.3.0",
 +        "import-local": "^2.0.0",
 +        "interpret": "^1.1.0",
 +        "loader-utils": "^1.1.0",
 +        "supports-color": "^5.5.0",
 +        "v8-compile-cache": "^2.0.2",
 +        "yargs": "^12.0.2"
++      },
++      "dependencies": {
++        "cross-spawn": {
++          "version": "6.0.5",
++          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
++          "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
++          "dev": true,
++          "requires": {
++            "nice-try": "^1.0.4",
++            "path-key": "^2.0.1",
++            "semver": "^5.5.0",
++            "shebang-command": "^1.2.0",
++            "which": "^1.2.9"
++          }
++        },
++        "semver": {
++          "version": "5.6.0",
++          "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
++          "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
++          "dev": true
++        }
 +      }
 +    },
 +    "webpack-dev-middleware": {
 +      "version": "3.4.0",
 +      "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz",
 +      "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==",
 +      "dev": true,
 +      "requires": {
 +        "memory-fs": "~0.4.1",
 +        "mime": "^2.3.1",
 +        "range-parser": "^1.0.3",
 +        "webpack-log": "^2.0.0"
 +      },
 +      "dependencies": {
 +        "mime": {
 +          "version": "2.4.0",
 +          "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz",
 +          "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==",
 +          "dev": true
 +        }
 +      }
 +    },
 +    "webpack-dev-server": {
 +      "version": "3.1.10",
 +      "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.10.tgz",
 +      "integrity": "sha512-RqOAVjfqZJtQcB0LmrzJ5y4Jp78lv9CK0MZ1YJDTaTmedMZ9PU9FLMQNrMCfVu8hHzaVLVOJKBlGEHMN10z+ww==",
 +      "dev": true,
 +      "requires": {
 +        "ansi-html": "0.0.7",
 +        "bonjour": "^3.5.0",
 +        "chokidar": "^2.0.0",
 +        "compression": "^1.5.2",
 +        "connect-history-api-fallback": "^1.3.0",
 +        "debug": "^3.1.0",
 +        "del": "^3.0.0",
 +        "express": "^4.16.2",
 +        "html-entities": "^1.2.0",
 +        "http-proxy-middleware": "~0.18.0",
 +        "import-local": "^2.0.0",
 +        "internal-ip": "^3.0.1",
 +        "ip": "^1.1.5",
 +        "killable": "^1.0.0",
 +        "loglevel": "^1.4.1",
 +        "opn": "^5.1.0",
 +        "portfinder": "^1.0.9",
 +        "schema-utils": "^1.0.0",
 +        "selfsigned": "^1.9.1",
 +        "serve-index": "^1.7.2",
 +        "sockjs": "0.3.19",
 +        "sockjs-client": "1.3.0",
 +        "spdy": "^3.4.1",
 +        "strip-ansi": "^3.0.0",
 +        "supports-color": "^5.1.0",
 +        "webpack-dev-middleware": "3.4.0",
 +        "webpack-log": "^2.0.0",
 +        "yargs": "12.0.2"
 +      },
 +      "dependencies": {
 +        "ansi-regex": {
-         "strip-ansi": {
-           "version": "3.0.1",
-           "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
-           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
++          "version": "3.0.0",
++          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
++          "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
 +          "dev": true
 +        },
 +        "camelcase": {
 +          "version": "4.1.0",
 +          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz",
 +          "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=",
 +          "dev": true
 +        },
 +        "debug": {
 +          "version": "3.2.6",
 +          "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
 +          "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
 +          "dev": true,
 +          "requires": {
 +            "ms": "^2.1.1"
 +          }
 +        },
 +        "decamelize": {
 +          "version": "2.0.0",
 +          "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz",
 +          "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==",
 +          "dev": true,
 +          "requires": {
 +            "xregexp": "4.0.0"
 +          }
 +        },
 +        "find-up": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
 +          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
 +          "dev": true,
 +          "requires": {
 +            "locate-path": "^3.0.0"
 +          }
 +        },
++        "is-fullwidth-code-point": {
++          "version": "2.0.0",
++          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
++          "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
++          "dev": true
++        },
 +        "locate-path": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
 +          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
 +          "dev": true,
 +          "requires": {
 +            "p-locate": "^3.0.0",
 +            "path-exists": "^3.0.0"
 +          }
 +        },
++        "ms": {
++          "version": "2.1.1",
++          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
++          "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
++          "dev": true
++        },
 +        "p-limit": {
 +          "version": "2.0.0",
 +          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz",
 +          "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==",
 +          "dev": true,
 +          "requires": {
 +            "p-try": "^2.0.0"
 +          }
 +        },
 +        "p-locate": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
 +          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
 +          "dev": true,
 +          "requires": {
 +            "p-limit": "^2.0.0"
 +          }
 +        },
 +        "p-try": {
 +          "version": "2.0.0",
 +          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
 +          "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
 +          "dev": true
 +        },
 +        "path-exists": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
 +          "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
 +          "dev": true
 +        },
-             "ansi-regex": "^2.0.0"
++        "schema-utils": {
++          "version": "1.0.0",
++          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
++          "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
 +          "dev": true,
 +          "requires": {
++            "ajv": "^6.1.0",
++            "ajv-errors": "^1.0.0",
++            "ajv-keywords": "^3.1.0"
++          }
++        },
++        "string-width": {
++          "version": "2.1.1",
++          "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
++          "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
++          "dev": true,
++          "requires": {
++            "is-fullwidth-code-point": "^2.0.0",
++            "strip-ansi": "^4.0.0"
++          },
++          "dependencies": {
++            "strip-ansi": {
++              "version": "4.0.0",
++              "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
++              "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
++              "dev": true,
++              "requires": {
++                "ansi-regex": "^3.0.0"
++              }
++            }
 +          }
 +        },
 +        "yargs": {
 +          "version": "12.0.2",
 +          "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz",
 +          "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==",
 +          "dev": true,
 +          "requires": {
 +            "cliui": "^4.0.0",
 +            "decamelize": "^2.0.0",
 +            "find-up": "^3.0.0",
 +            "get-caller-file": "^1.0.1",
 +            "os-locale": "^3.0.0",
 +            "require-directory": "^2.1.1",
 +            "require-main-filename": "^1.0.1",
 +            "set-blocking": "^2.0.0",
 +            "string-width": "^2.0.0",
 +            "which-module": "^2.0.0",
 +            "y18n": "^3.2.1 || ^4.0.0",
 +            "yargs-parser": "^10.1.0"
 +          }
 +        },
 +        "yargs-parser": {
 +          "version": "10.1.0",
 +          "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz",
 +          "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==",
 +          "dev": true,
 +          "requires": {
 +            "camelcase": "^4.1.0"
 +          }
 +        }
 +      }
 +    },
 +    "webpack-log": {
 +      "version": "2.0.0",
 +      "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz",
 +      "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==",
 +      "dev": true,
 +      "requires": {
 +        "ansi-colors": "^3.0.0",
 +        "uuid": "^3.3.2"
 +      }
 +    },
 +    "webpack-sources": {
 +      "version": "1.3.0",
 +      "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz",
 +      "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==",
 +      "dev": true,
 +      "requires": {
 +        "source-list-map": "^2.0.0",
 +        "source-map": "~0.6.1"
 +      },
 +      "dependencies": {
 +        "source-map": {
 +          "version": "0.6.1",
 +          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
 +          "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
 +          "dev": true
 +        }
 +      }
 +    },
 +    "websocket-driver": {
 +      "version": "0.7.0",
 +      "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz",
 +      "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=",
 +      "dev": true,
 +      "requires": {
 +        "http-parser-js": ">=0.4.0",
 +        "websocket-extensions": ">=0.1.1"
 +      }
 +    },
 +    "websocket-extensions": {
 +      "version": "0.1.3",
 +      "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz",
 +      "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
 +      "dev": true
 +    },
      "which": {
        "version": "1.3.1",
        "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
        "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
        "dev": true
      },
-       },
-       "dependencies": {
-         "ansi-regex": {
-           "version": "2.1.1",
-           "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-           "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
-           "dev": true
-         },
-         "is-fullwidth-code-point": {
-           "version": "1.0.0",
-           "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
-           "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
-           "dev": true,
-           "requires": {
-             "number-is-nan": "^1.0.0"
-           }
-         },
-         "string-width": {
-           "version": "1.0.2",
-           "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
-           "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
-           "dev": true,
-           "requires": {
-             "code-point-at": "^1.0.0",
-             "is-fullwidth-code-point": "^1.0.0",
-             "strip-ansi": "^3.0.0"
-           }
-         },
-         "strip-ansi": {
-           "version": "3.0.1",
-           "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
-           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
-           "dev": true,
-           "requires": {
-             "ansi-regex": "^2.0.0"
-           }
-         }
 +    "worker-farm": {
 +      "version": "1.6.0",
 +      "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz",
 +      "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==",
 +      "dev": true,
 +      "requires": {
 +        "errno": "~0.1.7"
 +      }
 +    },
 +    "wrap-ansi": {
 +      "version": "2.1.0",
 +      "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
 +      "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
 +      "dev": true,
 +      "requires": {
 +        "string-width": "^1.0.1",
 +        "strip-ansi": "^3.0.1"
 +      }
 +    },
      "wrappy": {
        "version": "1.0.2",
        "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
        "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
        "dev": true
      },
 +    "yargs": {
 +      "version": "12.0.5",
 +      "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz",
 +      "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==",
 +      "dev": true,
 +      "requires": {
 +        "cliui": "^4.0.0",
 +        "decamelize": "^1.2.0",
 +        "find-up": "^3.0.0",
 +        "get-caller-file": "^1.0.1",
 +        "os-locale": "^3.0.0",
 +        "require-directory": "^2.1.1",
 +        "require-main-filename": "^1.0.1",
 +        "set-blocking": "^2.0.0",
 +        "string-width": "^2.0.0",
 +        "which-module": "^2.0.0",
 +        "y18n": "^3.2.1 || ^4.0.0",
 +        "yargs-parser": "^11.1.1"
 +      },
 +      "dependencies": {
++        "ansi-regex": {
++          "version": "3.0.0",
++          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
++          "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
++          "dev": true
++        },
 +        "find-up": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
 +          "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
 +          "dev": true,
 +          "requires": {
 +            "locate-path": "^3.0.0"
 +          }
 +        },
++        "is-fullwidth-code-point": {
++          "version": "2.0.0",
++          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
++          "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
++          "dev": true
++        },
 +        "locate-path": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
 +          "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
 +          "dev": true,
 +          "requires": {
 +            "p-locate": "^3.0.0",
 +            "path-exists": "^3.0.0"
 +          }
 +        },
 +        "p-limit": {
 +          "version": "2.0.0",
 +          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz",
 +          "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==",
 +          "dev": true,
 +          "requires": {
 +            "p-try": "^2.0.0"
 +          }
 +        },
 +        "p-locate": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
 +          "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
 +          "dev": true,
 +          "requires": {
 +            "p-limit": "^2.0.0"
 +          }
 +        },
 +        "p-try": {
 +          "version": "2.0.0",
 +          "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
 +          "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
 +          "dev": true
 +        },
 +        "path-exists": {
 +          "version": "3.0.0",
 +          "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
 +          "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
 +          "dev": true
++        },
++        "string-width": {
++          "version": "2.1.1",
++          "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
++          "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
++          "dev": true,
++          "requires": {
++            "is-fullwidth-code-point": "^2.0.0",
++            "strip-ansi": "^4.0.0"
++          }
++        },
++        "strip-ansi": {
++          "version": "4.0.0",
++          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
++          "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
++          "dev": true,
++          "requires": {
++            "ansi-regex": "^3.0.0"
++          }
 +        }
 +      }
 +    },
 +    "yargs-parser": {
 +      "version": "11.1.1",
 +      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz",
 +      "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==",
 +      "dev": true,
 +      "requires": {
 +        "camelcase": "^5.0.0",
 +        "decamelize": "^1.2.0"
 +      },
 +      "dependencies": {
 +        "camelcase": {
 +          "version": "5.0.0",
 +          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
 +          "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==",
 +          "dev": true
 +        }
 +      }
 +    },
      "yeast": {
        "version": "0.1.2",
        "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
diff --cc package.json
index 8be4f30dbb944bada839fdb697c82fbe2e76ca3d,8fc5e37cce7d6dd43ed523218e757caa825089ad..d6bb693bbc08ec05733a3fbf93bcda61d478c6a2
    "license": "MIT",
    "typings": "./svg.js.d.ts",
    "scripts": {
-     "build": "npx eslint ./src --fix && npx rollup -c",
-     "rollup": "npx rollup -c",
-     "lint": "npx eslint ./src",
+     "build": "npm run fix && npm run rollup",
+     "build:polyfills": "npx rollup -c .config/rollup.polyfills.js",
+     "build:tests": "npx rollup -c rollup.tests.js",
      "fix": "npx eslint ./src --fix",
-     "test": "npx karma start .config/karma.conf.js --single-run",
-     "test:dots": "npx karma start .config/karma.conf.js --single-run --reporters dots",
-     "test:quick": "npx karma start .config/karma.quick.js",
+     "lint": "eslint ./src",
+     "rollup": "rollup -c .config/rollup.config.js",
      "server": "npx http-server ./ -d",
-     "demo": "run () { cd playgrounds; ../node_modules/.bin/webpack-dev-server --env=$1; }; run"
++    "demo": "run () { cd playgrounds; ../node_modules/.bin/webpack-dev-server --env=$1; }; run",
+     "test": "npx karma start .config/karma.conf.js",
+     "test:ci": "karma start .config/karma.conf.saucelabs.js",
+     "test:svgdom": "node -r esm ./spec/runSVGDomTest.js || true",
+     "test:es6": "npx karma start .config/karma.es6.js --single-run",
+     "prepublishOnly": "npm run build && npm run build:polyfills && npm test",
+     "postPublish": "echo Please upload a zip to the github release containing the dist, license and changelog"
    },
    "devDependencies": {
      "@babel/core": "^7.1.2",
      "rollup-plugin-babel": "^4.0.3",
      "rollup-plugin-commonjs": "^9.2.0",
      "rollup-plugin-filesize": "^5.0.1",
+     "rollup-plugin-multi-entry": "^2.0.2",
      "rollup-plugin-node-resolve": "^3.4.0",
+     "rollup-plugin-terser": "^3.0.0",
      "rollup-plugin-uglify": "^6.0.0",
-     "rollup-plugin-uglify-es": "0.0.1",
 -    "svgdom": "github:svgdotjs/svgdom"
 +    "svgdom": "latest",
++    "rollup-plugin-uglify-es": "0.0.1",
 +    "webpack": "^4.26.1",
 +    "webpack-cli": "^3.1.2",
 +    "webpack-dev-server": "^3.1.10",
 +    "yargs": "^12.0.5"
    },
-   "dependencies": {},
-   "optionalDependencies": {}
+   "browserslist": [
+     "last 1 version",
+     "> 0.25%",
+     "not maintained node versions",
+     "not dead"
+   ]
  }
Simple merge