diff --git a/package-lock.json b/package-lock.json
index 58df2d2..af7d88f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
 {
   "name": "netparser",
-  "version": "1.8.1",
+  "version": "1.9.0",
   "lockfileVersion": 2,
   "requires": true,
   "packages": {
     "": {
       "name": "netparser",
-      "version": "1.8.1",
+      "version": "1.9.0",
       "license": "MIT",
       "devDependencies": {
         "@types/benchmark": "^2.1.1",
@@ -18,7 +18,6 @@
         "benchmark": "^2.1.4",
         "cidr-matcher": "^2.1.1",
         "coveralls": "^3.1.1",
-        "docts": "^0.2.0",
         "eslint": "^6.8.0",
         "eslint-config-prettier": "^6.15.0",
         "eslint-plugin-prettier": "^3.4.0",
@@ -1328,18 +1327,6 @@
         "file-uri-to-path": "1.0.0"
       }
     },
-    "node_modules/bluebird": {
-      "version": "3.7.2",
-      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
-      "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
-      "dev": true
-    },
-    "node_modules/bodec": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/bodec/-/bodec-0.1.0.tgz",
-      "integrity": "sha1-vIUVVUMPI8n3ZQp172TGqUw0GMw=",
-      "dev": true
-    },
     "node_modules/brace-expansion": {
       "version": "1.1.11",
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -1813,12 +1800,6 @@
         "cssom": "0.3.x"
       }
     },
-    "node_modules/culvert": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz",
-      "integrity": "sha1-lQL18BVKLVoioCPnn3HMk2+m728=",
-      "dev": true
-    },
     "node_modules/dashdash": {
       "version": "1.14.1",
       "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
@@ -2005,20 +1986,6 @@
         "node": ">=6.0.0"
       }
     },
-    "node_modules/docts": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/docts/-/docts-0.2.0.tgz",
-      "integrity": "sha512-GBFBUaOAPrHWQBoweixItjDKjqTgTx1vLJ9Sn9RHjnar35+9B9MbWiQmlTrz5WrYdHV/NpeJvqx51Xi2ZWkWWg==",
-      "dev": true,
-      "dependencies": {
-        "bluebird": "^3.5.1",
-        "readts": "~0.2.0",
-        "ts-git": "~0.1.0"
-      },
-      "bin": {
-        "docts": "bin/docts"
-      }
-    },
     "node_modules/domexception": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz",
@@ -2943,18 +2910,6 @@
         "assert-plus": "^1.0.0"
       }
     },
-    "node_modules/git-node-fs": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/git-node-fs/-/git-node-fs-1.0.0.tgz",
-      "integrity": "sha1-SbIV4kLr5Dqkx1Ybu6SZUhdSCA8=",
-      "dev": true
-    },
-    "node_modules/git-sha1": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/git-sha1/-/git-sha1-0.1.2.tgz",
-      "integrity": "sha1-WZrBkrcYdYJeE6RF86bgURjC90U=",
-      "dev": true
-    },
     "node_modules/glob": {
       "version": "7.1.7",
       "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
@@ -4480,18 +4435,6 @@
       "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==",
       "dev": true
     },
-    "node_modules/js-git": {
-      "version": "0.7.8",
-      "resolved": "https://registry.npmjs.org/js-git/-/js-git-0.7.8.tgz",
-      "integrity": "sha1-UvplWrYYd9bxB578ZTS1VPMeVEQ=",
-      "dev": true,
-      "dependencies": {
-        "bodec": "^0.1.0",
-        "culvert": "^0.1.2",
-        "git-sha1": "^0.1.2",
-        "pako": "^0.2.5"
-      }
-    },
     "node_modules/js-tokens": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
@@ -4606,13 +4549,10 @@
       "dev": true
     },
     "node_modules/json5": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
-      "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+      "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
       "dev": true,
-      "dependencies": {
-        "minimist": "^1.2.5"
-      },
       "bin": {
         "json5": "lib/cli.js"
       },
@@ -5381,12 +5321,6 @@
         "node": ">=6"
       }
     },
-    "node_modules/pako": {
-      "version": "0.2.9",
-      "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz",
-      "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
-      "dev": true
-    },
     "node_modules/parent-module": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -5669,28 +5603,6 @@
         "node": ">=6"
       }
     },
-    "node_modules/readts": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/readts/-/readts-0.2.0.tgz",
-      "integrity": "sha512-P5EycoS/E27rnkyWl6fM2k6uDOOfV5kfmUMkkJ4wdAlgYA0uOBR5tZKlbgQytwc5md9iVh7FYO0K/xb/Vum4Yw==",
-      "dev": true,
-      "dependencies": {
-        "typescript": "^2.7.2"
-      }
-    },
-    "node_modules/readts/node_modules/typescript": {
-      "version": "2.9.2",
-      "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz",
-      "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==",
-      "dev": true,
-      "bin": {
-        "tsc": "bin/tsc",
-        "tsserver": "bin/tsserver"
-      },
-      "engines": {
-        "node": ">=4.2.0"
-      }
-    },
     "node_modules/realpath-native": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz",
@@ -6831,17 +6743,6 @@
         "punycode": "^2.1.0"
       }
     },
-    "node_modules/ts-git": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/ts-git/-/ts-git-0.1.0.tgz",
-      "integrity": "sha1-8McvgaAA7rDKn/ITLZ8jMSTp7vo=",
-      "dev": true,
-      "dependencies": {
-        "bluebird": "^3.4.0",
-        "git-node-fs": "~1.0.0",
-        "js-git": "~0.7.7"
-      }
-    },
     "node_modules/ts-jest": {
       "version": "24.3.0",
       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-24.3.0.tgz",
@@ -8565,18 +8466,6 @@
         "file-uri-to-path": "1.0.0"
       }
     },
-    "bluebird": {
-      "version": "3.7.2",
-      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
-      "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
-      "dev": true
-    },
-    "bodec": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/bodec/-/bodec-0.1.0.tgz",
-      "integrity": "sha1-vIUVVUMPI8n3ZQp172TGqUw0GMw=",
-      "dev": true
-    },
     "brace-expansion": {
       "version": "1.1.11",
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -8978,12 +8867,6 @@
         "cssom": "0.3.x"
       }
     },
-    "culvert": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/culvert/-/culvert-0.1.2.tgz",
-      "integrity": "sha1-lQL18BVKLVoioCPnn3HMk2+m728=",
-      "dev": true
-    },
     "dashdash": {
       "version": "1.14.1",
       "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
@@ -9127,17 +9010,6 @@
         "esutils": "^2.0.2"
       }
     },
-    "docts": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/docts/-/docts-0.2.0.tgz",
-      "integrity": "sha512-GBFBUaOAPrHWQBoweixItjDKjqTgTx1vLJ9Sn9RHjnar35+9B9MbWiQmlTrz5WrYdHV/NpeJvqx51Xi2ZWkWWg==",
-      "dev": true,
-      "requires": {
-        "bluebird": "^3.5.1",
-        "readts": "~0.2.0",
-        "ts-git": "~0.1.0"
-      }
-    },
     "domexception": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz",
@@ -9863,18 +9735,6 @@
         "assert-plus": "^1.0.0"
       }
     },
-    "git-node-fs": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/git-node-fs/-/git-node-fs-1.0.0.tgz",
-      "integrity": "sha1-SbIV4kLr5Dqkx1Ybu6SZUhdSCA8=",
-      "dev": true
-    },
-    "git-sha1": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/git-sha1/-/git-sha1-0.1.2.tgz",
-      "integrity": "sha1-WZrBkrcYdYJeE6RF86bgURjC90U=",
-      "dev": true
-    },
     "glob": {
       "version": "7.1.7",
       "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
@@ -11051,18 +10911,6 @@
       "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==",
       "dev": true
     },
-    "js-git": {
-      "version": "0.7.8",
-      "resolved": "https://registry.npmjs.org/js-git/-/js-git-0.7.8.tgz",
-      "integrity": "sha1-UvplWrYYd9bxB578ZTS1VPMeVEQ=",
-      "dev": true,
-      "requires": {
-        "bodec": "^0.1.0",
-        "culvert": "^0.1.2",
-        "git-sha1": "^0.1.2",
-        "pako": "^0.2.5"
-      }
-    },
     "js-tokens": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
@@ -11164,13 +11012,10 @@
       "dev": true
     },
     "json5": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz",
-      "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==",
-      "dev": true,
-      "requires": {
-        "minimist": "^1.2.5"
-      }
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+      "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+      "dev": true
     },
     "jsonfile": {
       "version": "4.0.0",
@@ -11774,12 +11619,6 @@
       "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
       "dev": true
     },
-    "pako": {
-      "version": "0.2.9",
-      "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz",
-      "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
-      "dev": true
-    },
     "parent-module": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -11996,23 +11835,6 @@
         "read-pkg": "^3.0.0"
       }
     },
-    "readts": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/readts/-/readts-0.2.0.tgz",
-      "integrity": "sha512-P5EycoS/E27rnkyWl6fM2k6uDOOfV5kfmUMkkJ4wdAlgYA0uOBR5tZKlbgQytwc5md9iVh7FYO0K/xb/Vum4Yw==",
-      "dev": true,
-      "requires": {
-        "typescript": "^2.7.2"
-      },
-      "dependencies": {
-        "typescript": {
-          "version": "2.9.2",
-          "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz",
-          "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==",
-          "dev": true
-        }
-      }
-    },
     "realpath-native": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz",
@@ -12909,17 +12731,6 @@
         "punycode": "^2.1.0"
       }
     },
-    "ts-git": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/ts-git/-/ts-git-0.1.0.tgz",
-      "integrity": "sha1-8McvgaAA7rDKn/ITLZ8jMSTp7vo=",
-      "dev": true,
-      "requires": {
-        "bluebird": "^3.4.0",
-        "git-node-fs": "~1.0.0",
-        "js-git": "~0.7.7"
-      }
-    },
     "ts-jest": {
       "version": "24.3.0",
       "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-24.3.0.tgz",