module.exports = "(function(r){var n=function(r){this.cidrString=r.trim();var n=t(this.cidrString);if(null===n)throw new Error(\"Invalid CIDR specification\");this.maskedAddress=n.maskedAddress,this.mask=n.mask};n.prototype.containsIP=function(r){var n=i(r);if(null===n)throw new Error(\"Invalid ip: \"+r);for(var t=0;t<4;t++)if((n[t]&this.mask[t])!==this.maskedAddress[t])return!1;return!0};var t=function(r){var n=r.split(\"/\");if(2!==n.length)return null;var t=parseInt(n[1],10);if(isNaN(t)||t<0||t>32)return null;var a=i(n[0]);if(null===a)return null;for(var l=u(t),e=0;e<4;e++)a[e]=a[e]&l[e];return{maskedAddress:a,mask:l}},i=function(r){var n=r.split(\".\");if(4!==n.length)return null;for(var t=[],i=0;i<4;i++){var l=a(n[i]);if(null===l)return null;t[i]=l}return t},a=function(r){if(r.length>3)return null;var n=parseInt(r,10);return isNaN(n)||r!==n.toString()||n<0||n>255?null:n},l=[0,128,192,224,240,248,252,254,255],u=function(r){if(r<0||r>32)return null;for(var n=[],t=0;t<4;t++)n[t]=0;var i=Math.floor(r/8),a=r%8;for(t=0;t<i;t++)n[t]=255;return i<4&&(n[i]=l[a]),n};r.exports={CIDR:n}})";