UNPKG

fast-check

Version:

Property based testing framework for JavaScript (like QuickCheck)

1 lines 143 kB
!function(r){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).fastcheck=r()}}(function(){return function a(o,u,s){function c(t,r){if(!u[t]){if(!o[t]){var e="function"==typeof require&&require;if(!r&&e)return e(t,!0);if(l)return l(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var i=u[t]={exports:{}};o[t][0].call(i.exports,function(r){return c(o[t][1][r]||r)},i,i.exports,a,o,u,s)}return u[t].exports}for(var l="function"==typeof require&&require,r=0;r<s.length;r++)c(s[r]);return c}({1:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var o=r("../../stream/Stream"),u=r("../symbols"),a=r("./definition/Arbitrary"),c=r("./definition/BiasedArbitraryWrapper"),l=r("./definition/Shrinkable"),h=r("./IntegerArbitrary"),s=function(a){function s(r,t,e,n){void 0===n&&(n=function(r){return r});var i=a.call(this)||this;return i.arb=r,i.minLength=t,i.maxLength=e,i.preFilter=n,i.lengthArb=h.integer(t,e),i}return i(s,a),s.makeItCloneable=function(r,e){var n=this;return r[u.cloneMethod]=function(){for(var r=[],t=0;t!==e.length;++t)r.push(e[t].value);return n.makeItCloneable(r,e),r},r},s.prototype.wrapper=function(r,t){for(var e=this,n=this.preFilter(r),i=!1,a=[],o=0;o!==n.length;++o){var u=n[o];i=i||u.hasToBeCloned,a.push(u.value)}return i&&s.makeItCloneable(a,n),new l.Shrinkable(a,function(){return e.shrinkImpl(n,t).map(function(r){return e.wrapper(r,!0)})})},s.prototype.generate=function(r){for(var t=this.lengthArb.generate(r),e=Array(t.value),n=0;n!==t.value;++n)e[n]=this.arb.generate(r);return this.wrapper(e,!1)},s.prototype.shrinkImpl=function(t,r){var e=this;return 0===t.length?o.Stream.nil():this.lengthArb.shrinkableFor(t.length,r).shrink().map(function(r){return t.slice(t.length-r.value)}).join(t[0].shrink().map(function(r){return[r].concat(t.slice(1))})).join(t.length>this.minLength?this.shrinkImpl(t.slice(1),!1).filter(function(r){return e.minLength<=r.length+1}).map(function(r){return[t[0]].concat(r)}):o.Stream.nil())},s.prototype.withBias=function(e){return c.biasWrapper(e,this,function(r){var t=new s(r.arb.withBias(e),r.minLength,r.maxLength,r.preFilter);return c.biasWrapper(e,t,function(){return r.minLength!==r.maxLength?new s(r.arb.withBias(e),r.minLength,r.minLength+Math.floor(Math.log(r.maxLength-r.minLength)/Math.log(2)),r.preFilter):new s(r.arb.withBias(e),r.minLength,r.maxLength,r.preFilter)})})},s}(a.Arbitrary);e.ArrayArbitrary=s,e.array=function(r,t,e){return null==e?new s(r,0,null==t?10:t):new s(r,t||0,e)}},{"../../stream/Stream":57,"../symbols":53,"./IntegerArbitrary":11,"./definition/Arbitrary":24,"./definition/BiasedArbitraryWrapper":26,"./definition/Shrinkable":27}],2:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var a=r("./definition/ArbitraryWithShrink"),o=r("./definition/BiasedArbitraryWrapper"),u=r("./definition/Shrinkable"),s=r("./helpers/BiasNumeric"),c=r("./helpers/ShrinkNumeric"),l=function(n){function r(r,t){var e=n.call(this)||this;return e.min=r,e.max=t,e.biasedBigIntArbitrary=null,e}return i(r,n),r.prototype.wrapper=function(r,t){var e=this;return new u.Shrinkable(r,function(){return e.shrink(r,t).map(function(r){return e.wrapper(r,!0)})})},r.prototype.generate=function(r){return this.wrapper(r.nextBigInt(this.min,this.max),!1)},r.prototype.shrink=function(r,t){return c.shrinkBigInt(this.min,this.max,r,!0===t)},r.prototype.pureBiasedArbitrary=function(){if(null!=this.biasedBigIntArbitrary)return this.biasedBigIntArbitrary;return this.biasedBigIntArbitrary=s.biasNumeric(this.min,this.max,r,function(r){return r===BigInt(0)?BigInt(0):BigInt(r.toString().length)}),this.biasedBigIntArbitrary},r.prototype.withBias=function(r){return o.biasWrapper(r,this,function(r){return r.pureBiasedArbitrary()})},r}(a.ArbitraryWithShrink);function h(r){return new l(BigInt(-1)<<BigInt(r-1),(BigInt(1)<<BigInt(r-1))-BigInt(1))}function f(r){return new l(BigInt(0),(BigInt(1)<<BigInt(r))-BigInt(1))}e.bigIntN=h,e.bigUintN=f,e.bigInt=function(r,t){return void 0===t?h(256):new l(r,t)},e.bigUint=function(r){return void 0===r?f(256):new l(BigInt(0),r)}},{"./definition/ArbitraryWithShrink":25,"./definition/BiasedArbitraryWrapper":26,"./definition/Shrinkable":27,"./helpers/BiasNumeric":28,"./helpers/ShrinkNumeric":29}],3:[function(r,t,e){"use strict";e.__esModule=!0;var n=r("./IntegerArbitrary");e.boolean=function(){return n.integer(0,1).map(function(r){return 1===r}).noBias()}},{"./IntegerArbitrary":11}],4:[function(r,t,e){"use strict";e.__esModule=!0;var n=r("../../utils/polyfills"),i=r("./IntegerArbitrary");function a(r,t,e){return i.integer(r,t).map(function(r){return n.StringFromCodePointLimited(e(r))})}var o=function(r){return r<95?r+32:r<=126?r-95:r};e.char=function(){return a(32,126,function(r){return r})},e.hexa=function(){return a(0,15,function(r){return r<10?r+48:r+97-10})},e.base64=function(){return a(0,63,function(r){return r<26?r+65:r<52?r+97-26:r<62?r+48-52:62===r?43:47})},e.ascii=function(){return a(0,127,o)},e.char16bits=function(){return a(0,65535,o)},e.unicode=function(){return a(0,63487,function(r){return r<55296?o(r):r+2048})},e.fullUnicode=function(){return a(0,1112063,function(r){return r<55296?o(r):r+2048})}},{"../../utils/polyfills":60,"./IntegerArbitrary":11}],5:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)}),a=this&&this.__generator||function(e,n){var i,a,o,r,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:t(0),throw:t(1),return:t(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function t(t){return function(r){return function(t){if(i)throw new TypeError("Generator is already executing.");for(;u;)try{if(i=1,a&&(o=2&t[0]?a.return:t[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,t[1])).done)return o;switch(a=0,o&&(t=[2&t[0],o.value]),t[0]){case 0:case 1:o=t;break;case 4:return u.label++,{value:t[1],done:!1};case 5:u.label++,a=t[1],t=[0];continue;case 7:t=u.ops.pop(),u.trys.pop();continue;default:if(!(o=0<(o=u.trys).length&&o[o.length-1])&&(6===t[0]||2===t[0])){u=0;continue}if(3===t[0]&&(!o||t[1]>o[0]&&t[1]<o[3])){u.label=t[1];break}if(6===t[0]&&u.label<o[1]){u.label=o[1],o=t;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(t);break}o[2]&&u.ops.pop(),u.trys.pop();continue}t=n.call(e,u)}catch(r){t=[6,r],a=0}finally{i=o=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,r])}}},o=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o},u=this&&this.__spread||function(){for(var r=[],t=0;t<arguments.length;t++)r=r.concat(o(arguments[t]));return r};e.__esModule=!0;var s=r("../../stream/Stream"),c=r("../symbols"),l=r("./definition/Arbitrary"),h=r("./definition/Shrinkable"),f=function(e){function r(r){var t=e.call(this)||this;return t.values=r,t}return i(r,e),r.prototype.generate=function(r){var t=this;if(1===this.values.length)return new h.Shrinkable(this.values[0]);var e=r.nextInt(0,this.values.length-1);if(0===e)return new h.Shrinkable(this.values[0]);return new h.Shrinkable(this.values[e],function(){return s.stream(function(t){return a(this,function(r){switch(r.label){case 0:return[4,new h.Shrinkable(t)];case 1:return r.sent(),[2]}})}(t.values[0]))})},r}(l.Arbitrary);e.constant=function(r){if(c.hasCloneMethod(r))throw new Error("fc.constant does not accept cloneable values, use fc.clonedConstant instead");return new f([r])},e.clonedConstant=function(r){if(c.hasCloneMethod(r))return new f([function(){return r[c.cloneMethod]()}]).map(function(r){return r()});return new f([r])},e.constantFrom=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];if(0===r.length)throw new Error("fc.constantFrom expects at least one parameter");if(null!=r.find(function(r){return c.hasCloneMethod(r)}))throw new Error("fc.constantFrom does not accept cloneable values, not supported for the moment");return new f(u(r))}},{"../../stream/Stream":57,"../symbols":53,"./definition/Arbitrary":24,"./definition/Shrinkable":27}],6:[function(r,t,e){"use strict";e.__esModule=!0;var n=r("../symbols"),i=r("./ConstantArbitrary"),a=function(){function r(){this.receivedLogs=[]}return r.prototype.log=function(r){this.receivedLogs.push(r)},r.prototype.size=function(){return this.receivedLogs.length},r.prototype.toString=function(){return JSON.stringify({logs:this.receivedLogs})},r.prototype[n.cloneMethod]=function(){return new r},r}();e.context=function(){return i.clonedConstant(new a)}},{"../symbols":53,"./ConstantArbitrary":5}],7:[function(r,t,e){"use strict";var u=this&&this.__values||function(r){var t="function"==typeof Symbol&&r[Symbol.iterator],e=0;return t?t.call(r):{next:function(){return r&&e>=r.length&&(r=void 0),{value:r&&r[e++],done:!r}}}};e.__esModule=!0;var n=r("./SetArbitrary"),i=r("./TupleArbitrary");function a(r){var t,e,n={};try{for(var i=u(r),a=i.next();!a.done;a=i.next()){var o=a.value;n[o[0]]=o[1]}}catch(r){t={error:r}}finally{try{a&&!a.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}return n}e.dictionary=function(r,t){return n.set(i.tuple(r,t),function(r,t){return r[0]===t[0]}).map(a)}},{"./SetArbitrary":17,"./TupleArbitrary":23}],8:[function(r,t,e){"use strict";e.__esModule=!0;var n=r("./IntegerArbitrary"),i=r("./TupleArbitrary");function a(r){return n.integer(0,(1<<r)-1)}var o=function(){return a(24).map(function(r){return r/(1<<24)})};e.float=function(t,e){return void 0===t?o():void 0===e?o().map(function(r){return r*t}):o().map(function(r){return t+r*(e-t)})};var u=Math.pow(2,27),s=Math.pow(2,-53),c=function(){return i.tuple(a(26),a(27)).map(function(r){return(r[0]*u+r[1])*s})};e.double=function(t,e){return void 0===t?c():void 0===e?c().map(function(r){return r*t}):c().map(function(r){return t+r*(e-t)})}},{"./IntegerArbitrary":11,"./TupleArbitrary":23}],9:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)}),a=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o},o=this&&this.__spread||function(){for(var r=[],t=0;t<arguments.length;t++)r=r.concat(a(arguments[t]));return r};e.__esModule=!0;var u=function(e){function r(r){var t=e.call(this)||this;return t.warbs=r,t.summedWarbs=r.reduce(function(r,t){return r.concat({weight:r[r.length-1].weight+t.weight,arbitrary:t.arbitrary})},[{weight:0,arbitrary:r[0].arbitrary}]).slice(1),t.totalWeight=t.summedWarbs[t.summedWarbs.length-1].weight,t}return i(r,e),r.prototype.generate=function(r){var t=r.nextInt(0,this.totalWeight-1);return this.summedWarbs.find(function(r){return t<r.weight}).arbitrary.generate(r)},r.prototype.withBias=function(t){return new r(this.warbs.map(function(r){return{weight:r.weight,arbitrary:r.arbitrary.withBias(t)}}))},r}(r("./definition/Arbitrary").Arbitrary);e.frequency=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];if(0===r.length)throw new Error("fc.frequency expects at least one parameter");return new u(o(r))}},{"./definition/Arbitrary":24}],10:[function(r,t,e){"use strict";var n=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o};e.__esModule=!0;var s=r("../../utils/hash"),c=r("../../utils/stringify"),l=r("../symbols"),i=r("./ArrayArbitrary"),a=r("./IntegerArbitrary"),o=r("./TupleArbitrary");e.func=function(r){return o.tuple(i.array(r,1,10),a.integer().noShrink()).map(function(r){var t=n(r,2),a=t[0],o=t[1],e=function(){var r,i={};return Object.assign(function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];var e=c.stringify(r),n=a[s.hash(""+o+e)%a.length];return i[e]=n,l.hasCloneMethod(n)?n[l.cloneMethod]():n},((r={toString:function(){return"<function :: "+Object.keys(i).sort().map(function(r){return r+" => "+c.stringify(i[r])}).join(", ")+">"}})[l.cloneMethod]=e,r))};return e()})},e.compareFunc=function(){return o.tuple(a.integer().noShrink(),a.integer(1,4294967295).noShrink()).map(function(r){var t=n(r,2),o=t[0],u=t[1],e=function(){var r,a={};return Object.assign(function(r,t){var e=c.stringify(r),n=c.stringify(t),i=s.hash(""+o+e)%u-s.hash(""+o+n)%u;return a["["+e+","+n+"]"]=i},((r={toString:function(){return"<function :: "+Object.keys(a).sort().map(function(r){return r+" => "+a[r]}).join(", ")+">"}})[l.cloneMethod]=e,r))};return e()})},e.compareBooleanFunc=function(){return o.tuple(a.integer().noShrink(),a.integer(1,4294967295).noShrink()).map(function(r){var t=n(r,2),o=t[0],u=t[1],e=function(){var r,a={};return Object.assign(function(r,t){var e=c.stringify(r),n=c.stringify(t),i=s.hash(""+o+e)%u<s.hash(""+o+n)%u;return a["["+e+","+n+"]"]=i},((r={toString:function(){return"<function :: "+Object.keys(a).sort().map(function(r){return r+" => "+a[r]}).join(", ")+">"}})[l.cloneMethod]=e,r))};return e()})}},{"../../utils/hash":59,"../../utils/stringify":61,"../symbols":53,"./ArrayArbitrary":1,"./IntegerArbitrary":11,"./TupleArbitrary":23}],11:[function(r,t,e){"use strict";var n,a=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var i=r("./definition/ArbitraryWithShrink"),o=r("./definition/BiasedArbitraryWrapper"),u=r("./definition/Shrinkable"),s=r("./helpers/BiasNumeric"),c=r("./helpers/ShrinkNumeric"),l=function(n){function i(r,t){var e=n.call(this)||this;return e.biasedIntegerArbitrary=null,e.min=void 0===r?i.MIN_INT:r,e.max=void 0===t?i.MAX_INT:t,e}return a(i,n),i.prototype.wrapper=function(r,t){var e=this;return new u.Shrinkable(r,function(){return e.shrink(r,t).map(function(r){return e.wrapper(r,!0)})})},i.prototype.generate=function(r){return this.wrapper(r.nextInt(this.min,this.max),!1)},i.prototype.shrink=function(r,t){return c.shrinkNumber(this.min,this.max,r,!0===t)},i.prototype.pureBiasedArbitrary=function(){if(null!=this.biasedIntegerArbitrary)return this.biasedIntegerArbitrary;return this.biasedIntegerArbitrary=s.biasNumeric(this.min,this.max,i,function(r){return Math.floor(Math.log(r)/Math.log(2))}),this.biasedIntegerArbitrary},i.prototype.withBias=function(r){return o.biasWrapper(r,this,function(r){return r.pureBiasedArbitrary()})},i.MIN_INT=-2147483648,i.MAX_INT=2147483647,i}(i.ArbitraryWithShrink);e.integer=function(r,t){return void 0===t?new l(void 0,r):new l(r,t)},e.nat=function(r){return new l(0,r)}},{"./definition/ArbitraryWithShrink":25,"./definition/BiasedArbitraryWrapper":26,"./definition/Shrinkable":27,"./helpers/BiasNumeric":28,"./helpers/ShrinkNumeric":29}],12:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var a=r("lorem-ipsum"),o=r("./definition/Arbitrary"),u=r("./definition/Shrinkable"),s=r("./IntegerArbitrary"),c=a;a.default&&(c=a.default);var l=function(n){function r(r,t){var e=n.call(this)||this;return e.numWords=r,e.mode=t,e}return i(r,n),r.prototype.generate=function(r){var t=c({count:this.numWords,units:this.mode,random:function(){return r.nextDouble()}});return new u.Shrinkable(t)},r}(o.Arbitrary);e.lorem=function(r,t){var e=t?"sentences":"words";return s.nat(r||5).chain(function(r){return new l(r,e)})}},{"./IntegerArbitrary":11,"./definition/Arbitrary":24,"./definition/Shrinkable":27,"lorem-ipsum":66}],13:[function(r,t,e){"use strict";var n=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o},i=this&&this.__spread||function(){for(var r=[],t=0;t<arguments.length;t++)r=r.concat(n(arguments[t]));return r};e.__esModule=!0;var a=r("./ArrayArbitrary"),o=r("./BooleanArbitrary"),u=r("./ConstantArbitrary"),s=r("./DictionaryArbitrary"),c=r("./FloatingPointArbitrary"),l=r("./IntegerArbitrary"),h=r("./OneOfArbitrary"),f=r("./StringArbitrary"),p=function(){function t(r,t,e){this.key=r,this.values=t,this.maxDepth=e}return t.prototype.next=function(){return new t(this.key,this.values,this.maxDepth-1)},t.defaultValues=function(){return[o.boolean(),l.integer(),c.double(),f.string(),h.oneof(f.string(),u.constant(null),u.constant(void 0)),h.oneof(c.double(),u.constant(-0),u.constant(0),u.constant(Number.NaN),u.constant(Number.POSITIVE_INFINITY),u.constant(Number.NEGATIVE_INFINITY),u.constant(Number.EPSILON),u.constant(Number.MIN_VALUE),u.constant(Number.MAX_VALUE),u.constant(Number.MIN_SAFE_INTEGER),u.constant(Number.MAX_SAFE_INTEGER))]},t.from=function(e){function r(r,t){return null!=e&&null!=r()?r():t}return new t(r(function(){return e.key},f.string()),r(function(){return e.values},t.defaultValues()),r(function(){return e.maxDepth},2))},t}();e.ObjectConstraints=p;var b=function(r){var t=i(r.values);return 0<r.maxDepth&&(t.push(y(r.next())),t.push.apply(t,i(r.values.map(function(r){return a.array(r)}))),t.push(a.array(b(r.next())))),1<r.maxDepth&&t.push(a.array(y(r.next().next()))),h.oneof.apply(void 0,i(t))},y=function(r){return s.dictionary(r.key,b(r))};function d(r){return b(p.from(r))}function w(r,t){var e=r,n=[o.boolean(),l.integer(),c.double(),r,u.constant(null)];return null!=t?{key:e,values:n,maxDepth:t}:{key:e,values:n}}function v(r){return d(w(f.string(),r))}function g(r){return d(w(f.unicodeString(),r))}e.anything=d,e.object=function(r){return y(p.from(r))},e.jsonObject=v,e.unicodeJsonObject=g,e.json=function(r){return(null!=r?v(r):v()).map(JSON.stringify)},e.unicodeJson=function(r){return(null!=r?g(r):g()).map(JSON.stringify)}},{"./ArrayArbitrary":1,"./BooleanArbitrary":3,"./ConstantArbitrary":5,"./DictionaryArbitrary":7,"./FloatingPointArbitrary":8,"./IntegerArbitrary":11,"./OneOfArbitrary":14,"./StringArbitrary":19}],14:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)}),a=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o},o=this&&this.__spread||function(){for(var r=[],t=0;t<arguments.length;t++)r=r.concat(a(arguments[t]));return r};e.__esModule=!0;var u=function(e){function r(r){var t=e.call(this)||this;return t.arbs=r,t}return i(r,e),r.prototype.generate=function(r){var t=r.nextInt(0,this.arbs.length-1);return this.arbs[t].generate(r)},r.prototype.withBias=function(t){return new r(this.arbs.map(function(r){return r.withBias(t)}))},r}(r("./definition/Arbitrary").Arbitrary);e.oneof=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];if(0===r.length)throw new Error("fc.oneof expects at least one parameter");return new u(o(r))}},{"./definition/Arbitrary":24}],15:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)}),a=this&&this.__generator||function(e,n){var i,a,o,r,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:t(0),throw:t(1),return:t(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function t(t){return function(r){return function(t){if(i)throw new TypeError("Generator is already executing.");for(;u;)try{if(i=1,a&&(o=2&t[0]?a.return:t[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,t[1])).done)return o;switch(a=0,o&&(t=[2&t[0],o.value]),t[0]){case 0:case 1:o=t;break;case 4:return u.label++,{value:t[1],done:!1};case 5:u.label++,a=t[1],t=[0];continue;case 7:t=u.ops.pop(),u.trys.pop();continue;default:if(!(o=0<(o=u.trys).length&&o[o.length-1])&&(6===t[0]||2===t[0])){u=0;continue}if(3===t[0]&&(!o||t[1]>o[0]&&t[1]<o[3])){u.label=t[1];break}if(6===t[0]&&u.label<o[1]){u.label=o[1],o=t;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(t);break}o[2]&&u.ops.pop(),u.trys.pop();continue}t=n.call(e,u)}catch(r){t=[6,r],a=0}finally{i=o=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,r])}}};e.__esModule=!0;var o=r("./definition/Arbitrary"),u=r("./definition/Shrinkable"),s=r("./IntegerArbitrary"),c=function(n){function t(r,t){var e=n.call(this)||this;return e.arb=r,e.frequency=t,e.isOptionArb=s.nat(t),e}return i(t,n),t.extendedShrinkable=function(r){return new u.Shrinkable(r.value_,function(){return r.shrink().map(t.extendedShrinkable).join(function(){return a(this,function(r){switch(r.label){case 0:return[4,new u.Shrinkable(null)];case 1:return r.sent(),[2]}})}())})},t.prototype.generate=function(r){return 0===this.isOptionArb.generate(r).value?new u.Shrinkable(null):t.extendedShrinkable(this.arb.generate(r))},t.prototype.withBias=function(r){return new t(this.arb.withBias(r),this.frequency)},t}(o.Arbitrary);e.option=function(r,t){return new c(r,null==t?5:t)}},{"./IntegerArbitrary":11,"./definition/Arbitrary":24,"./definition/Shrinkable":27}],16:[function(r,t,e){"use strict";var s=this&&this.__values||function(r){var t="function"==typeof Symbol&&r[Symbol.iterator],e=0;return t?t.call(r):{next:function(){return r&&e>=r.length&&(r=void 0),{value:r&&r[e++],done:!r}}}};e.__esModule=!0;var c=r("./OptionArbitrary"),i=r("./TupleArbitrary");function l(t){var n=Object.keys(t),r=n.map(function(r){return t[r]});return i.genericTuple(r).map(function(r){for(var t={},e=0;e!==n.length;++e)t[n[e]]=r[e];return t})}e.record=function(r,t){var e,n;if(null==t||!0!==t.withDeletedKeys&&!0!==t.with_deleted_keys)return l(r);var i={};try{for(var a=s(Object.keys(r)),o=a.next();!o.done;o=a.next()){var u=o.value;i[u]=c.option(r[u].map(function(r){return{value:r}}))}}catch(r){e={error:r}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}return l(i).map(function(r){var t,e,n={};try{for(var i=s(Object.keys(r)),a=i.next();!a.done;a=i.next()){var o=a.value;null!=r[o]&&(n[o]=r[o].value)}}catch(r){t={error:r}}finally{try{a&&!a.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}return n})}},{"./OptionArbitrary":15,"./TupleArbitrary":23}],17:[function(r,t,e){"use strict";e.__esModule=!0;var s=r("./ArrayArbitrary");function c(u){return function(a){for(var o=a.length,r=function(t){var r,e,n,i;(function(r,t,e){for(var n=0;n<t;++n)if(e(r[n]))return!0;return!1})(a,t,function(r){return u(r.value_,a[t].value_)})&&(n=--o,i=(r=a)[e=t],r[e]=r[n],r[n]=i)},t=a.length-1;-1!==t;--t)r(t);return a.slice(0,o)}}e.buildCompareFilter=c,e.set=function(r,t,e,n){var i=null==e||"number"!=typeof e?0:t,a=null==t||"number"!=typeof t?10:"number"==typeof e?e:t,o=null!=n?n:"function"==typeof e?e:"function"==typeof t?t:function(r,t){return r===t},u=new s.ArrayArbitrary(r,i,a,c(o));return 0===i?u:u.filter(function(r){return r.length>=i})}},{"./ArrayArbitrary":1}],18:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)}),a=this&&this.__generator||function(e,n){var i,a,o,r,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return r={next:t(0),throw:t(1),return:t(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function t(t){return function(r){return function(t){if(i)throw new TypeError("Generator is already executing.");for(;u;)try{if(i=1,a&&(o=2&t[0]?a.return:t[0]?a.throw||((o=a.return)&&o.call(a),0):a.next)&&!(o=o.call(a,t[1])).done)return o;switch(a=0,o&&(t=[2&t[0],o.value]),t[0]){case 0:case 1:o=t;break;case 4:return u.label++,{value:t[1],done:!1};case 5:u.label++,a=t[1],t=[0];continue;case 7:t=u.ops.pop(),u.trys.pop();continue;default:if(!(o=0<(o=u.trys).length&&o[o.length-1])&&(6===t[0]||2===t[0])){u=0;continue}if(3===t[0]&&(!o||t[1]>o[0]&&t[1]<o[3])){u.label=t[1];break}if(6===t[0]&&u.label<o[1]){u.label=o[1],o=t;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(t);break}o[2]&&u.ops.pop(),u.trys.pop();continue}t=n.call(e,u)}catch(r){t=[6,r],a=0}finally{i=o=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,r])}}},o=this&&this.__read||function(r,t){var e="function"==typeof Symbol&&r[Symbol.iterator];if(!e)return r;var n,i,a=e.call(r),o=[];try{for(;(void 0===t||0<t--)&&!(n=a.next()).done;)o.push(n.value)}catch(r){i={error:r}}finally{try{n&&!n.done&&(e=a.return)&&e.call(a)}finally{if(i)throw i.error}}return o},u=this&&this.__spread||function(){for(var r=[],t=0;t<arguments.length;t++)r=r.concat(o(arguments[t]));return r};e.__esModule=!0;var s=r("../../stream/Stream"),c=r("../../utils/stringify"),l=r("../symbols"),h=r("./definition/Arbitrary"),f=r("./definition/BiasedArbitraryWrapper"),p=r("./definition/Shrinkable"),b=function(e){function n(r){var t=e.call(this)||this;return t.arb=r,t}return i(n,e),n.prototype.generate=function(r){var t=this,e=function(){return new s.Stream(function(t,e){return a(this,function(r){switch(r.label){case 0:return[4,t.generate(e).value_];case 1:return r.sent(),[3,0];case 2:return[2]}})}(t.arb,r.clone()))},n=function(){return"Stream("+u(e().take(10).map(c.stringify)).join(",")+"...)"},i=function(){var r;return Object.assign(e(),((r={toString:n})[l.cloneMethod]=i,r))};return new p.Shrinkable(i())},n.prototype.withBias=function(r){var t=this;return f.biasWrapper(r,this,function(){return new n(t.arb.withBias(r))})},n}(h.Arbitrary);e.infiniteStream=function(r){return new b(r)}},{"../../stream/Stream":57,"../../utils/stringify":61,"../symbols":53,"./definition/Arbitrary":24,"./definition/BiasedArbitraryWrapper":26,"./definition/Shrinkable":27}],19:[function(r,t,e){"use strict";e.__esModule=!0;var n=r("./ArrayArbitrary"),i=r("./CharacterArbitrary");function a(r,t,e){return(null!=t?null!=e?n.array(r,t,e):n.array(r,t):n.array(r)).map(function(r){return r.join("")})}e.stringOf=function(r,t,e){return a(r,t,e)},e.string=function(r,t){return a(i.char(),r,t)},e.asciiString=function(r,t){return a(i.ascii(),r,t)},e.string16bits=function(r,t){return a(i.char16bits(),r,t)},e.unicodeString=function(r,t){return a(i.unicode(),r,t)},e.fullUnicodeString=function(r,t){return a(i.fullUnicode(),r,t)},e.hexaString=function(r,t){return a(i.hexa(),r,t)},e.base64String=function(r,t){var e=null!=r&&null!=t?r:0,n=null==t?null==r?16:r:t;return function(r,t){if(t<r)throw new Error("Minimal length should be inferior or equal to maximal length");if(r%4!=0)throw new Error("Minimal length of base64 strings must be a multiple of 4");if(t%4!=0)throw new Error("Maximal length of base64 strings must be a multiple of 4");return a(i.base64(),r,t).map(function(r){switch(r.length%4){case 0:return r;case 3:return r+"=";case 2:return r+"==";default:return r.slice(1)}})}(e+3-(e+3)%4,n-n%4)}},{"./ArrayArbitrary":1,"./CharacterArbitrary":4}],20:[function(r,t,e){"use strict";var n,i=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var o=r("../../stream/Stream"),a=r("./definition/Arbitrary"),u=r("./definition/BiasedArbitraryWrapper"),s=r("./definition/Shrinkable"),c=r("./IntegerArbitrary"),l=function(a){function t(r,t,e,n){var i=a.call(this)||this;if(i.originalArray=r,i.isOrdered=t,i.minLength=e,i.maxLength=n,e<0||e>r.length)throw new Error("fc.*{s|S}ubarrayOf expects the minimal length to be between 0 and the size of the original array");if(n<0||n>r.length)throw new Error("fc.*{s|S}ubarrayOf expects the maximal length to be between 0 and the size of the original array");if(n<e)throw new Error("fc.*{s|S}ubarrayOf expects the minimal length to be inferior or equal to the maximal length");return i.lengthArb=c.integer(e,n),i}return i(t,a),t.prototype.wrapper=function(r,t){var e=this;return new s.Shrinkable(r,function(){return e.shrinkImpl(r,t).map(function(r){return e.wrapper(r,!0)})})},t.prototype.generate=function(r){for(var t=this,e=this.originalArray.map(function(r,t){return t}),n=this.lengthArb.generate(r).value,i=[],a=0;a!==n;++a){var o=r.nextInt(0,e.length-1);i.push(e[o]),e.splice(o,1)}return this.isOrdered&&i.sort(function(r,t){return r-t}),this.wrapper(i.map(function(r){return t.originalArray[r]}),!1)},t.prototype.shrinkImpl=function(t,r){var e=this;return 0===t.length?o.Stream.nil():this.lengthArb.shrinkableFor(t.length,r).shrink().map(function(r){return t.slice(t.length-r.value)}).join(t.length>this.minLength?this.shrinkImpl(t.slice(1),!1).filter(function(r){return e.minLength<=r.length+1}).map(function(r){return[t[0]].concat(r)}):o.Stream.nil())},t.prototype.withBias=function(r){return this.minLength!==this.maxLength?u.biasWrapper(r,this,function(r){return new t(r.originalArray,r.isOrdered,r.minLength,r.minLength+Math.floor(Math.log(r.maxLength-r.minLength)/Math.log(2)))}):this},t}(a.Arbitrary);e.subarray=function(r,t,e){return null!=t&&null!=e?new l(r,!0,t,e):new l(r,!0,0,r.length)},e.shuffledSubarray=function(r,t,e){return null!=t&&null!=e?new l(r,!1,t,e):new l(r,!1,0,r.length)}},{"../../stream/Stream":57,"./IntegerArbitrary":11,"./definition/Arbitrary":24,"./definition/BiasedArbitraryWrapper":26,"./definition/Shrinkable":27}],21:[function(r,t,e){"use strict";var n,S=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var i=r("./definition/Arbitrary"),k=r("./TupleArbitrary.generic"),_=function(e){function t(r){var t=e.call(this)||this;return t.arb0=r,t.tupleArb=new k.GenericTupleArbitrary([r]),t}return S(t,e),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r))},t}(i.Arbitrary);e.Tuple1Arbitrary=_;var B=function(n){function t(r,t){var e=n.call(this)||this;return e.arb0=r,e.arb1=t,e.tupleArb=new k.GenericTupleArbitrary([r,t]),e}return S(t,n),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r))},t}(i.Arbitrary);e.Tuple2Arbitrary=B;var x=function(i){function t(r,t,e){var n=i.call(this)||this;return n.arb0=r,n.arb1=t,n.arb2=e,n.tupleArb=new k.GenericTupleArbitrary([r,t,e]),n}return S(t,i),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r))},t}(i.Arbitrary);e.Tuple3Arbitrary=x;var P=function(a){function t(r,t,e,n){var i=a.call(this)||this;return i.arb0=r,i.arb1=t,i.arb2=e,i.arb3=n,i.tupleArb=new k.GenericTupleArbitrary([r,t,e,n]),i}return S(t,a),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r))},t}(i.Arbitrary);e.Tuple4Arbitrary=P;var T=function(o){function t(r,t,e,n,i){var a=o.call(this)||this;return a.arb0=r,a.arb1=t,a.arb2=e,a.arb3=n,a.arb4=i,a.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i]),a}return S(t,o),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r))},t}(i.Arbitrary);e.Tuple5Arbitrary=T;var I=function(u){function t(r,t,e,n,i,a){var o=u.call(this)||this;return o.arb0=r,o.arb1=t,o.arb2=e,o.arb3=n,o.arb4=i,o.arb5=a,o.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a]),o}return S(t,u),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r))},t}(i.Arbitrary);e.Tuple6Arbitrary=I;var E=function(s){function t(r,t,e,n,i,a,o){var u=s.call(this)||this;return u.arb0=r,u.arb1=t,u.arb2=e,u.arb3=n,u.arb4=i,u.arb5=a,u.arb6=o,u.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o]),u}return S(t,s),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r))},t}(i.Arbitrary);e.Tuple7Arbitrary=E;var M=function(c){function t(r,t,e,n,i,a,o,u){var s=c.call(this)||this;return s.arb0=r,s.arb1=t,s.arb2=e,s.arb3=n,s.arb4=i,s.arb5=a,s.arb6=o,s.arb7=u,s.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u]),s}return S(t,c),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r))},t}(i.Arbitrary);e.Tuple8Arbitrary=M;var O=function(l){function t(r,t,e,n,i,a,o,u,s){var c=l.call(this)||this;return c.arb0=r,c.arb1=t,c.arb2=e,c.arb3=n,c.arb4=i,c.arb5=a,c.arb6=o,c.arb7=u,c.arb8=s,c.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s]),c}return S(t,l),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r))},t}(i.Arbitrary);e.Tuple9Arbitrary=O;var L=function(h){function t(r,t,e,n,i,a,o,u,s,c){var l=h.call(this)||this;return l.arb0=r,l.arb1=t,l.arb2=e,l.arb3=n,l.arb4=i,l.arb5=a,l.arb6=o,l.arb7=u,l.arb8=s,l.arb9=c,l.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c]),l}return S(t,h),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r))},t}(i.Arbitrary);e.Tuple10Arbitrary=L;var R=function(f){function t(r,t,e,n,i,a,o,u,s,c,l){var h=f.call(this)||this;return h.arb0=r,h.arb1=t,h.arb2=e,h.arb3=n,h.arb4=i,h.arb5=a,h.arb6=o,h.arb7=u,h.arb8=s,h.arb9=c,h.arb10=l,h.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l]),h}return S(t,f),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r))},t}(i.Arbitrary);e.Tuple11Arbitrary=R;var j=function(p){function t(r,t,e,n,i,a,o,u,s,c,l,h){var f=p.call(this)||this;return f.arb0=r,f.arb1=t,f.arb2=e,f.arb3=n,f.arb4=i,f.arb5=a,f.arb6=o,f.arb7=u,f.arb8=s,f.arb9=c,f.arb10=l,f.arb11=h,f.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h]),f}return S(t,p),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r))},t}(i.Arbitrary);e.Tuple12Arbitrary=j;var C=function(b){function t(r,t,e,n,i,a,o,u,s,c,l,h,f){var p=b.call(this)||this;return p.arb0=r,p.arb1=t,p.arb2=e,p.arb3=n,p.arb4=i,p.arb5=a,p.arb6=o,p.arb7=u,p.arb8=s,p.arb9=c,p.arb10=l,p.arb11=h,p.arb12=f,p.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f]),p}return S(t,b),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r))},t}(i.Arbitrary);e.Tuple13Arbitrary=C;var N=function(y){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p){var b=y.call(this)||this;return b.arb0=r,b.arb1=t,b.arb2=e,b.arb3=n,b.arb4=i,b.arb5=a,b.arb6=o,b.arb7=u,b.arb8=s,b.arb9=c,b.arb10=l,b.arb11=h,b.arb12=f,b.arb13=p,b.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p]),b}return S(t,y),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r))},t}(i.Arbitrary);e.Tuple14Arbitrary=N;var F=function(d){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b){var y=d.call(this)||this;return y.arb0=r,y.arb1=t,y.arb2=e,y.arb3=n,y.arb4=i,y.arb5=a,y.arb6=o,y.arb7=u,y.arb8=s,y.arb9=c,y.arb10=l,y.arb11=h,y.arb12=f,y.arb13=p,y.arb14=b,y.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b]),y}return S(t,d),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r))},t}(i.Arbitrary);e.Tuple15Arbitrary=F;var U=function(w){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y){var d=w.call(this)||this;return d.arb0=r,d.arb1=t,d.arb2=e,d.arb3=n,d.arb4=i,d.arb5=a,d.arb6=o,d.arb7=u,d.arb8=s,d.arb9=c,d.arb10=l,d.arb11=h,d.arb12=f,d.arb13=p,d.arb14=b,d.arb15=y,d.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y]),d}return S(t,w),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r))},t}(i.Arbitrary);e.Tuple16Arbitrary=U;var V=function(v){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d){var w=v.call(this)||this;return w.arb0=r,w.arb1=t,w.arb2=e,w.arb3=n,w.arb4=i,w.arb5=a,w.arb6=o,w.arb7=u,w.arb8=s,w.arb9=c,w.arb10=l,w.arb11=h,w.arb12=f,w.arb13=p,w.arb14=b,w.arb15=y,w.arb16=d,w.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d]),w}return S(t,v),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r))},t}(i.Arbitrary);e.Tuple17Arbitrary=V;var W=function(g){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w){var v=g.call(this)||this;return v.arb0=r,v.arb1=t,v.arb2=e,v.arb3=n,v.arb4=i,v.arb5=a,v.arb6=o,v.arb7=u,v.arb8=s,v.arb9=c,v.arb10=l,v.arb11=h,v.arb12=f,v.arb13=p,v.arb14=b,v.arb15=y,v.arb16=d,v.arb17=w,v.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w]),v}return S(t,g),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r),this.arb17.withBias(r))},t}(i.Arbitrary);e.Tuple18Arbitrary=W;var D=function(m){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v){var g=m.call(this)||this;return g.arb0=r,g.arb1=t,g.arb2=e,g.arb3=n,g.arb4=i,g.arb5=a,g.arb6=o,g.arb7=u,g.arb8=s,g.arb9=c,g.arb10=l,g.arb11=h,g.arb12=f,g.arb13=p,g.arb14=b,g.arb15=y,g.arb16=d,g.arb17=w,g.arb18=v,g.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v]),g}return S(t,m),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r),this.arb17.withBias(r),this.arb18.withBias(r))},t}(i.Arbitrary);e.Tuple19Arbitrary=D;var G=function(A){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g){var m=A.call(this)||this;return m.arb0=r,m.arb1=t,m.arb2=e,m.arb3=n,m.arb4=i,m.arb5=a,m.arb6=o,m.arb7=u,m.arb8=s,m.arb9=c,m.arb10=l,m.arb11=h,m.arb12=f,m.arb13=p,m.arb14=b,m.arb15=y,m.arb16=d,m.arb17=w,m.arb18=v,m.arb19=g,m.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g]),m}return S(t,A),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r),this.arb17.withBias(r),this.arb18.withBias(r),this.arb19.withBias(r))},t}(i.Arbitrary);e.Tuple20Arbitrary=G;var H=function(_){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m){var A=_.call(this)||this;return A.arb0=r,A.arb1=t,A.arb2=e,A.arb3=n,A.arb4=i,A.arb5=a,A.arb6=o,A.arb7=u,A.arb8=s,A.arb9=c,A.arb10=l,A.arb11=h,A.arb12=f,A.arb13=p,A.arb14=b,A.arb15=y,A.arb16=d,A.arb17=w,A.arb18=v,A.arb19=g,A.arb20=m,A.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m]),A}return S(t,_),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r),this.arb17.withBias(r),this.arb18.withBias(r),this.arb19.withBias(r),this.arb20.withBias(r))},t}(i.Arbitrary);e.Tuple21Arbitrary=H;var q=function(B){function t(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m,A){var _=B.call(this)||this;return _.arb0=r,_.arb1=t,_.arb2=e,_.arb3=n,_.arb4=i,_.arb5=a,_.arb6=o,_.arb7=u,_.arb8=s,_.arb9=c,_.arb10=l,_.arb11=h,_.arb12=f,_.arb13=p,_.arb14=b,_.arb15=y,_.arb16=d,_.arb17=w,_.arb18=v,_.arb19=g,_.arb20=m,_.arb21=A,_.tupleArb=new k.GenericTupleArbitrary([r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m,A]),_}return S(t,B),t.prototype.generate=function(r){return this.tupleArb.generate(r)},t.prototype.withBias=function(r){return new t(this.arb0.withBias(r),this.arb1.withBias(r),this.arb2.withBias(r),this.arb3.withBias(r),this.arb4.withBias(r),this.arb5.withBias(r),this.arb6.withBias(r),this.arb7.withBias(r),this.arb8.withBias(r),this.arb9.withBias(r),this.arb10.withBias(r),this.arb11.withBias(r),this.arb12.withBias(r),this.arb13.withBias(r),this.arb14.withBias(r),this.arb15.withBias(r),this.arb16.withBias(r),this.arb17.withBias(r),this.arb18.withBias(r),this.arb19.withBias(r),this.arb20.withBias(r),this.arb21.withBias(r))},t}(i.Arbitrary);e.Tuple22Arbitrary=q,e.tuple=function(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m,A){return A?new q(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m,A):m?new H(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g,m):g?new G(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v,g):v?new D(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w,v):w?new W(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d,w):d?new V(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y,d):y?new U(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b,y):b?new F(r,t,e,n,i,a,o,u,s,c,l,h,f,p,b):p?new N(r,t,e,n,i,a,o,u,s,c,l,h,f,p):f?new C(r,t,e,n,i,a,o,u,s,c,l,h,f):h?new j(r,t,e,n,i,a,o,u,s,c,l,h):l?new R(r,t,e,n,i,a,o,u,s,c,l):c?new L(r,t,e,n,i,a,o,u,s,c):s?new O(r,t,e,n,i,a,o,u,s):u?new M(r,t,e,n,i,a,o,u):o?new E(r,t,e,n,i,a,o):a?new I(r,t,e,n,i,a):i?new T(r,t,e,n,i):n?new P(r,t,e,n):e?new x(r,t,e):t?new B(r,t):r?new _(r):void 0}},{"./TupleArbitrary.generic":22,"./definition/Arbitrary":24}],22:[function(r,t,e){"use strict";var n,o=this&&this.__extends||(n=function(r,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var e in t)t.hasOwnProperty(e)&&(r[e]=t[e])})(r,t)},function(r,t){function e(){this.constructor=r}n(r,t),r.prototype=null===t?Object.create(t):(e.prototype=t.prototype,new e)});e.__esModule=!0;var u=r("../../stream/Stream"),s=r("../symbols"),i=r("./definition/Arbitrary"),c=r("./definition/Shrinkable"),a=function(i){function a(r){var t=i.call(this)||this;t.arbs=r;for(var e=0;e!==r.length;++e){var n=r[e];if(null==n||null==n.generate)throw new Error("Invalid parameter encountered at index "+e+": expecting an Arbitrary")}return t}return o(a,i),a.makeItCloneable=function(r,e){return r[s.cloneMethod]=function(){for(var r=[],t=0;t!==e.length;++t)r.push(e[t].value);return a.makeItCloneable(r,e),r},r},a.wrapper=function(r){for(var t=!1,e=[],n=0;n!==r.length;++n){var i=r[n];t=t||i.hasToBeCloned,e.push(i.value)}return t&&a.makeItCloneable(e,r),new c.Shrinkable(e,function(){return a.shrinkImpl(r).map(a.wrapper)})},a.prototype.generate=function(t){return a.wrapper(this.arbs.map(function(r){return r.generate(t)}))},a.shrinkImpl=function(e){for(var r=u.Stream.nil(),t=function(t){r=r.join(e[t].shrink().map(function(r){return e.slice(0,t).concat([r]).concat(e.slice(t+1))}))},n=0;n!==e.length;++n)t(n);return r},a.prototype.withBias=function(t){return new a(this.arbs.map(function(r){r