UNPKG

stochator

Version:

A tiny library providing for creating a variety of random value generators.

3 lines (2 loc) 38.5 kB
!function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){function _SubRange(n,t){this.low=n,this.high=t,this.length=1+t-n}function DiscontinuousRange(n,t){return this instanceof DiscontinuousRange?(this.ranges=[],this.length=0,void(void 0!==n&&this.add(n,t))):new DiscontinuousRange(n,t)}function _update_length(n){n.length=n.ranges.reduce(function(n,t){return n+t.length},0)}_SubRange.prototype.overlaps=function(n){return!(this.high<n.low||this.low>n.high)},_SubRange.prototype.touches=function(n){return!(this.high+1<n.low||this.low-1>n.high)},_SubRange.prototype.add=function(n){return this.touches(n)&&new _SubRange(Math.min(this.low,n.low),Math.max(this.high,n.high))},_SubRange.prototype.subtract=function(n){return this.overlaps(n)?n.low<=this.low&&n.high>=this.high?[]:n.low>this.low&&n.high<this.high?[new _SubRange(this.low,n.low-1),new _SubRange(n.high+1,this.high)]:n.low<=this.low?[new _SubRange(n.high+1,this.high)]:[new _SubRange(this.low,n.low-1)]:!1},_SubRange.prototype.toString=function(){return this.low==this.high?this.low.toString():this.low+"-"+this.high},_SubRange.prototype.clone=function(){return new _SubRange(this.low,this.high)},DiscontinuousRange.prototype.add=function(n,t){function e(n){for(var t=[],e=0;e<o.ranges.length&&!n.touches(o.ranges[e]);)t.push(o.ranges[e].clone()),e++;for(;e<o.ranges.length&&n.touches(o.ranges[e]);)n=n.add(o.ranges[e]),e++;for(t.push(n);e<o.ranges.length;)t.push(o.ranges[e].clone()),e++;o.ranges=t,_update_length(o)}var o=this;return n instanceof DiscontinuousRange?n.ranges.forEach(e):n instanceof _SubRange?e(n):(void 0===t&&(t=n),e(new _SubRange(n,t))),this},DiscontinuousRange.prototype.subtract=function(n,t){function e(n){for(var t=[],e=0;e<o.ranges.length&&!n.overlaps(o.ranges[e]);)t.push(o.ranges[e].clone()),e++;for(;e<o.ranges.length&&n.overlaps(o.ranges[e]);)t=t.concat(o.ranges[e].subtract(n)),e++;for(;e<o.ranges.length;)t.push(o.ranges[e].clone()),e++;o.ranges=t,_update_length(o)}var o=this;return n instanceof DiscontinuousRange?n.ranges.forEach(e):n instanceof _SubRange?e(n):(void 0===t&&(t=n),e(new _SubRange(n,t))),this},DiscontinuousRange.prototype.index=function(n){for(var t=0;t<this.ranges.length&&this.ranges[t].length<=n;)n-=this.ranges[t].length,t++;return t>=this.ranges.length?null:this.ranges[t].low+n},DiscontinuousRange.prototype.toString=function(){return"[ "+this.ranges.join(", ")+" ]"},DiscontinuousRange.prototype.clone=function(){return new DiscontinuousRange(this)},module.exports=DiscontinuousRange},{}],2:[function(require,module,exports){function identity(t){return t}module.exports=identity},{}],3:[function(require,module,exports){function isFunction(t){return isObject(t)&&objToString.call(t)==funcTag}function isObject(t){var o=typeof t;return!!t&&("object"==o||"function"==o)}var funcTag="[object Function]",objectProto=Object.prototype,objToString=objectProto.toString;module.exports=isFunction},{}],4:[function(require,module,exports){function isObjectLike(t){return!!t&&"object"==typeof t}function isString(t){return"string"==typeof t||isObjectLike(t)&&objToString.call(t)==stringTag}var stringTag="[object String]",objectProto=Object.prototype,objToString=objectProto.toString;module.exports=isString},{}],5:[function(require,module,exports){function isObject(t){var o=typeof t;return!!t&&("object"==o||"function"==o)}function isRegExp(t){return isObject(t)&&objToString.call(t)==regexpTag}var regexpTag="[object RegExp]",objectProto=Object.prototype,objToString=objectProto.toString;module.exports=isRegExp},{}],6:[function(require,module,exports){function range(e,a,l){l&&isIterateeCall(e,a,l)&&(a=l=void 0),e=+e||0,l=null==l?1:+l||0,null==a?(a=e,e=0):a=+a||0;for(var r=-1,t=nativeMax(nativeCeil((a-e)/(l||1)),0),i=Array(t);++r<t;)i[r]=e,e+=l;return i}var isIterateeCall=require("lodash._isiterateecall"),nativeCeil=Math.ceil,nativeMax=Math.max;module.exports=range},{"lodash._isiterateecall":7}],7:[function(require,module,exports){function baseProperty(e){return function(t){return null==t?void 0:t[e]}}function isArrayLike(e){return null!=e&&isLength(getLength(e))}function isIndex(e,t){return e="number"==typeof e||reIsUint.test(e)?+e:-1,t=null==t?MAX_SAFE_INTEGER:t,e>-1&&e%1==0&&t>e}function isIterateeCall(e,t,n){if(!isObject(n))return!1;var r=typeof t;if("number"==r?isArrayLike(n)&&isIndex(t,n.length):"string"==r&&t in n){var i=n[t];return e===e?e===i:i!==i}return!1}function isLength(e){return"number"==typeof e&&e>-1&&e%1==0&&MAX_SAFE_INTEGER>=e}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}var reIsUint=/^\d+$/,MAX_SAFE_INTEGER=9007199254740991,getLength=baseProperty("length");module.exports=isIterateeCall},{}],8:[function(require,module,exports){var util=require("./util"),types=require("./types"),sets=require("./sets"),positions=require("./positions");module.exports=function(e){var s,t,a=0,p={type:types.ROOT,stack:[]},r=p,o=p.stack,u=[],n=function(s){util.error(e,"Nothing to repeat at column "+(s-1))},i=util.strToChars(e);for(s=i.length;s>a;)switch(t=i[a++]){case"\\":switch(t=i[a++]){case"b":o.push(positions.wordBoundary());break;case"B":o.push(positions.nonWordBoundary());break;case"w":o.push(sets.words());break;case"W":o.push(sets.notWords());break;case"d":o.push(sets.ints());break;case"D":o.push(sets.notInts());break;case"s":o.push(sets.whitespace());break;case"S":o.push(sets.notWhitespace());break;default:/\d/.test(t)?o.push({type:types.REFERENCE,value:parseInt(t,10)}):o.push({type:types.CHAR,value:t.charCodeAt(0)})}break;case"^":o.push(positions.begin());break;case"$":o.push(positions.end());break;case"[":var c;"^"===i[a]?(c=!0,a++):c=!1;var h=util.tokenizeClass(i.slice(a),e);a+=h[1],o.push({type:types.SET,set:h[0],not:c});break;case".":o.push(sets.anyChar());break;case"(":var l={type:types.GROUP,stack:[],remember:!0};t=i[a],"?"===t&&(t=i[a+1],a+=2,"="===t?l.followedBy=!0:"!"===t?l.notFollowedBy=!0:":"!==t&&util.error(e,"Invalid group, character '"+t+"' after '?' at column "+(a-1)),l.remember=!1),o.push(l),u.push(r),r=l,o=l.stack;break;case")":0===u.length&&util.error(e,"Unmatched ) at column "+(a-1)),r=u.pop(),o=r.options?r.options[r.options.length-1]:r.stack;break;case"|":r.options||(r.options=[r.stack],delete r.stack);var y=[];r.options.push(y),o=y;break;case"{":var k,b,d=/^(\d+)(,(\d+)?)?\}/.exec(i.slice(a));null!==d?(k=parseInt(d[1],10),b=d[2]?d[3]?parseInt(d[3],10):1/0:k,a+=d[0].length,o.push({type:types.REPETITION,min:k,max:b,value:o.pop()})):o.push({type:types.CHAR,value:123});break;case"?":0===o.length&&n(a),o.push({type:types.REPETITION,min:0,max:1,value:o.pop()});break;case"+":0===o.length&&n(a),o.push({type:types.REPETITION,min:1,max:1/0,value:o.pop()});break;case"*":0===o.length&&n(a),o.push({type:types.REPETITION,min:0,max:1/0,value:o.pop()});break;default:o.push({type:types.CHAR,value:t.charCodeAt(0)})}return 0!==u.length&&util.error(e,"Unterminated group"),p},module.exports.types=types},{"./positions":9,"./sets":10,"./types":11,"./util":12}],9:[function(require,module,exports){var types=require("./types");exports.wordBoundary=function(){return{type:types.POSITION,value:"b"}},exports.nonWordBoundary=function(){return{type:types.POSITION,value:"B"}},exports.begin=function(){return{type:types.POSITION,value:"^"}},exports.end=function(){return{type:types.POSITION,value:"$"}}},{"./types":11}],10:[function(require,module,exports){var types=require("./types"),INTS=function(){return[{type:types.RANGE,from:48,to:57}]},WORDS=function(){return[{type:types.CHAR,value:95},{type:types.RANGE,from:97,to:122},{type:types.RANGE,from:65,to:90}].concat(INTS())},WHITESPACE=function(){return[{type:types.CHAR,value:9},{type:types.CHAR,value:10},{type:types.CHAR,value:11},{type:types.CHAR,value:12},{type:types.CHAR,value:13},{type:types.CHAR,value:32},{type:types.CHAR,value:160},{type:types.CHAR,value:5760},{type:types.CHAR,value:6158},{type:types.CHAR,value:8192},{type:types.CHAR,value:8193},{type:types.CHAR,value:8194},{type:types.CHAR,value:8195},{type:types.CHAR,value:8196},{type:types.CHAR,value:8197},{type:types.CHAR,value:8198},{type:types.CHAR,value:8199},{type:types.CHAR,value:8200},{type:types.CHAR,value:8201},{type:types.CHAR,value:8202},{type:types.CHAR,value:8232},{type:types.CHAR,value:8233},{type:types.CHAR,value:8239},{type:types.CHAR,value:8287},{type:types.CHAR,value:12288},{type:types.CHAR,value:65279}]},NOTANYCHAR=function(){return[{type:types.CHAR,value:10},{type:types.CHAR,value:13},{type:types.CHAR,value:8232},{type:types.CHAR,value:8233}]};exports.words=function(){return{type:types.SET,set:WORDS(),not:!1}},exports.notWords=function(){return{type:types.SET,set:WORDS(),not:!0}},exports.ints=function(){return{type:types.SET,set:INTS(),not:!1}},exports.notInts=function(){return{type:types.SET,set:INTS(),not:!0}},exports.whitespace=function(){return{type:types.SET,set:WHITESPACE(),not:!1}},exports.notWhitespace=function(){return{type:types.SET,set:WHITESPACE(),not:!0}},exports.anyChar=function(){return{type:types.SET,set:NOTANYCHAR(),not:!0}}},{"./types":11}],11:[function(require,module,exports){module.exports={ROOT:0,GROUP:1,POSITION:2,SET:3,RANGE:4,REPETITION:5,REFERENCE:6,CHAR:7}},{}],12:[function(require,module,exports){var types=require("./types"),sets=require("./sets"),CTRL="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?",SLSH={0:0,t:9,n:10,v:11,f:12,r:13};exports.strToChars=function(e){var s=/(\[\\b\])|\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z\[\\\]\^?])|([0tnvfr]))/g;return e=e.replace(s,function(e,s,r,t,n,o,a){var p=s?8:r?parseInt(r,16):t?parseInt(t,16):n?parseInt(n,8):o?CTRL.indexOf(o):a?SLSH[a]:void 0,i=String.fromCharCode(p);return/[\[\]{}\^$.|?*+()]/.test(i)&&(i="\\"+i),i})},exports.tokenizeClass=function(e,s){for(var r,t,n=[],o=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(?:\\)?([^\]]))|(\])|(?:\\)?(.)/g;null!=(r=o.exec(e));)if(r[1])n.push(sets.words());else if(r[2])n.push(sets.ints());else if(r[3])n.push(sets.whitespace());else if(r[4])n.push(sets.notWords());else if(r[5])n.push(sets.notInts());else if(r[6])n.push(sets.notWhitespace());else if(r[7])n.push({type:types.RANGE,from:(r[8]||r[9]).charCodeAt(0),to:r[10].charCodeAt(0)});else{if(!(t=r[12]))return[n,o.lastIndex];n.push({type:types.CHAR,value:t.charCodeAt(0)})}exports.error(s,"Unterminated character class")},exports.error=function(e,s){throw new SyntaxError("Invalid regular expression: /"+e+"/: "+s)}},{"./sets":10,"./types":11}],13:[function(require,module,exports){var alea=require("./lib/alea"),xor128=require("./lib/xor128"),xorwow=require("./lib/xorwow"),xorshift7=require("./lib/xorshift7"),xor4096=require("./lib/xor4096"),tychei=require("./lib/tychei"),sr=require("./seedrandom");sr.alea=alea,sr.xor128=xor128,sr.xorwow=xorwow,sr.xorshift7=xorshift7,sr.xor4096=xor4096,sr.tychei=tychei,module.exports=sr},{"./lib/alea":14,"./lib/tychei":15,"./lib/xor128":16,"./lib/xor4096":17,"./lib/xorshift7":18,"./lib/xorwow":19,"./seedrandom":20}],14:[function(require,module,exports){!function(n,t,e){function s(n){var t=this,e=o();t.next=function(){var n=2091639*t.s0+2.3283064365386963e-10*t.c;return t.s0=t.s1,t.s1=t.s2,t.s2=n-(t.c=0|n)},t.c=1,t.s0=e(" "),t.s1=e(" "),t.s2=e(" "),t.s0-=e(n),t.s0<0&&(t.s0+=1),t.s1-=e(n),t.s1<0&&(t.s1+=1),t.s2-=e(n),t.s2<0&&(t.s2+=1),e=null}function r(n,t){return t.c=n.c,t.s0=n.s0,t.s1=n.s1,t.s2=n.s2,t}function u(n,t){var e=new s(n),u=t&&t.state,o=e.next;return o.int32=function(){return 4294967296*e.next()|0},o["double"]=function(){return o()+1.1102230246251565e-16*(2097152*o()|0)},o.quick=o,u&&("object"==typeof u&&r(u,e),o.state=function(){return r(e,{})}),o}function o(){var n=4022871197,t=function(t){t=t.toString();for(var e=0;e<t.length;e++){n+=t.charCodeAt(e);var s=.02519603282416938*n;n=s>>>0,s-=n,s*=n,n=s>>>0,s-=n,n+=4294967296*s}return 2.3283064365386963e-10*(n>>>0)};return t}t&&t.exports?t.exports=u:e&&e.amd?e(function(){return u}):this.alea=u}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],15:[function(require,module,exports){!function(t,n,e){function o(t){var n=this,e="";n.next=function(){var t=n.b,e=n.c,o=n.d,r=n.a;return t=t<<25^t>>>7^e,e=e-o|0,o=o<<24^o>>>8^r,r=r-t|0,n.b=t=t<<20^t>>>12^e,n.c=e=e-o|0,n.d=o<<16^e>>>16^r,n.a=r-t|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,t===Math.floor(t)?(n.a=t/4294967296|0,n.b=0|t):e+=t;for(var o=0;o<e.length+20;o++)n.b^=0|e.charCodeAt(o),n.next()}function r(t,n){return n.a=t.a,n.b=t.b,n.c=t.c,n.d=t.d,n}function u(t,n){var e=new o(t),u=n&&n.state,c=function(){return(e.next()>>>0)/4294967296};return c["double"]=function(){do var t=e.next()>>>11,n=(e.next()>>>0)/4294967296,o=(t+n)/(1<<21);while(0===o);return o},c.int32=e.next,c.quick=c,u&&("object"==typeof u&&r(u,e),c.state=function(){return r(e,{})}),c}n&&n.exports?n.exports=u:e&&e.amd?e(function(){return u}):this.tychei=u}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],16:[function(require,module,exports){!function(t,n,e){function o(t){var n=this,e="";n.x=0,n.y=0,n.z=0,n.w=0,n.next=function(){var t=n.x^n.x<<11;return n.x=n.y,n.y=n.z,n.z=n.w,n.w^=n.w>>>19^t^t>>>8},t===(0|t)?n.x=t:e+=t;for(var o=0;o<e.length+64;o++)n.x^=0|e.charCodeAt(o),n.next()}function r(t,n){return n.x=t.x,n.y=t.y,n.z=t.z,n.w=t.w,n}function u(t,n){var e=new o(t),u=n&&n.state,i=function(){return(e.next()>>>0)/4294967296};return i["double"]=function(){do var t=e.next()>>>11,n=(e.next()>>>0)/4294967296,o=(t+n)/(1<<21);while(0===o);return o},i.int32=e.next,i.quick=i,u&&("object"==typeof u&&r(u,e),i.state=function(){return r(e,{})}),i}n&&n.exports?n.exports=u:e&&e.amd?e(function(){return u}):this.xor128=u}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],17:[function(require,module,exports){!function(n,t,e){function i(n){function t(n,t){var e,i,r,o,u,f=[],c=128;for(t===(0|t)?(i=t,t=null):(t+="\x00",i=0,c=Math.max(c,t.length)),r=0,o=-32;c>o;++o)t&&(i^=t.charCodeAt((o+32)%t.length)),0===o&&(u=i),i^=i<<10,i^=i>>>15,i^=i<<4,i^=i>>>13,o>=0&&(u=u+1640531527|0,e=f[127&o]^=i+u,r=0==e?r+1:0);for(r>=128&&(f[127&(t&&t.length||0)]=-1),r=127,o=512;o>0;--o)i=f[r+34&127],e=f[r=r+1&127],i^=i<<13,e^=e<<17,i^=i>>>15,e^=e>>>12,f[r]=i^e;n.w=u,n.X=f,n.i=r}var e=this;e.next=function(){var n,t,i=e.w,r=e.X,o=e.i;return e.w=i=i+1640531527|0,t=r[o+34&127],n=r[o=o+1&127],t^=t<<13,n^=n<<17,t^=t>>>15,n^=n>>>12,t=r[o]=t^n,e.i=o,t+(i^i>>>16)|0},t(e,n)}function r(n,t){return t.i=n.i,t.w=n.w,t.X=n.X.slice(),t}function o(n,t){null==n&&(n=+new Date);var e=new i(n),o=t&&t.state,u=function(){return(e.next()>>>0)/4294967296};return u["double"]=function(){do var n=e.next()>>>11,t=(e.next()>>>0)/4294967296,i=(n+t)/(1<<21);while(0===i);return i},u.int32=e.next,u.quick=u,o&&(o.X&&r(o,e),u.state=function(){return r(e,{})}),u}t&&t.exports?t.exports=o:e&&e.amd?e(function(){return o}):this.xor4096=o}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],18:[function(require,module,exports){!function(n,t,e){function i(n){function t(n,t){var e,i,r=[];if(t===(0|t))i=r[0]=t;else for(t=""+t,e=0;e<t.length;++e)r[7&e]=r[7&e]<<15^t.charCodeAt(e)+r[e+1&7]<<13;for(;r.length<8;)r.push(0);for(e=0;8>e&&0===r[e];++e);for(i=8==e?r[7]=-1:r[e],n.x=r,n.i=0,e=256;e>0;--e)n.next()}var e=this;e.next=function(){var n,t,i=e.x,r=e.i;return n=i[r],n^=n>>>7,t=n^n<<24,n=i[r+1&7],t^=n^n>>>10,n=i[r+3&7],t^=n^n>>>3,n=i[r+4&7],t^=n^n<<7,n=i[r+7&7],n^=n<<13,t^=n^n<<9,i[r]=t,e.i=r+1&7,t},t(e,n)}function r(n,t){return t.x=n.x.slice(),t.i=n.i,t}function o(n,t){null==n&&(n=+new Date);var e=new i(n),o=t&&t.state,u=function(){return(e.next()>>>0)/4294967296};return u["double"]=function(){do var n=e.next()>>>11,t=(e.next()>>>0)/4294967296,i=(n+t)/(1<<21);while(0===i);return i},u.int32=e.next,u.quick=u,o&&(o.x&&r(o,e),u.state=function(){return r(e,{})}),u}t&&t.exports?t.exports=o:e&&e.amd?e(function(){return o}):this.xorshift7=o}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],19:[function(require,module,exports){!function(t,n,e){function o(t){var n=this,e="";n.next=function(){var t=n.x^n.x>>>2;return n.x=n.y,n.y=n.z,n.z=n.w,n.w=n.v,(n.d=n.d+362437|0)+(n.v=n.v^n.v<<4^(t^t<<1))|0},n.x=0,n.y=0,n.z=0,n.w=0,n.v=0,t===(0|t)?n.x=t:e+=t;for(var o=0;o<e.length+64;o++)n.x^=0|e.charCodeAt(o),o==e.length&&(n.d=n.x<<10^n.x>>>4),n.next()}function r(t,n){return n.x=t.x,n.y=t.y,n.z=t.z,n.w=t.w,n.v=t.v,n.d=t.d,n}function u(t,n){var e=new o(t),u=n&&n.state,x=function(){return(e.next()>>>0)/4294967296};return x["double"]=function(){do var t=e.next()>>>11,n=(e.next()>>>0)/4294967296,o=(t+n)/(1<<21);while(0===o);return o},x.int32=e.next,x.quick=x,u&&("object"==typeof u&&r(u,e),x.state=function(){return r(e,{})}),x}n&&n.exports?n.exports=u:e&&e.amd?e(function(){return u}):this.xorwow=u}(this,"object"==typeof module&&module,"function"==typeof define&&define)},{}],20:[function(require,module,exports){!function(n,r){function t(t,c,s){var d=[];c=1==c?{entropy:!0}:c||{};var m=u(i(c.entropy?[t,a(n)]:null==t?f():t,3),d),j=new e(d),S=function(){for(var n=j.g(p),r=y,t=0;h>n;)n=(n+t)*l,r*=l,t=j.g(1);for(;n>=v;)n/=2,r/=2,t>>>=1;return(n+t)/r};return S.int32=function(){return 0|j.g(4)},S.quick=function(){return j.g(4)/4294967296},S["double"]=S,u(a(j.S),n),(c.pass||s||function(n,t,e,i){return i&&(i.S&&o(i,j),n.state=function(){return o(j,{})}),e?(r[g]=n,t):n})(S,m,"global"in c?c.global:this==r,c.state)}function e(n){var r,t=n.length,e=this,o=0,i=e.i=e.j=0,u=e.S=[];for(t||(n=[t++]);l>o;)u[o]=o++;for(o=0;l>o;o++)u[o]=u[i=m&i+n[o%t]+(r=u[o])],u[i]=r;(e.g=function(n){for(var r,t=0,o=e.i,i=e.j,u=e.S;n--;)r=u[o=m&o+1],t=t*l+u[m&(u[o]=u[i=m&i+r])+(u[i]=r)];return e.i=o,e.j=i,t})(l)}function o(n,r){return r.i=n.i,r.j=n.j,r.S=n.S.slice(),r}function i(n,r){var t,e=[],o=typeof n;if(r&&"object"==o)for(t in n)try{e.push(i(n[t],r-1))}catch(u){}return e.length?e:"string"==o?n:n+"\x00"}function u(n,r){for(var t,e=n+"",o=0;o<e.length;)r[m&o]=m&(t^=19*r[m&o])+e.charCodeAt(o++);return a(r)}function f(){try{if(c)return a(c.randomBytes(l));var r=new Uint8Array(l);return(s.crypto||s.msCrypto).getRandomValues(r),a(r)}catch(t){var e=s.navigator,o=e&&e.plugins;return[+new Date,s,o,s.screen,a(n)]}}function a(n){return String.fromCharCode.apply(0,n)}var c,s=this,l=256,p=6,d=52,g="random",y=r.pow(l,p),h=r.pow(2,d),v=2*h,m=l-1;if(r["seed"+g]=t,u(r.random(),n),"object"==typeof module&&module.exports){module.exports=t;try{c=require("crypto")}catch(j){}}else"function"==typeof define&&define.amd&&define(function(){return t})}([],Math)},{crypto:void 0}],21:[function(require,module,exports){"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var _integer=require("./integer"),_integer2=_interopRequireDefault(_integer),random=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return Boolean(_integer2["default"].boundedRandom(0,1,e))};exports["default"]={random:random},module.exports=exports["default"]},{"./integer":26}],22:[function(require,module,exports){"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(exports,"__esModule",{value:!0});var _integer=require("./integer"),_integer2=_interopRequireDefault(_integer),randomRgb=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return{red:_integer2["default"].randomByte(e),green:_integer2["default"].randomByte(e),blue:_integer2["default"].randomByte(e)}};exports["default"]={randomRgb:randomRgb},module.exports=exports["default"]},{"./integer":26}],23:[function(require,module,exports){"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(exports,"__esModule",{value:!0});var _float=require("./float"),_float2=_interopRequireDefault(_float),inverseNormalCumulativeDistribution=function(t){var e=t>.97575,r=.02425>t,o=void 0,a=void 0,u=void 0,n=void 0,i=void 0,l=void 0;r||e?(o=[-.007784894002430293,-.3223964580411365,-2.400758277161838,-2.549732539343734,4.374664141464968],a=[.007784695709041462,.3224671290700398,2.445134137142996,3.754408661907416],u=5,n=4,i=r?1:-1,l=Math.sqrt(-2*Math.log(r?t:1-t))):(o=[-39.69683028665376,220.9460984245205,-275.9285104469687,138.357751867269,-30.66479806614716,2.506628277459239],a=[-54.47609879822406,161.5858368580409,-155.6989798598866,66.80131188771972,-13.28068155288572],u=5,n=5,i=t-.5,l=Math.pow(i,2));var d=function(t){return function(e,r){return e*Math.pow(l,t-r)}},m=function(t){return t.reduce(function(t,e){return t+e},0)},f=m(o.map(d(u))),s=m(a.map(d(n)))+1;return i*f/s},randomNormallyDistributedFloat=function(t,e,r,o){var a=arguments.length<=4||void 0===arguments[4]?Math.random:arguments[4],u=_float2["default"].boundedRandom(0,1,a),n=inverseNormalCumulativeDistribution(u)*e+t;return null!=r&&null!=o?Math.min(o,Math.max(r,n)):n};exports["default"]={randomNormallyDistributedFloat:randomNormallyDistributedFloat},module.exports=exports["default"]},{"./float":24}],24:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var boundedRandom=function(){var e=arguments.length<=0||void 0===arguments[0]?0:arguments[0],t=arguments.length<=1||void 0===arguments[1]?1:arguments[1],n=arguments.length<=2||void 0===arguments[2]?Math.random:arguments[2],r=t-e;return n()*r+e};exports["default"]={boundedRandom:boundedRandom},module.exports=exports["default"]},{}],25:[function(require,module,exports){(function(global){"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(r,t,n){return t&&e(r.prototype,t),n&&e(r,n),r}}(),_extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},_lodashIdentity=require("lodash.identity"),_lodashIdentity2=_interopRequireDefault(_lodashIdentity),_lodashIsFunction=require("lodash.isFunction"),_lodashIsFunction2=_interopRequireDefault(_lodashIsFunction),_lodashIsregexp=require("lodash.isregexp"),_lodashIsregexp2=_interopRequireDefault(_lodashIsregexp),_lodashIsString=require("lodash.isString"),_lodashIsString2=_interopRequireDefault(_lodashIsString),_lodashRange=require("lodash.range"),_lodashRange2=_interopRequireDefault(_lodashRange),_boolean=require("./boolean"),_boolean2=_interopRequireDefault(_boolean),_color=require("./color"),_color2=_interopRequireDefault(_color),_distribution=require("./distribution"),_distribution2=_interopRequireDefault(_distribution),_float=require("./float"),_float2=_interopRequireDefault(_float),_integer=require("./integer"),_integer2=_interopRequireDefault(_integer),_seedrandom=require("seedrandom"),_seedrandom2=_interopRequireDefault(_seedrandom),_set=require("./set"),_set2=_interopRequireDefault(_set),_string=require("./string"),_string2=_interopRequireDefault(_string),booleanGenerator=function(e){var r=e.prng;return function(){return _boolean2["default"].random(r)}},colorGenerator=function(e){var r=e.prng;return function(){return _color2["default"].randomRgb(r)}},floatGenerator=function(e){var r=e.min,t=e.max,n=e.mean,a=e.prng,o=e.stdev;return n&&o?function(){return _distribution2["default"].randomNormallyDistributedFloat(n,o,r,t,a)}:function(){return _float2["default"].boundedRandom(r,t,a)}},integerGenerator=function(e){var r=e.min,t=e.max,n=e.prng;return function(){return _integer2["default"].boundedRandom(r,t,n)}},setGenerator=function(e){var r=e.values,t=e.prng,n=e.replacement,a=void 0===n?!0:n,o=e.shuffle,u=void 0===o?!1:o,i=e.weights,l=void 0===i?null:i;if(!r||!r.length)throw Error("Must provide a 'values' array for a set generator.");return u?function(){return _set2["default"].shuffle(r,t)}:a?l?function(){return _set2["default"].weightedRandomMember(r,l,t)}:function(){return _set2["default"].randomMember(r,t)}:function(){return _set2["default"].randomMemberWithoutReplacement(r,t)}},stringGenerator=function(e){var r=e.kind,t=e.expression,n=void 0===t?"["+r+"]":t,a=e.ignoreCase,o=void 0===a?!1:a,u=e.maxWildcard,i=void 0===u?100:u,l=e.prng,d=e.unicode,s=void 0===d?!1:d;return function(){var e=_lodashIsregexp2["default"](n),r=e?n.source:n,t={ignoreCase:o||e&&n.ignoreCase,maxWildcard:i,prng:l};return _string2["default"].generateString(s,r,t)}()},KIND_GENERATORS={"boolean":booleanGenerator,"float":floatGenerator,integer:integerGenerator,set:setGenerator,color:colorGenerator,rgb:colorGenerator,string:stringGenerator,"a-z":stringGenerator,"A-Z":stringGenerator},VALID_KINDS=Object.keys(KIND_GENERATORS),validateKind=function(e){if(-1!==VALID_KINDS.indexOf(e))return!0;throw Error(e+" is in invalid kind. Valid kinds include:\n "+VALID_KINDS.join(", "))},getConfigWithDefaults=function(e){return _extends({kind:"float"},e,{prng:getPrng(e)})},createGenerator=function(e){var r=getConfigWithDefaults(e);return validateKind(r.kind),KIND_GENERATORS[r.kind](r)},getNextValueGenerator=function(e){e[0]=e[0]?e[0]:{};var r=function(){var r=[],t=!0,n=!1,a=void 0;try{for(var o,u=e[Symbol.iterator]();!(t=(o=u.next()).done);t=!0){var i=o.value;r.push(createGenerator(i))}}catch(l){n=!0,a=l}finally{try{!t&&u["return"]&&u["return"]()}finally{if(n)throw a}}return r}();return 1===r.length?function(){return r[0]()}:function(){return function(){var e=[],t=!0,n=!1,a=void 0;try{for(var o,u=r[Symbol.iterator]();!(t=(o=u.next()).done);t=!0){var i=o.value;e.push(i())}}catch(l){n=!0,a=l}finally{try{!t&&u["return"]&&u["return"]()}finally{if(n)throw a}}return e}()}},getPrng=function(e){var r=e.seed,t=e.prng,n=r?_seedrandom2["default"]:Math.random,a=t?t:n;return r?a(r):a},parseArgs=function(e){var r={configs:[],mutator:null,name:null};return e.reduce(function(e,r){return e.mutator||_lodashIsString2["default"](r)?e.name=r:_lodashIsFunction2["default"](r)?e.mutator=r:e.configs.push(r),e},r)},Stochator=function(){function e(){for(var r=this,t=arguments.length,n=Array(t),a=0;t>a;a++)n[a]=arguments[a];_classCallCheck(this,e),this.VERSION="0.6",this._value=0;var o=parseArgs(n),u=o.configs,i=o.mutator,l=o.name;this.mutate=i?function(e){return i(e,r.getValue())}:_lodashIdentity2["default"];var d=getNextValueGenerator(u);this.next=function(){var e=arguments.length<=0||void 0===arguments[0]?1:arguments[0],t=function(){var t=[],n=!0,a=!1,o=void 0;try{for(var u,i=_lodashRange2["default"](1,e+1)[Symbol.iterator]();!(n=(u=i.next()).done);n=!0)u.value,t.push(r.setValue(r.mutate(d())))}catch(l){a=!0,o=l}finally{try{!n&&i["return"]&&i["return"]()}finally{if(a)throw o}}return t}();return 1==e?t[0]:t},l&&(this[l]=function(){return r.next.apply(r,arguments)})}return _createClass(e,null,[{key:"fromDistribution",value:{normal:_distribution2["default"].randomNormallyDistributedFloat},enumerable:!0},{key:"randomAsciiCharacter",value:_string2["default"].randomAsciiCharacter,enumerable:!0},{key:"randomAsciiString",value:_string2["default"].randomAsciiString,enumerable:!0},{key:"randomBoolean",value:_boolean2["default"].random,enumerable:!0},{key:"randomByte",value:_integer2["default"].randomByte,enumerable:!0},{key:"randomCharacterFromRange",value:_string2["default"].randomCharacterFromRange,enumerable:!0},{key:"randomColor",value:_color2["default"].randomRgb,enumerable:!0},{key:"randomFloat",value:_float2["default"].boundedRandom,enumerable:!0},{key:"randomInteger",value:_integer2["default"].boundedRandom,enumerable:!0},{key:"randomLowercaseCharacter",value:_string2["default"].randomLowercaseCharacter,enumerable:!0},{key:"randomSetMember",value:_set2["default"].randomMember,enumerable:!0},{key:"randomSetMemberWithoutReplacement",value:_set2["default"].randomMemberWithoutReplacement,enumerable:!0},{key:"randomUnicodeCharacter",value:_string2["default"].randomUnicodeCharacter,enumerable:!0},{key:"randomUnicodeString",value:_string2["default"].randomUnicodeString,enumerable:!0},{key:"randomUppercaseCharacter",value:_string2["default"].randomUppercaseCharacter,enumerable:!0},{key:"shuffleSet",value:_set2["default"].shuffleSet,enumerable:!0},{key:"weightedRandomSetMember",value:_set2["default"].weightedRandomMember,enumerable:!0}]),_createClass(e,[{key:"getValue",value:function(){return this._value}},{key:"setValue",value:function(e){return this._value=e,this._value}},{key:"toString",value:function(){return"[object Stochator]"}}]),e}();exports["default"]=Stochator,global&&(global.Stochator=Stochator),module.exports=exports["default"]}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./boolean":21,"./color":22,"./distribution":23,"./float":24,"./integer":26,"./set":27,"./string":28,"lodash.identity":2,"lodash.isFunction":3,"lodash.isString":4,"lodash.isregexp":5,"lodash.range":6,seedrandom:13}],26:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var boundedRandom=function(){var e=arguments.length<=0||void 0===arguments[0]?0:arguments[0],n=arguments.length<=1||void 0===arguments[1]?1:arguments[1],t=arguments.length<=2||void 0===arguments[2]?Math.random:arguments[2],r=1+n-e;return Math.floor(t()*r)+e},randomByte=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return boundedRandom(0,255,e)};exports["default"]={boundedRandom:boundedRandom,randomByte:randomByte},module.exports=exports["default"]},{}],27:[function(require,module,exports){"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}function _toConsumableArray(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}Object.defineProperty(exports,"__esModule",{value:!0});var _float=require("./float"),_float2=_interopRequireDefault(_float),_integer=require("./integer"),_integer2=_interopRequireDefault(_integer),randomMember=function(e){var r=arguments.length<=1||void 0===arguments[1]?Math.random:arguments[1],t=e.length-1;return e[_integer2["default"].boundedRandom(0,t,r)]},randomMemberWithoutReplacement=function(e){var r=arguments.length<=1||void 0===arguments[1]?Math.random:arguments[1];if(e.length>0){var t=_integer2["default"].boundedRandom(0,e.length-1,r),n=e[t];return e.splice(t,1),n}},weightedRandomMember=function(e,r){var t=arguments.length<=2||void 0===arguments[2]?Math.random:arguments[2],n=void 0,a=0,o=_float2["default"].boundedRandom(0,1,t);return e.forEach(function(e,t){if(!n){var u=r[t];a+u>=o&&o>=a&&(n=e),a+=u}}),n},shuffle=function(e){var r=arguments.length<=1||void 0===arguments[1]?Math.random:arguments[1],t=[].concat(_toConsumableArray(e)),n=!0,a=!1,o=void 0;try{for(var u,d=range(0,t.length)[Symbol.iterator]();!(n=(u=d.next()).done);n=!0)index=u.value,randomIndex=_integer2["default"].boundedRandom(0,index,r),tmp=t[index],t[index]=t[randomIndex],t[randomIndex]=tmp}catch(m){a=!0,o=m}finally{try{!n&&d["return"]&&d["return"]()}finally{if(a)throw o}}return t};exports["default"]={randomMember:randomMember,randomMemberWithoutReplacement:randomMemberWithoutReplacement,weightedRandomMember:weightedRandomMember,shuffle:shuffle},module.exports=exports["default"]},{"./float":24,"./integer":26}],28:[function(require,module,exports){"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}function _defineProperty(e,r,n){return r in e?Object.defineProperty(e,r,{ value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}Object.defineProperty(exports,"__esModule",{value:!0});var _expanders,_generators,_slicedToArray=function(){function e(e,r){var n=[],t=!0,a=!1,o=void 0;try{for(var u,i=e[Symbol.iterator]();!(t=(u=i.next()).done)&&(n.push(u.value),!r||n.length!==r);t=!0);}catch(g){a=!0,o=g}finally{try{!t&&i["return"]&&i["return"]()}finally{if(a)throw o}}return n}return function(r,n){if(Array.isArray(r))return r;if(Symbol.iterator in Object(r))return e(r,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])}return e},_boolean=require("./boolean"),_boolean2=_interopRequireDefault(_boolean),_integer=require("./integer"),_integer2=_interopRequireDefault(_integer),_set=require("./set"),_set2=_interopRequireDefault(_set),_ret=require("ret"),_ret2=_interopRequireDefault(_ret),_discontinuousRange=require("discontinuous-range"),_discontinuousRange2=_interopRequireDefault(_discontinuousRange),_lodashRange=require("lodash.range"),_lodashRange2=_interopRequireDefault(_lodashRange),LOWERCASE_RANGE=[97,122],UPPERCASE_RANGE=[65,90],ASCII_RANGE=[32,126],UNICODE_RANGE=[0,65535],AsciiDRange=_discontinuousRange2["default"].apply(void 0,ASCII_RANGE),UnicodeDRange=_discontinuousRange2["default"].apply(void 0,UNICODE_RANGE),inRange=function(e,r){var n=_slicedToArray(e,2),t=n[0],a=n[1];return r>=t&&a>=r},changeCase=function(e){var r=inRange(LOWERCASE_RANGE,e),n=inRange(UPPERCASE_RANGE,e);return r||n?e+(r?-32:32):e},createChar=function(e,r,n){return null===e?"":String.fromCharCode(r&&_boolean2["default"].random(n)?changeCase(e):e)},expandCharacter=function(e){var r=e.value;return _discontinuousRange2["default"](r)},expandRange=function(e){var r=e.from,n=e.to;return _discontinuousRange2["default"](r,n)},expandSet=function(e,r){var n=_discontinuousRange2["default"](),t=e.set.map(function(e){return expand(e,r)});return t.forEach(function(e){return n.add(e)}),e.not?r.clone().subtract(n):n},expanders=(_expanders={},_defineProperty(_expanders,_ret2["default"].types.SET,expandSet),_defineProperty(_expanders,_ret2["default"].types.RANGE,expandRange),_defineProperty(_expanders,_ret2["default"].types.CHAR,expandCharacter),_expanders),expand=function(e){for(var r=arguments.length,n=Array(r>1?r-1:0),t=1;r>t;t++)n[t-1]=arguments[t];return expanders[e.type].apply(expanders,[e].concat(n))},generateCharFromSet=function(e,r){var n=r.range,t=r.prng,a=expand(e,n);return a.index(_integer2["default"].boundedRandom(0,a.length-1,t))},generateCharFromRange=function(e,r){var n=e.from,t=e.to,a=r.prng;return _integer2["default"].boundedRandom(n,t,a)},generateChar=function(e){var r=e.value;return r},createCharGenerator=function(e){return function(r,n,t){var a=t.range,o=t.ignoreCase,u=t.prng;return createChar(e(r,{range:a,ignoreCase:o,prng:u}),o,u)}},generateFromGroup=function(e,r,n){var t=e.notFollowedBy,a=e.options,o=e.stack,u=n.prng;return t?[]:a?_set2["default"].randomMember(a,u):o},generateRepeat=function(e,r,n){var t=e.max===1/0?e.min+n.max:e.max;return _lodashRange2["default"](_integer2["default"].boundedRandom(e.min,t,n.prng)).map(function(){return e.value})},createSequenceGenerator=function(e){return function(r,n,t){return e(r,n,t).map(function(e){return generateFromToken(e,n,t)}).join("")}},generators=(_generators={},_defineProperty(_generators,_ret2["default"].types.ROOT,createSequenceGenerator(generateFromGroup)),_defineProperty(_generators,_ret2["default"].types.GROUP,createSequenceGenerator(generateFromGroup)),_defineProperty(_generators,_ret2["default"].types.POSITION,function(){return""}),_defineProperty(_generators,_ret2["default"].types.REPETITION,createSequenceGenerator(generateRepeat)),_defineProperty(_generators,_ret2["default"].types.REFERENCE,function(e,r){var n=e.value;return r[n-1]}),_defineProperty(_generators,_ret2["default"].types.CHAR,createCharGenerator(generateChar)),_defineProperty(_generators,_ret2["default"].types.SET,createCharGenerator(generateCharFromSet)),_defineProperty(_generators,_ret2["default"].types.RANGE,createCharGenerator(generateCharFromRange)),_generators),generateFromToken=function(e,r,n){var t=generators[e.type](e,r,n);return e.type===_ret2["default"].types.GROUP&&e.remember&&r.push(t),t},generateStringFromRange=function(e,r,n){return function(){return generateFromToken(_ret2["default"](r),[],_extends({range:e},n))}},generateCharacterFromRange=function(e,r){var n=_slicedToArray(e,2),t=n[0],a=n[1],o=r.prng;return generateStringFromRange(_discontinuousRange2["default"](t,a),".",{prng:o})},generateString=function(e,r,n){return generateStringFromRange(e?UnicodeDRange:AsciiDRange,r,n)},randomCharacterFromRange=function(e){var r=arguments.length<=1||void 0===arguments[1]?Math.random:arguments[1];return generateCharacterFromRange(e,{prng:r})()},randomAsciiString=function(e,r){var n=arguments.length<=2||void 0===arguments[2]?Math.random:arguments[2];return generateStringFromRange(AsciiDRange,e,{ignoreCase:r,prng:n})},randomUnicodeString=function(e,r){var n=arguments.length<=2||void 0===arguments[2]?Math.random:arguments[2];return generateStringFromRange(UnicodeDRange,e,{ignoreCase:r,prng:n})},randomAsciiCharacter=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return generateCharacterFromRange(ASCII_RANGE,{prng:e})()},randomLowercaseCharacter=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return generateCharacterFromRange(LOWERCASE_RANGE,{prng:e})()},randomUnicodeCharacter=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return generateCharacterFromRange(UNICODE_RANGE,{prng:e})()},randomUppercaseCharacter=function(){var e=arguments.length<=0||void 0===arguments[0]?Math.random:arguments[0];return generateCharacterFromRange(UPPERCASE_RANGE,{prng:e})()};exports["default"]={generateString:generateString,randomCharacterFromRange:randomCharacterFromRange,randomAsciiString:randomAsciiString,randomUnicodeString:randomUnicodeString,randomAsciiCharacter:randomAsciiCharacter,randomLowercaseCharacter:randomLowercaseCharacter,randomUnicodeCharacter:randomUnicodeCharacter,randomUppercaseCharacter:randomUppercaseCharacter},module.exports=exports["default"]},{"./boolean":21,"./integer":26,"./set":27,"discontinuous-range":1,"lodash.range":6,ret:8}]},{},[25]);