]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/commitdiff
Merge branch 'master' into nanocurrency
authoriancoleman <1281387+iancoleman@users.noreply.github.com>
Sun, 18 Oct 2020 22:26:08 +0000 (09:26 +1100)
committerGitHub <noreply@github.com>
Sun, 18 Oct 2020 22:26:08 +0000 (09:26 +1100)
1  2 
libs/combined/npm-shrinkwrap.json
libs/combined/package.json
src/js/index.js
tests/spec/tests.js

index eeb18ebb000cfc54c52a8482f70b4b1195405f69,1d39cc7999450606ea5b8d3df893f8ded8842092..2674af1705dc314188deea83b3c0ce6e9e7a4700
        "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
        "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA="
      },
 +    "@types/concat-stream": {
 +      "version": "1.6.0",
 +      "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.0.tgz",
 +      "integrity": "sha1-OU2+C7X+5Gs42JZzXoto7yOQ0A0=",
 +      "requires": {
 +        "@types/node": "*"
 +      }
 +    },
 +    "@types/form-data": {
 +      "version": "0.0.33",
 +      "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz",
 +      "integrity": "sha1-yayFsqX9GENbjIXZ7LUObWyJP/g=",
 +      "requires": {
 +        "@types/node": "*"
 +      }
 +    },
      "@types/long": {
        "version": "4.0.1",
        "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
        "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz",
        "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ=="
      },
 +    "@types/qs": {
 +      "version": "6.9.4",
 +      "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.4.tgz",
 +      "integrity": "sha512-+wYo+L6ZF6BMoEjtf8zB2esQsqdV6WsjRK/GP9WOgLPrq87PbNWgIxS76dS5uvl/QXtHGakZmwTznIfcPXcKlQ=="
 +    },
      "JSONStream": {
        "version": "1.3.5",
        "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
        }
      },
      "acorn": {
 -      "version": "7.3.1",
 -      "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz",
 -      "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==",
 +      "version": "7.4.0",
 +      "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
 +      "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
        "dev": true
      },
      "acorn-node": {
        "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
      },
      "asn1.js": {
 -      "version": "4.10.1",
 -      "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
 -      "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
 +      "version": "5.4.1",
 +      "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
 +      "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
        "dev": true,
        "requires": {
          "bn.js": "^4.0.0",
          "inherits": "^2.0.1",
 -        "minimalistic-assert": "^1.0.0"
 +        "minimalistic-assert": "^1.0.0",
 +        "safer-buffer": "^2.1.0"
        }
      },
      "assert": {
          }
        }
      },
 +    "asynckit": {
 +      "version": "0.4.0",
 +      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
 +      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
 +    },
      "axios": {
        "version": "0.18.1",
        "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz",
        "integrity": "sha1-nGZalfiLiwj8Bc/XMfVhhZ1yWCU="
      },
      "bignumber.js": {
 -      "version": "5.0.0",
 -      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-5.0.0.tgz",
 -      "integrity": "sha512-KWTu6ZMVk9sxlDJQh2YH1UOnfDP8O8TpxUxgQG/vKASoSnEjK9aVuOueFaPcQEYQ5fyNXNTOYwYw3099RYebWg=="
 +      "version": "9.0.0",
 +      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz",
 +      "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A=="
      },
      "bindings": {
        "version": "1.5.0",
          "nanoassert": "^1.0.0"
        }
      },
 +    "blakejs": {
 +      "version": "1.1.0",
 +      "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.1.0.tgz",
 +      "integrity": "sha1-ad+S75U6qIylGjLfarHFShVfx6U="
 +    },
      "bn.js": {
        "version": "4.11.9",
        "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
        }
      },
      "browser-resolve": {
 -      "version": "1.11.3",
 -      "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz",
 -      "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==",
 +      "version": "2.0.0",
 +      "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz",
 +      "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==",
        "dev": true,
        "requires": {
 -        "resolve": "1.1.7"
 -      },
 -      "dependencies": {
 -        "resolve": {
 -          "version": "1.1.7",
 -          "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
 -          "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
 -          "dev": true
 -        }
 +        "resolve": "^1.17.0"
        }
      },
      "browserify": {
 -      "version": "16.5.1",
 -      "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.1.tgz",
 -      "integrity": "sha512-EQX0h59Pp+0GtSRb5rL6OTfrttlzv+uyaUVlK6GX3w11SQ0jKPKyjC/54RhPR2ib2KmfcELM06e8FxcI5XNU2A==",
 +      "version": "16.5.2",
 +      "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.2.tgz",
 +      "integrity": "sha512-TkOR1cQGdmXU9zW4YukWzWVSJwrxmNdADFbqbE3HFgQWe5wqZmOawqZ7J/8MPCwk/W8yY7Y0h+7mOtcZxLP23g==",
        "dev": true,
        "requires": {
          "JSONStream": "^1.0.3",
          "assert": "^1.4.0",
          "browser-pack": "^6.0.1",
 -        "browser-resolve": "^1.11.0",
 +        "browser-resolve": "^2.0.0",
          "browserify-zlib": "~0.2.0",
          "buffer": "~5.2.1",
          "cached-path-relative": "^1.0.0",
          "insert-module-globals": "^7.0.0",
          "labeled-stream-splicer": "^2.0.0",
          "mkdirp-classic": "^0.5.2",
 -        "module-deps": "^6.0.0",
 +        "module-deps": "^6.2.3",
          "os-browserify": "~0.3.0",
          "parents": "^1.0.1",
          "path-browserify": "~0.0.0",
        }
      },
      "browserify-sign": {
 -      "version": "4.2.0",
 -      "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz",
 -      "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==",
 +      "version": "4.2.1",
 +      "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
 +      "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
        "dev": true,
        "requires": {
          "bn.js": "^5.1.1",
          "browserify-rsa": "^4.0.1",
          "create-hash": "^1.2.0",
          "create-hmac": "^1.1.7",
 -        "elliptic": "^6.5.2",
 +        "elliptic": "^6.5.3",
          "inherits": "^2.0.4",
          "parse-asn1": "^5.1.5",
          "readable-stream": "^3.6.0",
        },
        "dependencies": {
          "bn.js": {
 -          "version": "5.1.2",
 -          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz",
 -          "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==",
 +          "version": "5.1.3",
 +          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz",
 +          "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==",
            "dev": true
          }
        }
        }
      },
      "bs58grscheck": {
-       "version": "git+https://github.com/Groestlcoin/bs58grscheck.git#8ff31333a7626161c1484b461c20710bb9f97b93",
-       "from": "git+https://github.com/Groestlcoin/bs58grscheck.git",
+       "version": "2.1.2",
+       "resolved": "git+https://github.com/Groestlcoin/bs58grscheck.git#8ff31333a7626161c1484b461c20710bb9f97b93",
        "requires": {
          "bs58": "^4.0.0",
          "create-hash": "^1.1.0",
          "ieee754": "^1.1.4"
        }
      },
 +    "buffer-compare": {
 +      "version": "1.1.1",
 +      "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.1.1.tgz",
 +      "integrity": "sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY="
 +    },
      "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==",
 -      "dev": true
 +      "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
      },
      "buffer-xor": {
        "version": "1.0.3",
        "integrity": "sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg==",
        "dev": true
      },
 +    "caseless": {
 +      "version": "0.12.0",
 +      "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
 +      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
 +    },
      "cashaddrjs": {
        "version": "0.3.12",
        "resolved": "https://registry.npmjs.org/cashaddrjs/-/cashaddrjs-0.3.12.tgz",
          "source-map": "~0.5.3"
        }
      },
 +    "combined-stream": {
 +      "version": "1.0.8",
 +      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
 +      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
 +      "requires": {
 +        "delayed-stream": "~1.0.0"
 +      }
 +    },
      "commander": {
        "version": "2.13.0",
        "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz",
        "version": "1.6.2",
        "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
        "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+       "dev": true,
        "requires": {
          "buffer-from": "^1.0.0",
          "inherits": "^2.0.3",
            "version": "2.3.7",
            "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
            "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+           "dev": true,
            "requires": {
              "core-util-is": "~1.0.0",
              "inherits": "~2.0.3",
          "safe-buffer": {
            "version": "5.1.2",
            "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
 -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
 -          "dev": true
 +          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
          },
          "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"
            }
      "core-util-is": {
        "version": "1.0.2",
        "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
 -      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
 -      "dev": true
 +      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
      },
      "crc": {
        "version": "3.5.0",
        "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ="
      },
      "create-ecdh": {
 -      "version": "4.0.3",
 -      "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
 -      "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==",
 +      "version": "4.0.4",
 +      "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
 +      "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
        "dev": true,
        "requires": {
          "bn.js": "^4.1.0",
 -        "elliptic": "^6.0.0"
 +        "elliptic": "^6.5.3"
        }
      },
      "create-hash": {
          "randomfill": "^1.0.3"
        }
      },
 +    "crypto-js": {
 +      "version": "3.1.9-1",
 +      "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz",
 +      "integrity": "sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg="
 +    },
      "cursor": {
        "version": "0.1.5",
        "resolved": "https://registry.npmjs.org/cursor/-/cursor-0.1.5.tgz",
          "rimraf": "^2.2.8"
        }
      },
 +    "delayed-stream": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
 +      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
 +    },
      "deps-sort": {
        "version": "2.0.1",
        "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz",
      },
      "elastos-wallet-js": {
        "version": "git://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript.git#491dc51b64efaf0a8aae62028b68e2c8e38fde06",
 -      "from": "git://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript.git#491dc51b64efaf0a8aae62028b68e2c8e38fde06",
 +      "from": "elastos-wallet-js@git://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript.git#491dc51b64efaf0a8aae62028b68e2c8e38fde06",
 +      "requires": {
 +        "bip39": "^2.5.0",
 +        "bitcore-lib-p256": "0.16.0",
 +        "jsrsasign": "^8.0.12",
 +        "lodash": "^4.17.11",
 +        "randombytes": "^2.0.6",
 +        "sync-request": "^6.0.0"
 +      },
        "dependencies": {
 +        "bip39": {
 +          "version": "2.6.0",
 +          "resolved": "https://registry.npmjs.org/bip39/-/bip39-2.6.0.tgz",
 +          "integrity": "sha512-RrnQRG2EgEoqO24ea+Q/fftuPUZLmrEM3qNhhGsA3PbaXaCW791LTzPuVyx/VprXQcTbPJ3K3UeTna8ZnVl2sg==",
 +          "requires": {
 +            "create-hash": "^1.1.0",
 +            "pbkdf2": "^3.0.9",
 +            "randombytes": "^2.0.1",
 +            "safe-buffer": "^5.0.1",
 +            "unorm": "^1.3.3"
 +          }
 +        },
          "bitcore-lib-p256": {
            "version": "0.16.0",
            "resolved": "https://registry.npmjs.org/bitcore-lib-p256/-/bitcore-lib-p256-0.16.0.tgz",
            "integrity": "sha512-zuWJXrdLCsj562kwvN4XFxTUa86QV9cQymAtDuGdY4OGEvDcKcvSsx5Kq1WH3DX41PbxDbfovAQ0vuVAqgfnnw==",
 +          "requires": {
 +            "bn.js": "=4.11.8",
 +            "bs58": "=4.0.1",
 +            "buffer-compare": "=1.1.1",
 +            "elliptic": "=6.4.0",
 +            "inherits": "=2.0.1",
 +            "lodash": "=4.17.11"
 +          },
            "dependencies": {
              "lodash": {
-               "version": "4.17.11",
-               "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
-               "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg=="
+               "version": "4.17.12",
+               "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.12.tgz",
+               "integrity": "sha512-+CiwtLnsJhX03p20mwXuvhoebatoh5B3tt+VvYlrPgZC1g36y+RRbkufX95Xa+X4I59aWEacDFYwnJZiyBh9gA=="
              }
            }
 +        },
 +        "bn.js": {
 +          "version": "4.11.8",
 +          "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
 +          "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA=="
 +        },
 +        "elliptic": {
 +          "version": "6.4.0",
 +          "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
 +          "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
 +          "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"
 +          }
 +        },
 +        "inherits": {
 +          "version": "2.0.1",
 +          "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
 +          "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE="
 +        }
 +      }
 +    },
 +    "elliptic": {
 +      "version": "6.5.3",
 +      "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",
 +      "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==",
 +      "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"
 +      }
 +    },
 +    "ethereumjs-util": {
 +      "version": "6.0.0",
 +      "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.0.0.tgz",
 +      "integrity": "sha512-E3yKUyl0Fs95nvTFQZe/ZSNcofhDzUsDlA5y2uoRmf1+Ec7gpGhNCsgKkZBRh7Br5op8mJcYF/jFbmjj909+nQ==",
 +      "requires": {
 +        "bn.js": "^4.11.0",
 +        "create-hash": "^1.1.2",
 +        "ethjs-util": "^0.1.6",
 +        "keccak": "^1.0.2",
 +        "rlp": "^2.0.0",
 +        "safe-buffer": "^5.1.1",
 +        "secp256k1": "^3.0.1"
 +      }
 +    },
 +    "ethjs-util": {
 +      "version": "0.1.6",
 +      "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz",
 +      "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==",
 +      "requires": {
 +        "is-hex-prefixed": "1.0.0",
 +        "strip-hex-prefix": "1.0.0"
 +      }
 +    },
 +    "events": {
 +      "version": "2.1.0",
 +      "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
 +      "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
 +      "dev": true
 +    },
 +    "evp_bytestokey": {
 +      "version": "1.0.3",
 +      "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
 +      "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
 +      "requires": {
 +        "md5.js": "^1.3.4",
 +        "safe-buffer": "^5.1.1"
 +      }
 +    },
 +    "extend": {
 +      "version": "3.0.2",
 +      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
 +      "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
 +    },
 +    "fast-levenshtein": {
 +      "version": "2.0.6",
 +      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
 +      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
 +    },
 +    "fast-safe-stringify": {
 +      "version": "2.0.7",
 +      "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz",
 +      "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==",
 +      "dev": true
 +    },
 +    "file-uri-to-path": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
 +      "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
 +    },
 +    "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==",
 +      "requires": {
 +        "debug": "=3.1.0"
 +      }
 +    },
 +    "form-data": {
 +      "version": "2.5.1",
 +      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
 +      "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
 +      "requires": {
 +        "asynckit": "^0.4.0",
 +        "combined-stream": "^1.0.6",
 +        "mime-types": "^2.1.12"
 +      }
 +    },
 +    "fs.realpath": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
 +      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
 +    },
 +    "function-bind": {
 +      "version": "1.1.1",
 +      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
 +      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
 +      "dev": true
 +    },
 +    "get-assigned-identifiers": {
 +      "version": "1.2.0",
 +      "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
 +      "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
 +      "dev": true
 +    },
 +    "get-port": {
 +      "version": "3.2.0",
 +      "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz",
 +      "integrity": "sha1-3Xzn3hh8Bsi/NTeWrHHgmfCYDrw="
 +    },
 +    "glob": {
 +      "version": "7.1.6",
 +      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
 +      "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
 +      "requires": {
 +        "fs.realpath": "^1.0.0",
 +        "inflight": "^1.0.4",
 +        "inherits": "2",
 +        "minimatch": "^3.0.4",
 +        "once": "^1.3.0",
 +        "path-is-absolute": "^1.0.0"
 +      }
 +    },
 +    "globby": {
 +      "version": "5.0.0",
 +      "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
 +      "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
 +      "requires": {
 +        "array-union": "^1.0.1",
 +        "arrify": "^1.0.0",
 +        "glob": "^7.0.3",
 +        "object-assign": "^4.0.1",
 +        "pify": "^2.0.0",
 +        "pinkie-promise": "^2.0.0"
 +      }
 +    },
 +    "graceful-fs": {
 +      "version": "4.2.4",
 +      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
 +      "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
 +    },
 +    "groestl-hash-js": {
 +      "version": "1.0.0",
 +      "resolved": "https://registry.npmjs.org/groestl-hash-js/-/groestl-hash-js-1.0.0.tgz",
 +      "integrity": "sha1-yewyVxbsSLIjz6ruZzxfj/12Bsk="
 +    },
 +    "groestlcoinjs-lib": {
 +      "version": "git://github.com/Groestlcoin/groestlcoinjs-lib.git#d4a4f41fa400965c08c8bc40a4925a1184cd7d39",
 +      "from": "git://github.com/Groestlcoin/groestlcoinjs-lib.git#3.3.2",
 +      "requires": {
 +        "bech32": "^1.1.2",
 +        "bigi": "^1.4.0",
 +        "bip66": "^1.1.0",
 +        "bitcoin-ops": "^1.3.0",
 +        "bs58grscheck": "^2.1.2",
 +        "create-hash": "^1.1.0",
 +        "create-hmac": "^1.1.3",
 +        "ecurve": "^1.0.0",
 +        "groestl-hash-js": "^1.0.0",
 +        "merkle-lib": "^2.0.10",
 +        "pushdata-bitcoin": "^1.0.1",
 +        "randombytes": "^2.0.1",
 +        "safe-buffer": "^5.0.1",
 +        "typeforce": "^1.11.3",
 +        "varuint-bitcoin": "^1.0.4",
 +        "wifgrs": "^2.0.6"
 +      }
 +    },
 +    "handshake-util": {
 +      "version": "1.2.0",
 +      "resolved": "https://registry.npmjs.org/handshake-util/-/handshake-util-1.2.0.tgz",
 +      "integrity": "sha512-LhjqYdYggZjFvaPoFl3MMZU3IdPS7OwF6AZdPg+B14aJHQ72FRXYalezjFE3tAV/wBTVdHfpis89MOGhbVWBbw==",
 +      "requires": {
 +        "bech32": "^1.1.3",
 +        "blake2b": "^2.1.3"
 +      }
 +    },
 +    "has": {
 +      "version": "1.0.3",
 +      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
 +      "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
 +      "dev": true,
 +      "requires": {
 +        "function-bind": "^1.1.1"
 +      }
 +    },
 +    "hash-base": {
 +      "version": "3.1.0",
 +      "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
 +      "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
 +      "requires": {
 +        "inherits": "^2.0.4",
 +        "readable-stream": "^3.6.0",
 +        "safe-buffer": "^5.2.0"
 +      }
 +    },
 +    "hash.js": {
 +      "version": "1.1.7",
 +      "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
 +      "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
 +      "requires": {
 +        "inherits": "^2.0.3",
 +        "minimalistic-assert": "^1.0.1"
 +      }
 +    },
 +    "hmac-drbg": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
 +      "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
 +      "requires": {
 +        "hash.js": "^1.0.3",
 +        "minimalistic-assert": "^1.0.0",
 +        "minimalistic-crypto-utils": "^1.0.1"
 +      }
 +    },
 +    "htmlescape": {
 +      "version": "1.1.1",
 +      "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
 +      "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E="
 +    },
 +    "http-basic": {
 +      "version": "8.1.3",
 +      "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz",
 +      "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==",
 +      "requires": {
 +        "caseless": "^0.12.0",
 +        "concat-stream": "^1.6.2",
 +        "http-response-object": "^3.0.1",
 +        "parse-cache-control": "^1.0.1"
 +      }
 +    },
 +    "http-response-object": {
 +      "version": "3.0.2",
 +      "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz",
 +      "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==",
 +      "requires": {
 +        "@types/node": "^10.0.3"
 +      },
 +      "dependencies": {
 +        "@types/node": {
 +          "version": "10.17.28",
 +          "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.28.tgz",
 +          "integrity": "sha512-dzjES1Egb4c1a89C7lKwQh8pwjYmlOAG9dW1pBgxEk57tMrLnssOfEthz8kdkNaBd7lIqQx7APm5+mZ619IiCQ=="
 +        }
 +      }
 +    },
 +    "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
 +    },
 +    "ieee754": {
 +      "version": "1.1.13",
 +      "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
 +      "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="
 +    },
 +    "imurmurhash": {
 +      "version": "0.1.4",
 +      "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
 +      "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
 +    },
 +    "inflight": {
 +      "version": "1.0.6",
 +      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
 +      "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
 +      "requires": {
 +        "once": "^1.3.0",
 +        "wrappy": "1"
 +      }
 +    },
 +    "inherits": {
 +      "version": "2.0.4",
 +      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
 +      "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
 +    },
 +    "inline-source-map": {
 +      "version": "0.6.2",
 +      "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
 +      "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
 +      "dev": true,
 +      "requires": {
 +        "source-map": "~0.5.3"
 +      }
 +    },
 +    "insert-module-globals": {
 +      "version": "7.2.0",
 +      "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz",
 +      "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==",
 +      "dev": true,
 +      "requires": {
 +        "JSONStream": "^1.0.3",
 +        "acorn-node": "^1.5.2",
 +        "combine-source-map": "^0.8.0",
 +        "concat-stream": "^1.6.1",
 +        "is-buffer": "^1.1.0",
 +        "path-is-absolute": "^1.0.1",
 +        "process": "~0.11.0",
 +        "through2": "^2.0.0",
 +        "undeclared-identifiers": "^1.1.2",
 +        "xtend": "^4.0.0"
 +      },
 +      "dependencies": {
 +        "is-buffer": {
 +          "version": "1.1.6",
 +          "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
 +          "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
 +          "dev": true
          }
        }
      },
+     "elliptic": {
+       "version": "6.5.3",
+       "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz",
+       "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==",
+       "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"
+       }
+     },
+     "ethereumjs-util": {
+       "version": "6.0.0",
+       "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.0.0.tgz",
+       "integrity": "sha512-E3yKUyl0Fs95nvTFQZe/ZSNcofhDzUsDlA5y2uoRmf1+Ec7gpGhNCsgKkZBRh7Br5op8mJcYF/jFbmjj909+nQ==",
+       "requires": {
+         "bn.js": "^4.11.0",
+         "create-hash": "^1.1.2",
+         "ethjs-util": "^0.1.6",
+         "keccak": "^1.0.2",
+         "rlp": "^2.0.0",
+         "safe-buffer": "^5.1.1",
+         "secp256k1": "^3.0.1"
+       }
+     },
+     "ethjs-util": {
+       "version": "0.1.6",
+       "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz",
+       "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==",
+       "requires": {
+         "is-hex-prefixed": "1.0.0",
+         "strip-hex-prefix": "1.0.0"
+       }
+     },
+     "events": {
+       "version": "2.1.0",
+       "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
+       "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
+       "dev": true
+     },
+     "evp_bytestokey": {
+       "version": "1.0.3",
+       "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
+       "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
+       "requires": {
+         "md5.js": "^1.3.4",
+         "safe-buffer": "^5.1.1"
+       }
+     },
+     "extend": {
+       "version": "3.0.2",
+       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+       "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+     },
+     "fast-levenshtein": {
+       "version": "2.0.6",
+       "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+       "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
+     },
+     "fast-safe-stringify": {
+       "version": "2.0.7",
+       "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz",
+       "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==",
+       "dev": true
+     },
+     "file-uri-to-path": {
+       "version": "1.0.0",
+       "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+       "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
+     },
+     "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==",
+       "requires": {
+         "debug": "=3.1.0"
+       }
+     },
+     "fs.realpath": {
+       "version": "1.0.0",
+       "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+       "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
+     },
+     "function-bind": {
+       "version": "1.1.1",
+       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+       "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+       "dev": true
+     },
+     "get-assigned-identifiers": {
+       "version": "1.2.0",
+       "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
+       "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
+       "dev": true
+     },
+     "glob": {
+       "version": "7.1.6",
+       "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+       "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+       "requires": {
+         "fs.realpath": "^1.0.0",
+         "inflight": "^1.0.4",
+         "inherits": "2",
+         "minimatch": "^3.0.4",
+         "once": "^1.3.0",
+         "path-is-absolute": "^1.0.0"
+       }
+     },
+     "globby": {
+       "version": "5.0.0",
+       "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
+       "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
+       "requires": {
+         "array-union": "^1.0.1",
+         "arrify": "^1.0.0",
+         "glob": "^7.0.3",
+         "object-assign": "^4.0.1",
+         "pify": "^2.0.0",
+         "pinkie-promise": "^2.0.0"
+       }
+     },
+     "graceful-fs": {
+       "version": "4.2.4",
+       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
+       "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
+     },
+     "groestl-hash-js": {
+       "version": "1.0.0",
+       "resolved": "https://registry.npmjs.org/groestl-hash-js/-/groestl-hash-js-1.0.0.tgz",
+       "integrity": "sha1-yewyVxbsSLIjz6ruZzxfj/12Bsk="
+     },
+     "groestlcoinjs-lib": {
+       "version": "git://github.com/Groestlcoin/groestlcoinjs-lib.git#7c4ee3de832171731e7591d5462f54e50240add8",
+       "from": "git://github.com/Groestlcoin/groestlcoinjs-lib.git#3.3.2",
+       "requires": {
+         "bech32": "^1.1.2",
+         "bigi": "^1.4.0",
+         "bip66": "^1.1.0",
+         "bitcoin-ops": "^1.3.0",
+         "bs58grscheck": "git+https://github.com/Groestlcoin/bs58grscheck.git",
+         "create-hash": "^1.1.0",
+         "create-hmac": "^1.1.3",
+         "ecurve": "^1.0.0",
+         "groestl-hash-js": "git+https://github.com/Groestlcoin/groestl-hash-js.git",
+         "merkle-lib": "^2.0.10",
+         "pushdata-bitcoin": "^1.0.1",
+         "randombytes": "^2.0.1",
+         "safe-buffer": "^5.0.1",
+         "typeforce": "^1.11.3",
+         "varuint-bitcoin": "^1.0.4",
+         "wifgrs": "git+https://github.com/Groestlcoin/wifgrs.git"
+       },
+       "dependencies": {
+         "groestl-hash-js": {
+           "version": "git+https://github.com/Groestlcoin/groestl-hash-js.git#ef6a04f1c4d2f0448f0882b5f213ef7a0659baee",
+           "from": "git+https://github.com/Groestlcoin/groestl-hash-js.git"
+         }
+       }
+     },
+     "handshake-util": {
+       "version": "1.2.0",
+       "resolved": "https://registry.npmjs.org/handshake-util/-/handshake-util-1.2.0.tgz",
+       "integrity": "sha512-LhjqYdYggZjFvaPoFl3MMZU3IdPS7OwF6AZdPg+B14aJHQ72FRXYalezjFE3tAV/wBTVdHfpis89MOGhbVWBbw==",
+       "requires": {
+         "bech32": "^1.1.3",
+         "blake2b": "^2.1.3"
+       }
+     },
+     "has": {
+       "version": "1.0.3",
+       "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+       "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+       "dev": true,
+       "requires": {
+         "function-bind": "^1.1.1"
+       }
+     },
+     "hash-base": {
+       "version": "3.1.0",
+       "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
+       "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
+       "requires": {
+         "inherits": "^2.0.4",
+         "readable-stream": "^3.6.0",
+         "safe-buffer": "^5.2.0"
+       }
+     },
+     "hash.js": {
+       "version": "1.1.7",
+       "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
+       "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
+       "requires": {
+         "inherits": "^2.0.3",
+         "minimalistic-assert": "^1.0.1"
+       }
+     },
+     "hmac-drbg": {
+       "version": "1.0.1",
+       "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
+       "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
+       "requires": {
+         "hash.js": "^1.0.3",
+         "minimalistic-assert": "^1.0.0",
+         "minimalistic-crypto-utils": "^1.0.1"
+       }
+     },
+     "htmlescape": {
+       "version": "1.1.1",
+       "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
+       "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E="
+     },
+     "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
+     },
+     "ieee754": {
+       "version": "1.1.13",
+       "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
+       "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="
+     },
+     "imurmurhash": {
+       "version": "0.1.4",
+       "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+       "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
+     },
+     "inflight": {
+       "version": "1.0.6",
+       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+       "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+       "requires": {
+         "once": "^1.3.0",
+         "wrappy": "1"
+       }
+     },
+     "inherits": {
+       "version": "2.0.4",
+       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+     },
+     "inline-source-map": {
+       "version": "0.6.2",
+       "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
+       "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
+       "dev": true,
+       "requires": {
+         "source-map": "~0.5.3"
+       }
+     },
+     "insert-module-globals": {
+       "version": "7.2.0",
+       "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz",
+       "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==",
+       "dev": true,
+       "requires": {
+         "JSONStream": "^1.0.3",
+         "acorn-node": "^1.5.2",
+         "combine-source-map": "^0.8.0",
+         "concat-stream": "^1.6.1",
+         "is-buffer": "^1.1.0",
+         "path-is-absolute": "^1.0.1",
+         "process": "~0.11.0",
+         "through2": "^2.0.0",
+         "undeclared-identifiers": "^1.1.2",
+         "xtend": "^4.0.0"
+       },
+       "dependencies": {
+         "is-buffer": {
+           "version": "1.1.6",
+           "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+           "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+           "dev": true
+         }
+       }
+     },
      "is-buffer": {
        "version": "2.0.4",
        "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
      "isarray": {
        "version": "1.0.0",
        "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
-       "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
+       "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
 -      "dev": true
      },
      "javascript-biginteger": {
        "version": "0.9.2",
        "dev": true
      },
      "jsrsasign": {
 -      "version": "8.0.19",
 -      "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-8.0.19.tgz",
 -      "integrity": "sha512-qf+F41huTh9ThXj5n3yfAJJRp8vx05JYbGlGvCjusYX50rsfqY6ASK08LCOutl0yA1BHIpGG8bd1w5x9aGy7Zg=="
 +      "version": "8.0.24",
 +      "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-8.0.24.tgz",
 +      "integrity": "sha512-u45jAyusqUpyGbFc2IbHoeE4rSkoBWQgLe/w99temHenX+GyCz4nflU5sjK7ajU1ffZTezl6le7u43Yjr/lkQg=="
      },
      "jssha": {
 -      "version": "3.1.0",
 -      "resolved": "https://registry.npmjs.org/jssha/-/jssha-3.1.0.tgz",
 -      "integrity": "sha512-tPCmr8xSLd8ug6N51k0rbF1tAQWZz1i/uCVHpCH9dl+Te+wM/T375R3lTexP3bk1HPmQ+NlJHQPYLmYuyk6slA=="
 +      "version": "3.1.2",
 +      "resolved": "https://registry.npmjs.org/jssha/-/jssha-3.1.2.tgz",
 +      "integrity": "sha512-6fEObA9he4vcCpz+dt9b5DjqhqvSsz9XMfNPU6/IyKHDQpCHsYayPRkWmAZG61lZC9XVJcjsQNAiUUd0NpskeQ=="
      },
      "keccak": {
        "version": "1.4.0",
        }
      },
      "lodash": {
 -      "version": "4.17.15",
 -      "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
 -      "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
 +      "version": "4.17.20",
 +      "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
 +      "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="
      },
      "lodash.memoize": {
        "version": "3.0.4",
          "brorand": "^1.0.1"
        }
      },
 +    "mime-db": {
 +      "version": "1.44.0",
 +      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
 +      "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg=="
 +    },
 +    "mime-types": {
 +      "version": "2.1.27",
 +      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
 +      "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
 +      "requires": {
 +        "mime-db": "1.44.0"
 +      }
 +    },
      "minimalistic-assert": {
        "version": "1.0.1",
        "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
        "dev": true
      },
      "module-deps": {
 -      "version": "6.2.2",
 -      "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.2.tgz",
 -      "integrity": "sha512-a9y6yDv5u5I4A+IPHTnqFxcaKr4p50/zxTjcQJaX2ws9tN/W6J6YXnEKhqRyPhl494dkcxx951onSKVezmI+3w==",
 +      "version": "6.2.3",
 +      "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.3.tgz",
 +      "integrity": "sha512-fg7OZaQBcL4/L+AK5f4iVqf9OMbCclXfy/znXRxTVhJSeW5AIlS9AwheYwDaXM3lVW7OBeaeUEY3gbaC6cLlSA==",
        "dev": true,
        "requires": {
          "JSONStream": "^1.0.3",
 -        "browser-resolve": "^1.7.0",
 +        "browser-resolve": "^2.0.0",
          "cached-path-relative": "^1.0.2",
          "concat-stream": "~1.6.0",
          "defined": "^1.0.0",
        "resolved": "https://registry.npmjs.org/nanoassert/-/nanoassert-1.1.0.tgz",
        "integrity": "sha1-TzFS4JVA/eKMdvRLGbvNHVpCR40="
      },
 +    "nanocurrency-web": {
 +      "version": "1.2.2",
 +      "resolved": "https://registry.npmjs.org/nanocurrency-web/-/nanocurrency-web-1.2.2.tgz",
 +      "integrity": "sha512-Ujx+nnhyD1fr2wAubK93b7Nck2K6PrfcmUoMpO9eNOpbNzvfYNx17+4ZteIr+ZM/Rk3tYacEXWfUzHgJ45D3mQ==",
 +      "requires": {
 +        "bignumber.js": "9.0.0",
 +        "blakejs": "1.1.0",
 +        "crypto-js": "3.1.9-1"
 +      }
 +    },
      "nebulas": {
        "version": "0.5.6",
        "resolved": "https://registry.npmjs.org/nebulas/-/nebulas-0.5.6.tgz",
          "scryptsy": "^2.0.0",
          "secp256k1": "^3.5.0",
          "uuid": "^3.0.1"
 +      },
 +      "dependencies": {
 +        "bignumber.js": {
 +          "version": "5.0.0",
 +          "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-5.0.0.tgz",
 +          "integrity": "sha512-KWTu6ZMVk9sxlDJQh2YH1UOnfDP8O8TpxUxgQG/vKASoSnEjK9aVuOueFaPcQEYQ5fyNXNTOYwYw3099RYebWg=="
 +        }
        }
      },
      "node-localstorage": {
        }
      },
      "parse-asn1": {
 -      "version": "5.1.5",
 -      "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz",
 -      "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==",
 +      "version": "5.1.6",
 +      "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
 +      "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
        "dev": true,
        "requires": {
 -        "asn1.js": "^4.0.0",
 +        "asn1.js": "^5.2.0",
          "browserify-aes": "^1.0.0",
 -        "create-hash": "^1.1.0",
          "evp_bytestokey": "^1.0.0",
          "pbkdf2": "^3.0.3",
          "safe-buffer": "^5.1.1"
        }
      },
 +    "parse-cache-control": {
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz",
 +      "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104="
 +    },
      "path-browserify": {
        "version": "0.0.1",
        "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
      "process-nextick-args": {
        "version": "2.0.1",
        "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
 -      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
 -      "dev": true
 +      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
      },
      "promise": {
        "version": "8.1.0",
        }
      },
      "protobufjs": {
 -      "version": "6.9.0",
 -      "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.9.0.tgz",
 -      "integrity": "sha512-LlGVfEWDXoI/STstRDdZZKb/qusoAWUnmLg9R8OLSO473mBLWHowx8clbX5/+mKDEI+v7GzjoK9tRPZMMcoTrg==",
 +      "version": "6.10.1",
 +      "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.10.1.tgz",
 +      "integrity": "sha512-pb8kTchL+1Ceg4lFd5XUpK8PdWacbvV5SK2ULH2ebrYtl4GjJmS24m6CKME67jzV53tbJxHlnNOSqQHbTsR9JQ==",
        "requires": {
          "@protobufjs/aspromise": "^1.1.2",
          "@protobufjs/base64": "^1.1.2",
        },
        "dependencies": {
          "@types/node": {
 -          "version": "13.13.12",
 -          "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.12.tgz",
 -          "integrity": "sha512-zWz/8NEPxoXNT9YyF2osqyA9WjssZukYpgI4UYZpOjcyqwIUqWGkcCionaEb9Ki+FULyPyvNFpg/329Kd2/pbw=="
 +          "version": "13.13.15",
 +          "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.15.tgz",
 +          "integrity": "sha512-kwbcs0jySLxzLsa2nWUAGOd/s21WU1jebrEdtzhsj1D4Yps1EOuyI1Qcu+FD56dL7NRNIJtDDjcqIG22NwkgLw=="
          }
        }
      },
          "bitcoin-ops": "^1.3.0"
        }
      },
 +    "qs": {
 +      "version": "6.9.4",
 +      "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz",
 +      "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ=="
 +    },
      "querystring": {
        "version": "0.2.0",
        "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
        }
      },
      "rlp": {
 -      "version": "2.2.5",
 -      "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.5.tgz",
 -      "integrity": "sha512-y1QxTQOp0OZnjn19FxBmped4p+BSKPHwGndaqrESseyd2xXZtcgR3yuTIosh8CaMaOii9SKIYerBXnV/CpJ3qw==",
 +      "version": "2.2.6",
 +      "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.6.tgz",
 +      "integrity": "sha512-HAfAmL6SDYNWPUOJNrM500x4Thn4PZsEy5pijPh40U9WfNk0z15hUYzO9xVIMAdIHdFtD8CBDHd75Td1g36Mjg==",
        "requires": {
          "bn.js": "^4.11.1"
        }
        "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
        "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
      },
 +    "safer-buffer": {
 +      "version": "2.1.2",
 +      "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
 +      "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
 +      "dev": true
 +    },
      "scryptsy": {
        "version": "2.1.0",
        "resolved": "https://registry.npmjs.org/scryptsy/-/scryptsy-2.1.0.tgz",
        "dev": true
      },
      "simple-concat": {
 -      "version": "1.0.0",
 -      "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz",
 -      "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=",
 +      "version": "1.0.1",
 +      "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
 +      "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
        "dev": true
      },
      "slide": {
          "minimist": "^1.1.0"
        }
      },
 +    "sync-request": {
 +      "version": "6.1.0",
 +      "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz",
 +      "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==",
 +      "requires": {
 +        "http-response-object": "^3.0.1",
 +        "sync-rpc": "^1.2.1",
 +        "then-request": "^6.0.0"
 +      }
 +    },
 +    "sync-rpc": {
 +      "version": "1.3.6",
 +      "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz",
 +      "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==",
 +      "requires": {
 +        "get-port": "^3.1.0"
 +      }
 +    },
      "syntax-error": {
        "version": "1.4.0",
        "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
          "acorn-node": "^1.2.0"
        }
      },
 +    "then-request": {
 +      "version": "6.0.2",
 +      "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz",
 +      "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==",
 +      "requires": {
 +        "@types/concat-stream": "^1.6.0",
 +        "@types/form-data": "0.0.33",
 +        "@types/node": "^8.0.0",
 +        "@types/qs": "^6.2.31",
 +        "caseless": "~0.12.0",
 +        "concat-stream": "^1.6.0",
 +        "form-data": "^2.2.0",
 +        "http-basic": "^8.1.1",
 +        "http-response-object": "^3.0.1",
 +        "promise": "^8.0.0",
 +        "qs": "^6.4.0"
 +      },
 +      "dependencies": {
 +        "@types/node": {
 +          "version": "8.10.62",
 +          "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.62.tgz",
 +          "integrity": "sha512-76fupxOYVxk36kb7O/6KtrAPZ9jnSK3+qisAX4tQMEuGNdlvl7ycwatlHqjoE6jHfVtXFM3pCrCixZOidc5cuw=="
 +        }
 +      }
 +    },
      "through": {
        "version": "2.3.8",
        "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
      "typedarray": {
        "version": "0.0.6",
        "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
 -      "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
 -      "dev": true
 +      "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
      },
      "typeforce": {
        "version": "1.18.0",
        }
      },
      "wifgrs": {
 -      "version": "git+https://github.com/Groestlcoin/wifgrs.git#970dafa1633f1b6e8bf51eb933c76a7203567ec2",
 -      "from": "git+https://github.com/Groestlcoin/wifgrs.git",
 +      "version": "2.0.6",
 +      "resolved": "https://registry.npmjs.org/wifgrs/-/wifgrs-2.0.6.tgz",
 +      "integrity": "sha512-Zufg+IptNYTF85Hkr6Jhf6C2XpGAW3b5WeQB+Tq+PfeX1Q0/rLbZSmRc1/3Gwum19jntxuGY5d6SRnbl/cM0+w==",
        "requires": {
 -        "bs58grscheck": "^2.1.2",
 +        "bs58grscheck": "git+https://github.com/Groestlcoin/bs58grscheck.git",
          "safe-buffer": "^5.1.1"
        }
      },
index 1914ccd2e7735398144a8596b23c8864b02ec56c,e073e81033e68f7dba4e35c43977d7c5ae7604ea..455d2634fb72c0d959d435151058333d182fe079
mode 100755,100644..100644
      "bip38grs": "git://github.com/Groestlcoin/bip38grs.git#091975b01679b74dc0a4136bb743fe17791b0151",
      "bitcoinjs-lib": "git://github.com/iancoleman/bitcoinjs-lib.git#v3.3.2_16bit",
      "bs58": "^4.0.1",
 -    "buffer": "5.4.3",
 +    "buffer": "^5.4.3",
      "create-hash": "^1.2.0",
      "ed25519-hd-key": "^1.0.0",
      "elastos-wallet-js": "git://github.com/johnnynanjiang/Elastos.SDK.Keypair.Javascript.git#491dc51b64efaf0a8aae62028b68e2c8e38fde06",
      "ethereumjs-util": "6.0.0",
 -    "handshake-util": "1.2.0",
      "fast-levenshtein": "2.0.6",
      "groestlcoinjs-lib": "git://github.com/Groestlcoin/groestlcoinjs-lib.git#3.3.2",
 +    "handshake-util": "1.2.0",
      "javascript-biginteger": "0.9.2",
-     "jsrsasign": "^8.0.15",
+     "jsrsasign": "^8.0.19",
      "kjua": "0.6.0",
 +    "nanocurrency-web": "^1.2.2",
      "nebulas": "0.5.6",
      "stellar-base": "^0.10.0",
      "unorm": "1.6.0",
diff --combined src/js/index.js
index a00aa6666328e21c5776aed72b4d061cda2ff743,114f74ae0e0094d566443fa20b21d81ab1a14e8f..cb60941b1bca39f98a7f87e91fce2cecfe125a95
                          privkey = libs.ethUtil.bufferToHex(keyPair.d.toBuffer());
                      }
                  }
+                 //TRX is different
+                 if (networks[DOM.network.val()].name == "TRX - Tron") {
+                     keyPair = new libs.bitcoin.ECPair(keyPair.d, null, { network: network, compressed: false });
+                     var pubkeyBuffer = keyPair.getPublicKeyBuffer();
+                     var ethPubkey = libs.ethUtil.importPublic(pubkeyBuffer);
+                     var addressBuffer = libs.ethUtil.publicToAddress(ethPubkey);
+                     address = libs.bitcoin.address.toBase58Check(addressBuffer, 0x41);
+                     if (hasPrivkey) {
+                         privkey = keyPair.d.toBuffer().toString('hex');
+                     }
+                 }
  
                  // RSK values are different
                  if (networkIsRsk()) {
                      privkey = keypair.secret();
                      pubkey = address = keypair.publicKey();
                  }
 +
 +                // Nano currency
 +                if (networks[DOM.network.val()].name == "NANO - Nano") {
 +                    var nanoKeypair = libs.nanoUtil.getKeypair(index, seed);
 +                    privkey = nanoKeypair.privKey;
 +                    pubkey = nanoKeypair.pubKey;
 +                    address = nanoKeypair.address;
 +                }
 +
                  if ((networks[DOM.network.val()].name == "NAS - Nebulas")) {
                      var privKeyBuffer = keyPair.d.toBuffer(32);
                      var nebulasAccount = libs.nebulas.Account.NewAccount();
  
                if (networks[DOM.network.val()].name == "EOS - EOSIO") {
                      address = ""
-                     pubkey = eosUtil.bufferToPublic(keyPair.getPublicKeyBuffer());
-                     privkey = eosUtil.bufferToPrivate(keyPair.d.toBuffer(32));
+                     pubkey = EOSbufferToPublic(keyPair.getPublicKeyBuffer());
+                     privkey = EOSbufferToPrivate(keyPair.d.toBuffer(32));
                  }
  
                  if (networks[DOM.network.val()].name == "FIO - Foundation for Interwallet Operability") {
          var numberOfBits = entropy.binaryStr.length;
          var timeToCrack = "unknown";
          try {
-             var z = libs.zxcvbn(entropy.base.parts.join(""));
+             var z = libs.zxcvbn(entropy.base.events.join(""));
              timeToCrack = z.crack_times_display.offline_fast_hashing_1e10_per_second;
              if (z.feedback.warning != "") {
                  timeToCrack = timeToCrack + " - " + z.feedback.warning;
          DOM.entropyFiltered.html(entropy.cleanHtml);
          DOM.entropyType.text(entropyTypeStr);
          DOM.entropyCrackTime.text(timeToCrack);
-         DOM.entropyEventCount.text(entropy.base.ints.length);
+         DOM.entropyEventCount.text(entropy.base.events.length);
          DOM.entropyBits.text(numberOfBits);
          DOM.entropyWordCount.text(wordCount);
          DOM.entropyBinary.text(spacedBinaryStr);
              // Detect duplicates
              var dupes = [];
              var dupeTracker = {};
-             for (var i=0; i<entropy.base.parts.length; i++) {
-                 var card = entropy.base.parts[i];
+             for (var i=0; i<entropy.base.events.length; i++) {
+                 var card = entropy.base.events[i];
                  var cardUpper = card.toUpperCase();
                  if (cardUpper in dupeTracker) {
                      dupes.push(card);
                      || (name == "ESN - Ethersocial Network")
                      || (name == "VET - VeChain")
                      || (name == "ERE - EtherCore")
+                     || (name == "BSC - Binance Smart Chain")
      }
  
      function networkIsRsk() {
                  setHdCoin(183);
              },
          },
+         {
+             name: "BSC - Binance Smart Chain",
+             onSelect: function() {
+                 network = libs.bitcoin.networks.bitcoin;
+                 setHdCoin(60);
+             },
+         },
          {
              name: "BSV - BitcoinSV",
              onSelect: function() {
                  setHdCoin(184);
              },
          },
 +        {
 +            name: "NANO - Nano",
 +            onSelect: function() {
 +                network = network = libs.nanoUtil.dummyNetwork;
 +                setHdCoin(165);
 +            },
 +        },
          {
              name: "NAV - Navcoin",
              onSelect: function() {
                  setHdCoin(159);
              },
          },
+         {
+             name: "TRX - Tron",
+             onSelect: function() {
+                 setHdCoin(195);
+             },
+         },
          {
              name: "TWINS - TWINS",
              onSelect: function() {
diff --combined tests/spec/tests.js
index d17c8efa4e46ab4badfcf549fe15bcaa87953631,8b3b07be1c967bcf9da3e8cff5bc727673c0731f..78110af4faa82014ed35b33a457ea27febdce964
@@@ -2155,16 -2155,6 +2155,16 @@@ it('Allows selection of Stellar', funct
      };
      testNetwork(done, params);
  });
 +it('Allows selection of Nano', function(done) {
 +    var params = {
 +        selectText: "NANO - Nano",
 +        phrase: "deal wedding panda forum property artist whip total word student sea middle",
 +        firstAddress: "nano_15fum9n68681dz73qyu37fuc9tro84gqm86eptdqpm9jutkfnt34agkoqpw5",
 +        firstPubKey: "0DBB99E84310C05FCA1BFB612B76A3EB15309D79988CB6977B4CF1DEA4DA6822",
 +        firstPrivKey: "30633C8497CC47E0AEFD52C7971FFD45E6C5D166274C7978FECA3482A859C0AF",
 +    };
 +    testNetwork(done, params);
 +});
  it('Allows selection of Wagerr', function(done) {
      var params = {
          selectText: "WGR - Wagerr",
@@@ -2285,6 -2275,27 +2285,27 @@@ it('Allows selection of Scribe', functi
      };
      testNetwork(done, params);
  });
+ it('Allows selection of Binance Smart Chain', function(done) {
+     var params = {
+         selectText: "BSC - Binance Smart Chain",
+         phrase: "abandon abandon ability",
+         firstAddress: "0xe5815d5902Ad612d49283DEdEc02100Bd44C2772",
+         firstPubKey: "0x03e723e5b3aa7d72213f01139aa4783e1b34f74e1a04534e3fd8e29bfe2768af8a",
+         firstPrivKey: "0x8f253078b73d7498302bb78c171b23ce7a8fb511987d2b2702b731638a4a15e7",
+     };
+     testNetwork(done, params);
+ });
+ it('Allows selection of TRX on Tron', function(done) {
+     var params = {
+         selectText: "TRX - Tron",
+         phrase: "abandon abandon ability",
+         firstAddress: "TA891Fu7vVz595BGQpNX2MCzr7yBcxuoC7",
+         firstPubKey: "0337bbb060e6166066f7f9e59e52f67bc23a6c9d0cbc815b82b6d89112444842e7",
+         firstPrivKey: "3a8fbd0379a815764979de86a3fcda759cb62d49e784e7b2a9a03206c90cfae2",
+     };
+     testNetwork(done, params);
+ });
  
  // BIP39 seed is set from phrase
  it('Sets the bip39 seed from the prhase', function(done) {
@@@ -3130,7 -3141,7 +3151,7 @@@ it("Shows the number of bits of entrop
      testEntropyBits(done, "0000", "4");
  });
  it("Shows the number of bits of entropy for 1 character of base 6 (dice)", function(done) {
-     // 6 in card is 0 in base 6, 0 in base 6 is 2.6 bits (rounded down to 2 bits)
+     // 6 in card is 0 in base 6, 0 is mapped to 00 by entropy.js
      testEntropyBits(done, "6", "2");
  });
  it("Shows the number of bits of entropy for 1 character of base 10 with 3 bits", function(done) {
      testEntropyBits(done, "7", "3");
  });
  it("Shows the number of bits of entropy for 1 character of base 10 with 4 bis", function(done) {
-     testEntropyBits(done, "8", "4");
+     // 8 in base 10 is mapped to 0 by entropy.js
+     testEntropyBits(done, "8", "1");
  });
  it("Shows the number of bits of entropy for 1 character of hex", function(done) {
      testEntropyBits(done, "F", "4");
  });
  it("Shows the number of bits of entropy for 2 characters of base 10", function(done) {
-     testEntropyBits(done, "29", "6");
+     // 2 as base 10 is binary 010, 9 is mapped to binary 1 by entropy.js
+     testEntropyBits(done, "29", "4");
  });
  it("Shows the number of bits of entropy for 2 characters of hex", function(done) {
      testEntropyBits(done, "0A", "8");
@@@ -3169,17 -3182,17 +3192,17 @@@ it("Shows the number of bits of entrop
      testEntropyBits(done, "000A", "16");
  });
  it("Shows the number of bits of entropy for 4 characters of base 6", function(done) {
-     testEntropyBits(done, "5555", "11");
+     // 5 in base 6 is mapped to binary 1
+     testEntropyBits(done, "5555", "4");
  });
  it("Shows the number of bits of entropy for 4 characters of base 6 dice", function(done) {
      // uses dice, so entropy is actually 0000 in base 6, which is 4 lots of
-     // 2.58 bits, which is 10.32 bits (rounded down to 10 bits)
-     testEntropyBits(done, "6666", "10");
+     // binary 00
+     testEntropyBits(done, "6666", "8");
  });
  it("Shows the number of bits of entropy for 4 charactes of base 10", function(done) {
-     // Uses base 10, which is 4 lots of 3.32 bits, which is 13.3 bits (rounded
-     // down to 13)
-     testEntropyBits(done, "2227", "13");
+     // 2 in base 10 is binary 010 and 7 is binary 111 so is 4 events of 3 bits
+     testEntropyBits(done, "2227", "12");
  });
  it("Shows the number of bits of entropy for 4 characters of hex with 2 leading zeros", function(done) {
      testEntropyBits(done, "222F", "16");
@@@ -3188,13 -3201,16 +3211,16 @@@ it("Shows the number of bits of entrop
      testEntropyBits(done, "FFFF", "16");
  });
  it("Shows the number of bits of entropy for 10 characters of base 10", function(done) {
-     // 10 events at 3.32 bits per event
-     testEntropyBits(done, "0000101017", "33");
+     // 10 events with 3 bits for each event
+     testEntropyBits(done, "0000101017", "30");
+ });
+ it("Shows the number of bits of entropy for 10 characters of base 10 account for bias", function(done) {
+     // 9 events with 3 bits per event and 1 event with 1 bit per event
+     testEntropyBits(done, "0000101018", "28");
  });
  it("Shows the number of bits of entropy for a full deck of cards", function(done) {
-     // cards are not replaced, so a full deck is not 52^52 entropy which is 296
-     // bits, it's 52!, which is 225 bits
-     testEntropyBits(done, "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks", "225");
+     // removing bias is 32*5 + 16*4 + 4*2
+     testEntropyBits(done, "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks", "232");
  });
  
  it("Shows details about the entered entropy", function(done) {
@@@ -3320,7 -3336,7 +3346,7 @@@ it("Shows details about the entered ent
              entropy: "7d",
              type: "card",
              events: "1",
-             bits: "4",
+             bits: "5",
              words: 0,
              strength: "less than a second",
          }
@@@ -3332,7 -3348,7 +3358,7 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks",
              type: "card (full deck)",
              events: "52",
-             bits: "225",
+             bits: "232",
              words: 21,
              strength: "centuries",
          }
@@@ -3344,7 -3360,7 +3370,7 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks3d",
              type: "card (full deck, 1 duplicate: 3d)",
              events: "53",
-             bits: "254",
+             bits: "237",
              words: 21,
              strength: "centuries",
          }
@@@ -3356,7 -3372,7 +3382,7 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqs3d4d",
              type: "card (2 duplicates: 3d 4d, 1 missing: KS)",
              events: "53",
-             bits: "254",
+             bits: "240",
              words: 21,
              strength: "centuries",
          }
@@@ -3368,8 -3384,8 +3394,8 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqs3d4d5d6d",
              type: "card (4 duplicates: 3d 4d 5d..., 1 missing: KS)",
              events: "55",
-             bits: "264",
-             words: 24,
+             bits: "250",
+             words: 21,
              strength: "centuries",
          }
      );
  it("Shows details about the entered entropy", function(done) {
      testEntropyFeedback(done,
          // Next test was throwing uncaught error in zxcvbn
-         // Also tests 451 bits, ie Math.log2(52!)*2 = 225.58 * 2
          {
              entropy: "ac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsksac2c3c4c5c6c7c8c9ctcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks",
              type: "card (full deck, 52 duplicates: ac 2c 3c...)",
              events: "104",
-             bits: "499",
-             words: 45,
+             bits: "464",
+             words: 42,
              strength: "centuries",
          }
      );
@@@ -3395,7 -3410,7 +3420,7 @@@ it("Shows details about the entered ent
              entropy: "asAS",
              type: "card (1 duplicate: AS)",
              events: "2",
-             bits: "9",
+             bits: "8",
              words: 0,
              strength: "less than a second",
          }
@@@ -3407,7 -3422,7 +3432,7 @@@ it("Shows details about the entered ent
              entropy: "ASas",
              type: "card (1 duplicate: as)",
              events: "2",
-             bits: "9",
+             bits: "8",
              words: 0,
              strength: "less than a second",
          }
@@@ -3420,8 -3435,8 +3445,8 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c  tcjcqckcad2d3d4d5d6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks",
              type: "card (1 missing: 9C)",
              events: "51",
-             bits: "221",
-             words: 18,
+             bits: "227",
+             words: 21,
              strength: "centuries",
          }
      );
@@@ -3432,7 -3447,7 +3457,7 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c  tcjcqckcad2d3d4d  6d7d8d9dtdjdqdkdah2h3h4h5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks",
              type: "card (2 missing: 9C 5D)",
              events: "50",
-             bits: "216",
+             bits: "222",
              words: 18,
              strength: "centuries",
          }
@@@ -3444,7 -3459,7 +3469,7 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c  tcjcqckcad2d3d4d  6d7d8d9dtdjd  kdah2h3h  5h6h7h8h9hthjhqhkhas2s3s4s5s6s7s8s9stsjsqsks",
              type: "card (4 missing: 9C 5D QD...)",
              events: "48",
-             bits: "208",
+             bits: "212",
              words: 18,
              strength: "centuries",
          }
@@@ -3457,20 -3472,21 +3482,21 @@@ it("Shows details about the entered ent
              entropy: "ac2c3c4c5c6c7c8c  tcjcqckcad2d3d4d  6d  8d9d  jd  kdah2h3h  5h6h7h8h9hthjhqhkh  2s3s4s5s6s7s8s9stsjsqsks",
              type: "card",
              events: "45",
-             bits: "195",
+             bits: "198",
              words: 18,
              strength: "centuries",
          }
      );
  });
  it("Shows details about the entered entropy", function(done) {
+     // multiple decks does not affect the bits per event
+     // since the bits are hardcoded in entropy.js
      testEntropyFeedback(done,
-         // Multiple decks of cards increases bits per event
          {
              entropy: "3d",
              events: "1",
-             bits: "4",
-             bitsPerEvent: "4.34",
+             bits: "5",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3479,8 -3495,8 +3505,8 @@@ it("Shows details about the entered ent
          {
              entropy: "3d3d",
              events: "2",
-             bits: "9",
-             bitsPerEvent: "4.80",
+             bits: "10",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3490,7 -3506,7 +3516,7 @@@ it("Shows details about the entered ent
              entropy: "3d3d3d",
              events: "3",
              bits: "15",
-             bitsPerEvent: "5.01",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3500,7 -3516,7 +3526,7 @@@ it("Shows details about the entered ent
              entropy: "3d3d3d3d",
              events: "4",
              bits: "20",
-             bitsPerEvent: "5.14",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3509,8 -3525,8 +3535,8 @@@ it("Shows details about the entered ent
          {
              entropy: "3d3d3d3d3d",
              events: "5",
-             bits: "26",
-             bitsPerEvent: "5.22",
+             bits: "25",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3519,8 -3535,8 +3545,8 @@@ it("Shows details about the entered ent
          {
              entropy: "3d3d3d3d3d3d",
              events: "6",
-             bits: "31",
-             bitsPerEvent: "5.28",
+             bits: "30",
+             bitsPerEvent: "4.46",
          }
      );
  });
@@@ -3529,8 -3545,8 +3555,8 @@@ it("Shows details about the entered ent
          {
              entropy: "3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d",
              events: "33",
-             bits: "184",
-             bitsPerEvent: "5.59",
+             bits: "165",
+             bitsPerEvent: "4.46",
              strength: 'less than a second - Repeats like "abcabcabc" are only slightly harder to guess than "abc"',
          }
      );
@@@ -3581,10 -3597,11 +3607,11 @@@ it('Converts very long entropy to very 
  // https://bip32jp.github.io/english/index.html
  // NOTES:
  // Is incompatible with:
+ //     base 6
  //     base 20
  it('Is compatible with bip32jp.github.io', function(done) {
-     var entropy  = "543210543210543210543210543210543210543210543210543210543210543210543210543210543210543210543210543";
-     var expectedPhrase = "train then jungle barely whip fiber purpose puppy eagle cloud clump hospital robot brave balcony utility detect estate old green desk skill multiply virus";
+     var entropy  = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
+     var expectedPhrase = "primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary fetch primary foster";
      driver.findElement(By.css('.use-entropy'))
          .click();
      driver.findElement(By.css('.entropy'))