{
  "name": "netmask",
  "versions": {
    "0.0.0": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "0.0.0",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "name": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": "~0.6.13"
      },
      "dependencies": {
        "coffee-script": "1.2.0"
      },
      "devDependencies": {
        "vows": "*"
      },
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "_id": "netmask@0.0.0",
      "_engineSupported": true,
      "_npmVersion": "1.1.0-beta-9",
      "_nodeVersion": "v0.6.13",
      "_defaultsLoaded": true,
      "dist": {
        "shasum": "ab5cd685cd276ea3adca3966d622437d12475014",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-0.0.0.tgz",
        "integrity": "sha512-awE5cgoln6kzyDjeJ5myeRxCxmhWuJYVbvBVCWh3KoH3s5r1cIjWCBvxHX//VumOGGtW8f6M2YfctbL4OC5d9Q==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEUCIQDYdsJzkNUGwTvfqjoBTwccFZfdzPgXsQ/vC576NpLgoAIgQpip7q31RjmoSmwAcWd3Hz+gOGP4WTi7jRfhQ+V6Ius="
          }
        ]
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "0.0.1": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "0.0.1",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "name": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": "~0.6.13"
      },
      "dependencies": {
        "coffee-script": "1.2.0"
      },
      "devDependencies": {
        "vows": "*"
      },
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "_id": "netmask@0.0.1",
      "_engineSupported": true,
      "_npmVersion": "1.1.0-beta-9",
      "_nodeVersion": "v0.6.13",
      "_defaultsLoaded": true,
      "dist": {
        "shasum": "669a4ed5fc26804e9a89d1fb6b4fb4a2fe28de27",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-0.0.1.tgz",
        "integrity": "sha512-bfeVFm7ahCjXXQxe7J03mswtBcdyjdPLWALlOY1bwuBP9kB9gewhCJiM14mAhDxrTQ8PkEYrnzGRIdp3cHbw7Q==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEQCIBB+3LO/nHPPqP0B7MGjzUPa1BLFGaIlaCYsg4wfPM/oAiB8GGn8kw8MwmdaA0y9trLm1UiKBkNan2DdKJbIpTFocQ=="
          }
        ]
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "0.0.2": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "0.0.2",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "name": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "dependencies": {
        "coffee-script": "1.2.0"
      },
      "devDependencies": {
        "vows": "*"
      },
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "_id": "netmask@0.0.2",
      "_engineSupported": true,
      "_npmVersion": "1.1.0-beta-9",
      "_nodeVersion": "v0.6.17",
      "_defaultsLoaded": true,
      "dist": {
        "shasum": "91e09b8e883f16d147485db48ecdfffcc718c8e2",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-0.0.2.tgz",
        "integrity": "sha512-bVdyWEOeHb4sRzV7aPJ+sFh74IVnakqBBpFI4mJgJfYP+lKcrsA1HL3mM4G3DoM+icuWR/H44a7I3lwIfcM1Fw==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEUCIQCX+xa3Ihtkzk0zfI6hBXKGl5dw5jI1QM5fe65yvRy5OgIgRbY+IuFclLcgb2CAahA2pIBlBDCMhG3e+lt8S/dqbLc="
          }
        ]
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "1.0.3": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "1.0.3",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "dependencies": {
        "coffee-script": "1.2.0"
      },
      "devDependencies": {
        "vows": "*"
      },
      "_id": "netmask@1.0.3",
      "dist": {
        "shasum": "96316d06069a5540f25cfb59bfed80c521f360f4",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-1.0.3.tgz",
        "integrity": "sha512-p9ux3bZlLONDfQo3gmB5mhVlrSmSdZbHCNWwHB4RmlPprw4KRkKDR6NalUuTHCyM7xLZdkLU5CF6tD6VXCYSLQ==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEUCIDZa5Ke1gF5Rfc46dUWf12zfxSP0UNizSufHc++K9N1HAiEAmtxg6jWwiAkxuIJJ+q8CWWDK0m8iRxsOuZAEbHYKrK8="
          }
        ]
      },
      "_from": ".",
      "_npmVersion": "1.3.5",
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "1.0.4": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "1.0.4",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": "1.2.0",
        "vows": "*"
      },
      "_id": "netmask@1.0.4",
      "dist": {
        "shasum": "c44a1ad93259d5b43ac5a940ed7cbb670c6e2907",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-1.0.4.tgz",
        "integrity": "sha512-zBnglHeTWvhhbjiyjF0O7RC0tLI7ryeyBwYsc6LpkTLheXVTGYJ2Y1dapETBWwag07ZAUJSw7jNRIJvkVh3PDw==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEUCIQCgYuVxq6A7WyPkYVES7I8BIbT+QOt49gs8b94tJ8UujwIgJtaaXPm7PoOfwztc+o1qk87zFZ/jePkriQKkUdbMNWA="
          }
        ]
      },
      "_from": ".",
      "_npmVersion": "1.3.5",
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "1.0.5": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "1.0.5",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": ">=1.2.0",
        "vows": "*"
      },
      "_id": "netmask@1.0.5",
      "dist": {
        "shasum": "84851218294b88e0ac5a008ec46401e2a5c767d2",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-1.0.5.tgz",
        "integrity": "sha512-HEwz6/LMMil2gZ+7ZAz3py1eZ6R4eDVxeH3iT6qC2sbd25y9Y6wZWYVBRHVS7JspFsqFcxV+SMbRLSRtSZdjuA==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEYCIQDjk3c+4nHhuWN/79ESoFR4kuEnZekMd7eCa+q/c77NgwIhAKyPjwZLwYbLIrveKh1gnQPAzdu5RHYoaTgWa6USu54E"
          }
        ]
      },
      "_from": ".",
      "_npmVersion": "1.4.3",
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "directories": {},
      "contributors": []
    },
    "1.0.6": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "1.0.6",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": ">=1.2.0",
        "vows": "*"
      },
      "gitHead": "610161f7a8caf2e3004c03bb6ec8931c37b957c6",
      "_id": "netmask@1.0.6",
      "_shasum": "20297e89d86f6f6400f250d9f4f6b4c1945fcd35",
      "_from": ".",
      "_npmVersion": "3.6.0",
      "_nodeVersion": "5.7.1",
      "_npmUser": {
        "name": "rs",
        "email": "rs@dailymotion.com"
      },
      "dist": {
        "shasum": "20297e89d86f6f6400f250d9f4f6b4c1945fcd35",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-1.0.6.tgz",
        "integrity": "sha512-3DWDqAtIiPSkBXZyYEjwebfK56nrlQfRGt642fu8RPaL+ePu750+HCMHxjJCG3iEHq/0aeMvX6KIzlv7nuhfrA==",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEQCIBtf6q/qIe8bez4ZbzMMq0zXp1wyBTPy97ChG9Y++YobAiAnQNQpZy6zMYeh6SMlzp4+P2QRIA+WCbuEAYvaRynj/Q=="
          }
        ]
      },
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@dailymotion.com"
        }
      ],
      "_npmOperationalInternal": {
        "host": "packages-12-west.internal.npmjs.com",
        "tmp": "tmp/netmask-1.0.6.tgz_1464621218193_0.5276697664521635"
      },
      "directories": {},
      "contributors": []
    },
    "2.0.0": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@dailymotion.com"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "2.0.0",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "vows --spec test/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": ">=1.2.0",
        "vows": "*"
      },
      "gitHead": "7e1ad1f0b264a1ca407964061f7d8f71fe92dc28",
      "_id": "netmask@2.0.0",
      "_nodeVersion": "12.20.1",
      "_npmVersion": "6.14.10",
      "_npmUser": {
        "name": "rs",
        "email": "rs@rhapsodyk.net"
      },
      "dist": {
        "integrity": "sha512-jwI5BiAalI743VK1tWnNGxFc/5JqFtez/jn7ILwgK1xTCevXDAOQw9ith0J0zS2I7g2jY0a3yk5RdstHUawJFg==",
        "shasum": "9de0ef120bae60f315c5d90c9289ac53790e708d",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-2.0.0.tgz",
        "fileCount": 8,
        "unpackedSize": 21886,
        "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVUzbCRA9TVsSAnZWagAAjuMQAKHHKibUsjwbump6qR5l\nZtjlNP7ANxeCwQRbdcvT6+R0VvuR7ndY7rVk0dVzfeZnazYH1yMsK/wHCX+6\nzoDBMPC8I8ba8NA9bz/es90UrwSJsl+5avvjW1xLxyEP7Ezpma3DuByI2R9f\n0oMobqphffUJ5umQ3dL6J2WdHWIsFUWISGFrhGpcvMhpB0B/0m8MA2giUq1U\nmzRpnwabPujVxcMMGlD+IuR3MgcJOA9/olByU/c1OUzqgBOAjBJA7yYwEENR\nZFYD34tHW49E4Ts8ZZtkts8moCRFuJyjG54sjxetNxNEZGw7oL+5sWG/JrBt\nio04EOqKDq/+c0g6XULMCYvezqLm4GKPxQYmCsa51Bl+Nsm2RQOcoBbE2sYu\nqhSCb/0I7r7veF8UxV82L5spmBAl+spC220gpyYcSJLHnDWjLBkG/jNWoqIJ\nOyhjDhIc3xbjIvqaBZboOSQFkIoA7WE2FSy5NztuDpjsW9YamLSUKVcfA8YT\njIl/U7DgBwt0J1C18AyCH5V8+IWNSJYhzBcalRxdr5sM5Mdtn6e0RyJo/JPB\ngpWjxq2sC36GOR5dW+38fI36mbc7mE/QmEKzsqvXK1RDz2UJxjKHiN/BOZu/\n6nBBjCob4k9qsDWcFEZgKyLpl4cB0IQ3v52nntmgXNQusiTeMA0RoUWN/5Cs\nuhj7\r\n=aPZm\r\n-----END PGP SIGNATURE-----\r\n",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEQCICHX2aupEUWZNpjHXOQNmP0Qm71Fu5R/+6ZfUl+0zXmgAiAtKHreVvS8qzLl50pv7rJV9Z+SP+xKwVswQcndKJq0Ww=="
          }
        ]
      },
      "directories": {},
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@rhapsodyk.net"
        }
      ],
      "_npmOperationalInternal": {
        "host": "s3://npm-registry-packages",
        "tmp": "tmp/netmask_2.0.0_1616202971061_0.8312020332769237"
      },
      "_hasShrinkwrap": false,
      "contributors": []
    },
    "2.0.1": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@rhapsodyk.net"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "2.0.1",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "coffee -c lib/*.coffee && vows --spec test/* && mocha tests/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": ">=1.2.0",
        "mocha": "^8.3.2",
        "vows": "*"
      },
      "gitHead": "d1bd7d327edc71c92da1724867bb147754c9e855",
      "_id": "netmask@2.0.1",
      "_nodeVersion": "12.20.1",
      "_npmVersion": "6.14.10",
      "_npmUser": {
        "name": "rs",
        "email": "rs@rhapsodyk.net"
      },
      "dist": {
        "integrity": "sha512-gB8eG6ubxz67c7O2gaGiyWdRUIbH61q7anjgueDqCC9kvIs/b4CTtCMaQKeJbv1/Y7FT19I4zKwYmjnjInRQsg==",
        "shasum": "5a5cbdcbb7b6de650870e15e83d3e9553a414cf4",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-2.0.1.tgz",
        "fileCount": 9,
        "unpackedSize": 28306,
        "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYb3WCRA9TVsSAnZWagAANfAP/RoL3E+z/BODeuU0V3cB\nfrmPRcsfs7aS+SzYrDoG9RFh27tqESwN9bBmehJgPdC9/JC0TcAG710fUprD\nmNpUAICzqZvA5CSviRnhcYPd5DUiEeniJIB0ke2V1TVEQPM9OmU9pBf9krTR\nb1p35yCsQ+Va+Qldu7jQHBi7E05NnQ2IYCCRmflWyUMpuuXuF+x6mPBgnfEi\n+iTbeGM7eX4pRrw5Whfqyu0O9EOaCIuXi9DYgCm71L98ExzT7iPEdObZkbrv\nE6XAc4WATaMW3nGRk5tdCgd/tOfJOkb5hlr+CPdJgI95SI9ygfgFLnXtuvGo\n6xyIerlF8i9QQ3zeON/xBW773HJ8S5vgVQFqhOZQwuS4+1uGZSVojfFnJHyq\nes0oKCLuyRSwhwt16mMF6Kc0xDW/vktRuAeDmsbIa2aO2iloGM4/WmSy91GE\nxu0LW7PkMfZ5HmS1ti9+nl0wLun6cZn6q31qR+bnIL99/oBO8BpfOrl5eF3b\no+GYWFmjRqsscDwcweEM2vdzscGBJ80zkHOOcpXxD4utxNSiIpByIV1EuD7u\nOxavM4jlQFkRJRFQEqXrR4HYKTLVWoSDWQ83Om/04r9l6aDFB3s0N69qEwpI\ncdpnPedeZYe+BCN9tPuNrnCWYepo7K70gaBgXiGJGzfRCvurV7vp0ybL0Hw0\nLh+L\r\n=XCo0\r\n-----END PGP SIGNATURE-----\r\n",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEYCIQDc+m2hlitGx4Pf7HkSlFSplfR3RgPMM7HsNqzE63JQRwIhAJenERmPT9n01EdhxbVa/L8j7K3QdDzewuzE5n3Mwq2X"
          }
        ]
      },
      "directories": {},
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@rhapsodyk.net"
        }
      ],
      "_npmOperationalInternal": {
        "host": "s3://npm-registry-packages",
        "tmp": "tmp/netmask_2.0.1_1617018326171_0.5121274324966827"
      },
      "_hasShrinkwrap": false,
      "contributors": []
    },
    "2.0.2": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@rhapsodyk.net"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "2.0.2",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./lib/netmask",
      "scripts": {
        "prepublish": "coffee -c lib/*.coffee",
        "test": "coffee -c lib/*.coffee && vows --spec test/* && mocha tests/*"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "coffee-script": ">=1.2.0",
        "mocha": "^8.3.2",
        "vows": "*"
      },
      "gitHead": "cfc331d64edcb5d09237d8e0f407370d6af6d235",
      "_id": "netmask@2.0.2",
      "_nodeVersion": "12.20.1",
      "_npmVersion": "6.14.10",
      "_npmUser": {
        "name": "rs",
        "email": "rs@rhapsodyk.net"
      },
      "dist": {
        "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==",
        "shasum": "8b01a07644065d536383835823bc52004ebac5e7",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-2.0.2.tgz",
        "fileCount": 10,
        "unpackedSize": 32496,
        "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ1/ECRA9TVsSAnZWagAAOggP/1A221F/gy94bEBmWP12\nBlqSUQGlQSEHSqgkKQhYvtW2NiymEWqzKZ1D9AZklrWjk0zOtHQ6UMG2o5PU\nuLem1xWo23TU8uuvgI5mIPavMsAxR1KOSMh9BwBx2aqsH1JxwU7jdYEcd4Y5\nfSpsONkGYvv5bt0QVwvMOpkeHyfY3kJRg451KzxJmzhT53Q75PsFnqM2f7aB\nBheo7vjYz2QZ34q6rt/z8FWGpvpLsBv0OeUSD5upGSALF+n/fAVkplMRgNHB\nyzU7DMRI1fV9hZ3viDhEzByFjZWv6RODmjPzV3uceQ/n9Ew5nLqh5o6J4zbz\nItbz4aibBlOfVGIc0UysNqeSndYRNr0Sc1u/bvy3nmFxFi5VQ+X+5j3AXCVU\nq1gZbiuswwaywOAcIqrh3s0/kuJPp4fON13HgQHlLPs8jSPuP8qtaU35fCOj\nCkhH4mliwmypj+czaBOZBc09BXck8ib9b2JnNf3Alo/IKTvOhWnNuja6nt1G\nxaelMdyT5+/MruccuK6lsop1yPPtYBMz5t4jZd61pp9tEQkGJ2znnrk7drl1\nsyLo9Odo21kzsZ6WwvqhLFOqwogQePsjFyMpSCvtuuhghjTLZf+1HMh01gDU\na6T2aGWQhiR3ITcY5uI/4IJgm5M5JPJKLEvKyPCP4dIWzAfwCOy9HWv4MDKP\nXJbA\r\n=cDWS\r\n-----END PGP SIGNATURE-----\r\n",
        "signatures": [
          {
            "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
            "sig": "MEUCIHTt1kAsXp/v7cHCdnU411kvutkXaLWX/q/AvtoVh371AiEAxVFhUVZDWknEFnPeDvufdSvEVlpqXsuxLQhCBLRENQo="
          }
        ]
      },
      "directories": {},
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@rhapsodyk.net"
        }
      ],
      "_npmOperationalInternal": {
        "host": "s3://npm-registry-packages",
        "tmp": "tmp/netmask_2.0.2_1617387459614_0.8254294721402653"
      },
      "_hasShrinkwrap": false,
      "contributors": []
    },
    "2.1.0": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@rhapsodyk.net"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "2.1.0",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./dist/netmask",
      "types": "./dist/netmask.d.ts",
      "scripts": {
        "prepublish": "tsc",
        "test": "tsc && mocha --require ts-node/register tests/*.ts"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "@types/mocha": "^9.0.0",
        "@types/node": "^18.0.0",
        "mocha": "^8.3.2",
        "ts-node": "^10.0.0",
        "typescript": "^5.0.0"
      },
      "_id": "netmask@2.1.0",
      "gitHead": "15a9cf6cc0ae9f613884ae3536c00b5c2d685bc3",
      "_nodeVersion": "24.9.0",
      "_npmVersion": "11.6.0",
      "dist": {
        "integrity": "sha512-z9sZrk6wyf8/NDKKqe+Tyl58XtgkYrV4kgt1O8xrzYvpl1LvPacPo0imMLHfpStk3kgCIq1ksJ2bmJn9hue2lQ==",
        "shasum": "d915b3374cafeab6bc0d7c9da06be0e77ee94365",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-2.1.0.tgz",
        "fileCount": 9,
        "unpackedSize": 23950,
        "signatures": [
          {
            "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U",
            "sig": "MEQCIB/XBKBWN8g/9IQt5eAaigiIqNF+Sr//jC63bt6tiwEXAiARj6YMcrvvUiWoDskK0mZr26L1+0RlQrFJRASSDMNblw=="
          }
        ]
      },
      "_npmUser": {
        "name": "rs",
        "email": "rs@rhapsodyk.net"
      },
      "directories": {},
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@rhapsodyk.net"
        }
      ],
      "_npmOperationalInternal": {
        "host": "s3://npm-registry-packages-npm-production",
        "tmp": "tmp/netmask_2.1.0_1775500692843_0.9796875762549617"
      },
      "_hasShrinkwrap": false,
      "contributors": []
    },
    "2.1.1": {
      "author": {
        "name": "Olivier Poitrey",
        "email": "rs@rhapsodyk.net"
      },
      "name": "netmask",
      "description": "Parse and lookup IP network blocks",
      "version": "2.1.1",
      "homepage": "https://github.com/rs/node-netmask",
      "bugs": {
        "url": "https://github.com/rs/node-netmask/issues"
      },
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "git://github.com/rs/node-netmask.git"
      },
      "keywords": [
        "net",
        "mask",
        "ip",
        "network",
        "cidr",
        "netmask",
        "subnet",
        "ipcalc"
      ],
      "main": "./dist/netmask",
      "types": "./dist/netmask.d.ts",
      "scripts": {
        "prepublish": "tsc",
        "test": "tsc && mocha --require ts-node/register tests/*.ts"
      },
      "engines": {
        "node": ">= 0.4.0"
      },
      "devDependencies": {
        "@types/mocha": "^9.0.0",
        "@types/node": "^18.0.0",
        "mocha": "^10.2.0",
        "ts-node": "^10.0.0",
        "typescript": "^5.0.0"
      },
      "_id": "netmask@2.1.1",
      "gitHead": "1cbf0e16f51c6b17f53741a6bd5fd8cfb9dc833d",
      "_nodeVersion": "24.9.0",
      "_npmVersion": "11.6.0",
      "dist": {
        "integrity": "sha512-eonl3sLUha+S1GzTPxychyhnUzKyeQkZ7jLjKrBagJgPla13F+uQ71HgpFefyHgqrjEbCPkDArxYsjY8/+gLKA==",
        "shasum": "80043d265b53aa521b3bd01e8fcdf353f9e1e81e",
        "tarball": "http://mirrors.tencentyun.com/npm/netmask/-/netmask-2.1.1.tgz",
        "fileCount": 10,
        "unpackedSize": 26100,
        "signatures": [
          {
            "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U",
            "sig": "MEUCIQDvFZX3qm2j3FpKV58vuI+3gTrRsr4VR4DtubDL0sLoHgIgAXMEP2RKbTxr4C9r4hpdzsO3LI2OsyAeSbaqS8lHsyg="
          }
        ]
      },
      "_npmUser": {
        "name": "rs",
        "email": "rs@rhapsodyk.net"
      },
      "directories": {},
      "maintainers": [
        {
          "name": "rs",
          "email": "rs@rhapsodyk.net"
        }
      ],
      "_npmOperationalInternal": {
        "host": "s3://npm-registry-packages-npm-production",
        "tmp": "tmp/netmask_2.1.1_1775667546465_0.686204232558494"
      },
      "_hasShrinkwrap": false,
      "contributors": []
    }
  },
  "time": {
    "modified": "2026-04-08T16:59:06.728Z",
    "created": "2012-04-05T06:51:48.293Z",
    "0.0.0": "2012-04-05T06:51:53.764Z",
    "0.0.1": "2012-04-20T17:42:39.779Z",
    "0.0.2": "2012-06-21T23:29:27.096Z",
    "1.0.3": "2013-12-16T09:33:19.372Z",
    "1.0.4": "2013-12-16T09:36:21.515Z",
    "1.0.5": "2014-12-19T00:10:57.630Z",
    "1.0.6": "2016-05-30T15:13:38.747Z",
    "2.0.0": "2021-03-20T01:16:11.253Z",
    "2.0.1": "2021-03-29T11:45:26.401Z",
    "2.0.2": "2021-04-02T18:17:39.736Z",
    "2.1.0": "2026-04-06T18:38:12.983Z",
    "2.1.1": "2026-04-08T16:59:06.620Z"
  },
  "users": {},
  "dist-tags": {
    "latest": "2.1.1"
  },
  "_rev": "31283-ef993a605c92b8ce",
  "_id": "netmask",
  "readme": "Netmask\n=======\n\nThe Netmask class parses and understands IPv4 and IPv6 CIDR blocks so they can be explored and compared. This module is highly inspired by Perl [Net::Netmask](http://search.cpan.org/dist/Net-Netmask/) module.\n\nSynopsis\n--------\n\n### IPv4\n\n```js\nvar Netmask = require('netmask').Netmask\n\nvar block = new Netmask('10.0.0.0/12');\nblock.base;                     // 10.0.0.0\nblock.mask;                     // 255.240.0.0\nblock.bitmask;                  // 12\nblock.hostmask;                 // 0.15.255.255\nblock.broadcast;                // 10.15.255.255\nblock.size;                     // 1048576\nblock.first;                    // 10.0.0.1\nblock.last;                     // 10.15.255.254\n\nblock.contains('10.0.8.10');    // true\nblock.contains('10.8.0.10');    // true\nblock.contains('192.168.1.20'); // false\n\nblock.next()                    // Netmask('10.16.0.0/12')\n```\n\n### IPv6\n\n```js\nvar Netmask = require('netmask').Netmask\n\nvar block = new Netmask('2001:db8::/32');\nblock.base;                     // 2001:db8::\nblock.bitmask;                  // 32\nblock.first;                    // 2001:db8::\nblock.last;                     // 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff\n\nblock.contains('2001:db8::1');  // true\nblock.contains('2001:db9::1');  // false\n\nblock.next()                    // Netmask('2001:db9::/32')\n```\n\nConstructing\n------------\n\nNetmask objects are created with an IP address and optionally a mask. The IP version is detected automatically. There are many forms that are recognized:\n\n### IPv4\n\n```\n'216.240.32.0/24'               // The preferred form.\n'216.240.32.0/255.255.255.0'\n'216.240.32.0', '255.255.255.0'\n'216.240.32.0', 0xffffff00\n'216.240.32.4'                  // A /32 block.\n'0330.0360.040.04'              // Octal form\n'0xd8.0xf0.0x20.0x4'           // Hex form\n```\n\n### IPv6\n\n```\n'2001:db8::/32'                 // The preferred form.\n'2001:db8::', 32\n'::1'                           // A /128 block.\n'::ffff:192.168.1.1/120'       // Mixed IPv4-mapped form.\n'fe80::1%eth0'                  // Zone IDs are stripped.\n```\n\nAPI\n---\n\n- `.base`: The base address of the network block as a string (eg: 216.240.32.0 or 2001:db8::). Base does not give an indication of the size of the network block.\n- `.mask`: The netmask as a string (eg: 255.255.255.0 or ffff:ffff::).\n- `.hostmask`: The host mask which is the opposite of the netmask (eg: 0.0.0.255).\n- `.bitmask`: The netmask as a number of bits in the network portion of the address for this block (eg: 24).\n- `.size`: The number of IP addresses in a block (eg: 256).\n- `.maskLong`: **Deprecated.** The netmask as an unsigned 32-bit integer. Only meaningful for IPv4; returns `0` for IPv6.\n- `.netLong`: **Deprecated.** The base address as an unsigned 32-bit integer. Only meaningful for IPv4; returns `0` for IPv6.\n- `.broadcast`: The blocks broadcast address (eg: 192.168.1.0/24 => 192.168.1.255). Always `undefined` for IPv6.\n- `.first`, `.last`: First and last useable address.\n- `.contains(ip or block)`: Returns a true if the IP number `ip` is part of the network. That is, a true value is returned if `ip` is between `base` and `broadcast`. If a Netmask object or a block is given, it returns true only of the given block fits inside the network.\n- `.next(count)`: Without a `count`, return the next block of the same size after the current one. With a count, return the Nth block after the current one. A count of -1 returns the previous block. Undef will be returned if out of legal address space.\n- `.toString()`: The netmask in base/bitmask format (e.g., '216.240.32.0/24')\n\nInstallation\n------------\n\n    $ npm install netmask\n\nRun all tests\n-------------\n\n    $ npm test\n\nLicense\n-------\n\n(The MIT License)\n\nCopyright (c) 2011 Olivier Poitrey <rs@rhapsodyk.net>\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
  "_attachments": {}
}
