From d1214ca151873174d6fd21cd4692195a8464e372 Mon Sep 17 00:00:00 2001 From: aureooms Date: Tue, 28 Apr 2015 17:07:56 +0200 Subject: [PATCH] fix #9 --- js/dist/itertools.js | 141 ++++++++++++++++++++++------------- js/dist/itertools.js.map | 2 +- js/dist/itertools.min.js | 2 +- js/src/utils/consume.js | 8 ++ js/src/utils/exhaust.js | 8 ++ test/js/src/utils/consume.js | 12 +++ test/js/src/utils/exhaust.js | 12 +++ 7 files changed, 132 insertions(+), 53 deletions(-) create mode 100644 js/src/utils/consume.js create mode 100644 js/src/utils/exhaust.js create mode 100644 test/js/src/utils/consume.js create mode 100644 test/js/src/utils/exhaust.js diff --git a/js/dist/itertools.js b/js/dist/itertools.js index 62e9f2f..5ed37b1 100644 --- a/js/dist/itertools.js +++ b/js/dist/itertools.js @@ -1780,6 +1780,15 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } exports.sum = sum; /* js/src/utils */ + /* js/src/utils/consume.js */ + + var consume = function consume(iterator, n) { + + while (n-- > 0 && !next(iterator).done); + }; + + exports.consume = consume; + /* js/src/utils/count.js */ var count = regeneratorRuntime.mark(function count(start, step) { @@ -1906,6 +1915,36 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } exports.cycle = cycle; + /* js/src/utils/exhaust.js */ + + var exhaust = function exhaust(iterator) { + var _iteratorNormalCompletion21 = true; + var _didIteratorError21 = false; + var _iteratorError21 = undefined; + + try { + + for (var _iterator21 = iterator[Symbol.iterator](), _step21; !(_iteratorNormalCompletion21 = (_step21 = _iterator21.next()).done); _iteratorNormalCompletion21 = true) { + var item = _step21.value; + } + } catch (err) { + _didIteratorError21 = true; + _iteratorError21 = err; + } finally { + try { + if (!_iteratorNormalCompletion21 && _iterator21['return']) { + _iterator21['return'](); + } + } finally { + if (_didIteratorError21) { + throw _iteratorError21; + } + } + } + }; + + exports.exhaust = exhaust; + /* js/src/utils/head.js */ var head = regeneratorRuntime.mark(function head(iterable, n) { @@ -1962,26 +2001,26 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } var buffer = []; - var _iteratorNormalCompletion21 = true; - var _didIteratorError21 = false; - var _iteratorError21 = undefined; + var _iteratorNormalCompletion22 = true; + var _didIteratorError22 = false; + var _iteratorError22 = undefined; try { - for (var _iterator21 = iterable[Symbol.iterator](), _step21; !(_iteratorNormalCompletion21 = (_step21 = _iterator21.next()).done); _iteratorNormalCompletion21 = true) { - var item = _step21.value; + for (var _iterator22 = iterable[Symbol.iterator](), _step22; !(_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done); _iteratorNormalCompletion22 = true) { + var item = _step22.value; buffer.push(item); } } catch (err) { - _didIteratorError21 = true; - _iteratorError21 = err; + _didIteratorError22 = true; + _iteratorError22 = err; } finally { try { - if (!_iteratorNormalCompletion21 && _iterator21['return']) { - _iterator21['return'](); + if (!_iteratorNormalCompletion22 && _iterator22['return']) { + _iterator22['return'](); } } finally { - if (_didIteratorError21) { - throw _iteratorError21; + if (_didIteratorError22) { + throw _iteratorError22; } } } @@ -1994,25 +2033,25 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } /* js/src/utils/ncycle.js */ var ncycle = regeneratorRuntime.mark(function ncycle(iterable, n) { - var buffer, _iteratorNormalCompletion22, _didIteratorError22, _iteratorError22, _iterator22, _step22, item; + var buffer, _iteratorNormalCompletion23, _didIteratorError23, _iteratorError23, _iterator23, _step23, item; return regeneratorRuntime.wrap(function ncycle$(context$2$0) { while (1) switch (context$2$0.prev = context$2$0.next) { case 0: buffer = []; - _iteratorNormalCompletion22 = true; - _didIteratorError22 = false; - _iteratorError22 = undefined; + _iteratorNormalCompletion23 = true; + _didIteratorError23 = false; + _iteratorError23 = undefined; context$2$0.prev = 4; - _iterator22 = iterable[Symbol.iterator](); + _iterator23 = iterable[Symbol.iterator](); case 6: - if (_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done) { + if (_iteratorNormalCompletion23 = (_step23 = _iterator23.next()).done) { context$2$0.next = 14; break; } - item = _step22.value; + item = _step23.value; context$2$0.next = 10; return item; @@ -2020,7 +2059,7 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } buffer.push(item); case 11: - _iteratorNormalCompletion22 = true; + _iteratorNormalCompletion23 = true; context$2$0.next = 6; break; @@ -2031,26 +2070,26 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } case 16: context$2$0.prev = 16; context$2$0.t18 = context$2$0['catch'](4); - _didIteratorError22 = true; - _iteratorError22 = context$2$0.t18; + _didIteratorError23 = true; + _iteratorError23 = context$2$0.t18; case 20: context$2$0.prev = 20; context$2$0.prev = 21; - if (!_iteratorNormalCompletion22 && _iterator22['return']) { - _iterator22['return'](); + if (!_iteratorNormalCompletion23 && _iterator23['return']) { + _iterator23['return'](); } case 23: context$2$0.prev = 23; - if (!_didIteratorError22) { + if (!_didIteratorError23) { context$2$0.next = 26; break; } - throw _iteratorError22; + throw _iteratorError23; case 26: return context$2$0.finish(23); @@ -2099,29 +2138,29 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } /* js/src/utils/pick.js */ var pick = regeneratorRuntime.mark(function pick(object, iterable) { - var _iteratorNormalCompletion23, _didIteratorError23, _iteratorError23, _iterator23, _step23, key; + var _iteratorNormalCompletion24, _didIteratorError24, _iteratorError24, _iterator24, _step24, key; return regeneratorRuntime.wrap(function pick$(context$2$0) { while (1) switch (context$2$0.prev = context$2$0.next) { case 0: - _iteratorNormalCompletion23 = true; - _didIteratorError23 = false; - _iteratorError23 = undefined; + _iteratorNormalCompletion24 = true; + _didIteratorError24 = false; + _iteratorError24 = undefined; context$2$0.prev = 3; - _iterator23 = iterable[Symbol.iterator](); + _iterator24 = iterable[Symbol.iterator](); case 5: - if (_iteratorNormalCompletion23 = (_step23 = _iterator23.next()).done) { + if (_iteratorNormalCompletion24 = (_step24 = _iterator24.next()).done) { context$2$0.next = 12; break; } - key = _step23.value; + key = _step24.value; context$2$0.next = 9; return object[key]; case 9: - _iteratorNormalCompletion23 = true; + _iteratorNormalCompletion24 = true; context$2$0.next = 5; break; @@ -2132,26 +2171,26 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } case 14: context$2$0.prev = 14; context$2$0.t20 = context$2$0['catch'](3); - _didIteratorError23 = true; - _iteratorError23 = context$2$0.t20; + _didIteratorError24 = true; + _iteratorError24 = context$2$0.t20; case 18: context$2$0.prev = 18; context$2$0.prev = 19; - if (!_iteratorNormalCompletion23 && _iterator23['return']) { - _iterator23['return'](); + if (!_iteratorNormalCompletion24 && _iterator24['return']) { + _iterator24['return'](); } case 21: context$2$0.prev = 21; - if (!_didIteratorError23) { + if (!_didIteratorError24) { context$2$0.next = 24; break; } - throw _iteratorError23; + throw _iteratorError24; case 24: return context$2$0.finish(21); @@ -2231,7 +2270,7 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } while (n-- > 0) deques.push([]); var gen = regeneratorRuntime.mark(function gen(mydeque) { - var current, _iteratorNormalCompletion24, _didIteratorError24, _iteratorError24, _iterator24, _step24, deque; + var current, _iteratorNormalCompletion25, _didIteratorError25, _iteratorError25, _iterator25, _step25, deque; return regeneratorRuntime.wrap(function gen$(context$3$0) { while (1) switch (context$3$0.prev = context$3$0.next) { @@ -2256,13 +2295,13 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } return context$3$0.abrupt('return'); case 5: - _iteratorNormalCompletion24 = true; - _didIteratorError24 = false; - _iteratorError24 = undefined; + _iteratorNormalCompletion25 = true; + _didIteratorError25 = false; + _iteratorError25 = undefined; context$3$0.prev = 8; - for (_iterator24 = deques[Symbol.iterator](); !(_iteratorNormalCompletion24 = (_step24 = _iterator24.next()).done); _iteratorNormalCompletion24 = true) { - deque = _step24.value; + for (_iterator25 = deques[Symbol.iterator](); !(_iteratorNormalCompletion25 = (_step25 = _iterator25.next()).done); _iteratorNormalCompletion25 = true) { + deque = _step25.value; deque.push(current.value); }context$3$0.next = 16; break; @@ -2270,26 +2309,26 @@ var _slicedToArray = function (arr, i) { if (Array.isArray(arr)) { return arr; } case 12: context$3$0.prev = 12; context$3$0.t21 = context$3$0['catch'](8); - _didIteratorError24 = true; - _iteratorError24 = context$3$0.t21; + _didIteratorError25 = true; + _iteratorError25 = context$3$0.t21; case 16: context$3$0.prev = 16; context$3$0.prev = 17; - if (!_iteratorNormalCompletion24 && _iterator24['return']) { - _iterator24['return'](); + if (!_iteratorNormalCompletion25 && _iterator25['return']) { + _iterator25['return'](); } case 19: context$3$0.prev = 19; - if (!_didIteratorError24) { + if (!_didIteratorError25) { context$3$0.next = 22; break; } - throw _iteratorError24; + throw _iteratorError25; case 22: return context$3$0.finish(19); diff --git a/js/dist/itertools.js.map b/js/dist/itertools.js.map index ec1bda9..b166f2e 100644 --- a/js/dist/itertools.js.map +++ b/js/dist/itertools.js.map @@ -1 +1 @@ -{"version":3,"file":"js/dist/itertools.js.map","sources":["js/dist/itertools.js"],"names":["_slicedToArray","arr","i","Array","isArray","Symbol","iterator","Object","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","value","length","err","TypeError","exports","_product","_product2","_x","_x2","_x3","args$3$0","arguments","regeneratorRuntime","wrap","context$3$0","prev","delegateYield","apply","this","abrupt","t0","stop","marked2$0","map","mark","toString","callee$1$0","pools","n","iterable","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","buffer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","item","context$2$0","pop","t1","finish","t2","chain","iterables","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","t4","combinations","r","pool","len","indices","pivot","list","range","pick","combinationswithrepetition","nrepeat","compress","selector","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","_step4","_step4$value","take","zip","t5","dropwhile","predicate","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","iter","t7","enumerate","count","filter","_iteratorNormalCompletion6","_didIteratorError6","_iteratorError6","_iterator6","_step6","t8","filtertrue","filterfalse","_iteratorNormalCompletion7","_didIteratorError7","_iteratorError7","_iterator7","_step7","t9","group","key","first","nextkey","currkey","current","groupby","callable","_iteratorNormalCompletion8","_didIteratorError8","_iteratorError8","_iterator8","_step8","t10","times","permutations","cycles","j","_ref","head","splice","product","ncycle","reversed","repeat","_iteratorNormalCompletion9","_didIteratorError9","_iteratorError9","_iterator9","_step9","t12","slice","start","step","sorted","compare","sort","starmap","_iteratorNormalCompletion10","_didIteratorError10","_iteratorError10","_iterator10","_step10","t13","takewhile","_iteratorNormalCompletion11","_didIteratorError11","_iteratorError11","_iterator11","_step11","t14","iterators","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","_step12","result","t15","all","_iteratorNormalCompletion13","_didIteratorError13","_iteratorError13","_step13","_iterator13","any","_iteratorNormalCompletion14","_didIteratorError14","_iteratorError14","_step14","_iterator14","max","largest","_iteratorNormalCompletion15","_didIteratorError15","_iteratorError15","_step15","_iterator15","candidate","min","smallest","_iteratorNormalCompletion16","_didIteratorError16","_iteratorError16","_step16","_iterator16","reduce","accumulator","initializer","_iteratorNormalCompletion17","_didIteratorError17","_iteratorError17","_step17","_iterator17","some","_iteratorNormalCompletion18","_didIteratorError18","_iteratorError18","_step18","_iterator18","sum","_iteratorNormalCompletion19","_didIteratorError19","_iteratorError19","_step19","_iterator19","cycle","_iteratorNormalCompletion20","_didIteratorError20","_iteratorError20","_iterator20","_step20","t16","_iteratorNormalCompletion21","_didIteratorError21","_iteratorError21","_step21","_iterator21","_iteratorNormalCompletion22","_didIteratorError22","_iteratorError22","_iterator22","_step22","t18","object","_iteratorNormalCompletion23","_didIteratorError23","_iteratorError23","_iterator23","_step23","t20","tee","deques","gen","mydeque","_iteratorNormalCompletion24","_didIteratorError24","_iteratorError24","_iterator24","_step24","deque","t21","shift","itertools"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"js/dist/itertools.js.map","sources":["js/dist/itertools.js"],"names":["_slicedToArray","arr","i","Array","isArray","Symbol","iterator","Object","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","value","length","err","TypeError","exports","_product","_product2","_x","_x2","_x3","args$3$0","arguments","regeneratorRuntime","wrap","context$3$0","prev","delegateYield","apply","this","abrupt","t0","stop","marked2$0","map","mark","toString","callee$1$0","pools","n","iterable","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","_step","buffer","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","item","context$2$0","pop","t1","finish","t2","chain","iterables","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","t4","combinations","r","pool","len","indices","pivot","list","range","pick","combinationswithrepetition","nrepeat","compress","selector","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_iterator4","_step4","_step4$value","take","zip","t5","dropwhile","predicate","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_iterator5","_step5","iter","t7","enumerate","count","filter","_iteratorNormalCompletion6","_didIteratorError6","_iteratorError6","_iterator6","_step6","t8","filtertrue","filterfalse","_iteratorNormalCompletion7","_didIteratorError7","_iteratorError7","_iterator7","_step7","t9","group","key","first","nextkey","currkey","current","groupby","callable","_iteratorNormalCompletion8","_didIteratorError8","_iteratorError8","_iterator8","_step8","t10","times","permutations","cycles","j","_ref","head","splice","product","ncycle","reversed","repeat","_iteratorNormalCompletion9","_didIteratorError9","_iteratorError9","_iterator9","_step9","t12","slice","start","step","sorted","compare","sort","starmap","_iteratorNormalCompletion10","_didIteratorError10","_iteratorError10","_iterator10","_step10","t13","takewhile","_iteratorNormalCompletion11","_didIteratorError11","_iteratorError11","_iterator11","_step11","t14","iterators","_iteratorNormalCompletion12","_didIteratorError12","_iteratorError12","_iterator12","_step12","result","t15","all","_iteratorNormalCompletion13","_didIteratorError13","_iteratorError13","_step13","_iterator13","any","_iteratorNormalCompletion14","_didIteratorError14","_iteratorError14","_step14","_iterator14","max","largest","_iteratorNormalCompletion15","_didIteratorError15","_iteratorError15","_step15","_iterator15","candidate","min","smallest","_iteratorNormalCompletion16","_didIteratorError16","_iteratorError16","_step16","_iterator16","reduce","accumulator","initializer","_iteratorNormalCompletion17","_didIteratorError17","_iteratorError17","_step17","_iterator17","some","_iteratorNormalCompletion18","_didIteratorError18","_iteratorError18","_step18","_iterator18","sum","_iteratorNormalCompletion19","_didIteratorError19","_iteratorError19","_step19","_iterator19","consume","cycle","_iteratorNormalCompletion20","_didIteratorError20","_iteratorError20","_iterator20","_step20","t16","exhaust","_iteratorNormalCompletion21","_didIteratorError21","_iteratorError21","_step21","_iterator21","_iteratorNormalCompletion22","_didIteratorError22","_iteratorError22","_step22","_iterator22","_iteratorNormalCompletion23","_didIteratorError23","_iteratorError23","_iterator23","_step23","t18","object","_iteratorNormalCompletion24","_didIteratorError24","_iteratorError24","_iterator24","_step24","t20","tee","deques","gen","mydeque","_iteratorNormalCompletion25","_didIteratorError25","_iteratorError25","_iterator25","_step25","deque","t21","shift","itertools"],"mappings":"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"} \ No newline at end of file diff --git a/js/dist/itertools.min.js b/js/dist/itertools.min.js index 46f73cc..f938803 100644 --- a/js/dist/itertools.min.js +++ b/js/dist/itertools.min.js @@ -1,2 +1,2 @@ -"use strict";var _slicedToArray=function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var t=[],n=!0,a=!1,u=void 0;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done)&&(t.push(c.value),!r||t.length!==r);n=!0);}catch(i){a=!0,u=i}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t}throw new TypeError("Invalid attempt to destructure non-iterable instance")};!function(e,r){var t=function(e){function r(r,n,a){var u=arguments;return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.delegateYield(e.apply(this,u),"t0",1);case 1:return r.abrupt("return",r.t0);case 2:case"end":return r.stop()}},t[0],this)}var t=[r].map(regeneratorRuntime.mark);return r.toString=function(){return e.toString()},r}(regeneratorRuntime.mark(function H(e,n,a){var u,c,s,i,o,f,v,p,x,b,h,k,l;return regeneratorRuntime.wrap(function(m){for(;;)switch(m.prev=m.next){case 0:if(n!==a){m.next=4;break}return m.next=3,[];case 3:return m.abrupt("return");case 4:u=e[n],c=!0,s=!1,i=r,m.prev=8,o=t(e,n+1,a)[Symbol.iterator]();case 10:if(c=(f=o.next()).done){m.next=43;break}v=f.value,p=!0,x=!1,b=r,m.prev=15,h=u[Symbol.iterator]();case 17:if(p=(k=h.next()).done){m.next=26;break}return l=k.value,v.push(l),m.next=22,v;case 22:v.pop(l);case 23:p=!0,m.next=17;break;case 26:m.next=32;break;case 28:m.prev=28,m.t1=m["catch"](15),x=!0,b=m.t1;case 32:m.prev=32,m.prev=33,!p&&h["return"]&&h["return"]();case 35:if(m.prev=35,!x){m.next=38;break}throw b;case 38:return m.finish(35);case 39:return m.finish(32);case 40:c=!0,m.next=10;break;case 43:m.next=49;break;case 45:m.prev=45,m.t2=m["catch"](8),s=!0,i=m.t2;case 49:m.prev=49,m.prev=50,!c&&o["return"]&&o["return"]();case 52:if(m.prev=52,!s){m.next=55;break}throw i;case 55:return m.finish(52);case 56:return m.finish(49);case 57:case"end":return m.stop()}},H,this,[[8,45,49,57],[15,28,32,40],[33,,35,39],[50,,52,56]])}));e._product=t;var n=regeneratorRuntime.mark(function J(e){var t,n,a,u,c,s;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:t=!0,n=!1,a=r,i.prev=3,u=e[Symbol.iterator]();case 5:if(t=(c=u.next()).done){i.next=11;break}return s=c.value,i.delegateYield(s,"t3",8);case 8:t=!0,i.next=5;break;case 11:i.next=17;break;case 13:i.prev=13,i.t4=i["catch"](3),n=!0,a=i.t4;case 17:i.prev=17,i.prev=18,!t&&u["return"]&&u["return"]();case 20:if(i.prev=20,!n){i.next=23;break}throw a;case 23:return i.finish(20);case 24:return i.finish(17);case 25:case"end":return i.stop()}},J,this,[[3,13,17,25],[18,,20,24]])});e.chain=n;var a=regeneratorRuntime.mark(function K(e,r){var t,n,a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(t=q(e),n=t.length,!(r>n)){s.next=4;break}return s.abrupt("return");case 4:return a=q(F(0,r,1)),s.next=7,q(D(t,a));case 7:u=r-1;case 9:if(!(0>u)){s.next=12;break}return s.abrupt("return");case 12:if(a[u]===u+n-r){s.next=16;break}for(c=++a[u],++u;r>u;++u)a[u]=++c;return s.abrupt("break",19);case 16:--u,s.next=9;break;case 19:return s.next=21,q(D(t,a));case 21:s.next=7;break;case 23:case"end":return s.stop()}},K,this)});e.combinations=a;var u=regeneratorRuntime.mark(function L(e,r){var t,n,a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(t=q(e),n=t.length,!(0===n&&r>0)){s.next=4;break}return s.abrupt("return");case 4:return a=q(x(0,r)),s.next=7,q(D(t,a));case 7:u=r-1;case 9:if(!(0>u)){s.next=12;break}return s.abrupt("return");case 12:if(a[u]===n-1){s.next=16;break}for(c=++a[u],++u;r>u;++u)a[u]=c;return s.abrupt("break",19);case 16:--u,s.next=9;break;case 19:return s.next=21,q(D(t,a));case 21:s.next=7;break;case 23:case"end":return s.stop()}},L,this)});e.combinationswithrepetition=u;var c=regeneratorRuntime.mark(function M(e,t){var n,a,u,c,s,i,o,f;return regeneratorRuntime.wrap(function(v){for(;;)switch(v.prev=v.next){case 0:n=!0,a=!1,u=r,v.prev=3,c=y([t,e])[Symbol.iterator]();case 5:if(n=(s=c.next()).done){v.next=15;break}if(i=_slicedToArray(s.value,2),o=i[0],f=i[1],!o){v.next=12;break}return v.next=12,f;case 12:n=!0,v.next=5;break;case 15:v.next=21;break;case 17:v.prev=17,v.t5=v["catch"](3),a=!0,u=v.t5;case 21:v.prev=21,v.prev=22,!n&&c["return"]&&c["return"]();case 24:if(v.prev=24,!a){v.next=27;break}throw u;case 27:return v.finish(24);case 28:return v.finish(21);case 29:case"end":return v.stop()}},M,this,[[3,17,21,29],[22,,24,28]])});e.compress=c;var s=regeneratorRuntime.mark(function N(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:n=O(t),a=!0,u=!1,c=r,f.prev=4,s=n[Symbol.iterator]();case 6:if(a=(i=s.next()).done){f.next=17;break}if(o=i.value,!e(o)){f.next=10;break}return f.abrupt("continue",14);case 10:return f.next=12,o;case 12:return f.delegateYield(n,"t6",13);case 13:return f.abrupt("return");case 14:a=!0,f.next=6;break;case 17:f.next=23;break;case 19:f.prev=19,f.t7=f["catch"](4),u=!0,c=f.t7;case 23:f.prev=23,f.prev=24,!a&&s["return"]&&s["return"]();case 26:if(f.prev=26,!u){f.next=29;break}throw c;case 29:return f.finish(26);case 30:return f.finish(23);case 31:case"end":return f.stop()}},N,this,[[4,19,23,31],[24,,26,30]])});e.dropwhile=s;var i=function(e){return y([z(0,1),e])};e.enumerate=i;var o=regeneratorRuntime.mark(function P(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=13;break}if(i=s.value,!e(i)){o.next=10;break}return o.next=10,i;case 10:n=!0,o.next=5;break;case 13:o.next=19;break;case 15:o.prev=15,o.t8=o["catch"](3),a=!0,u=o.t8;case 19:o.prev=19,o.prev=20,!n&&c["return"]&&c["return"]();case 22:if(o.prev=22,!a){o.next=25;break}throw u;case 25:return o.finish(22);case 26:return o.finish(19);case 27:case"end":return o.stop()}},P,this,[[3,15,19,27],[20,,22,26]])});e.filter=o,e.filtertrue=o;var f=regeneratorRuntime.mark(function Q(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=13;break}if(i=s.value,e(i)){o.next=10;break}return o.next=10,i;case 10:n=!0,o.next=5;break;case 13:o.next=19;break;case 15:o.prev=15,o.t9=o["catch"](3),a=!0,u=o.t9;case 19:o.prev=19,o.prev=20,!n&&c["return"]&&c["return"]();case 22:if(o.prev=22,!a){o.next=25;break}throw u;case 25:return o.finish(22);case 26:return o.finish(19);case 27:case"end":return o.stop()}},Q,this,[[3,15,19,27],[20,,22,26]])});e.filterfalse=f;var v=regeneratorRuntime.mark(function U(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(n=O(t),a=C(n),!a.done){f.next=4;break}return f.abrupt("return");case 4:u=a.value,c=e(u),s=r,i=r;case 7:s=c,i=[u];case 10:if(o=C(n),!o.done){f.next=14;break}return f.abrupt("break",26);case 14:if(u=o.value,c=e(u),c===s){f.next=20;break}return f.next=19,[s,i];case 19:return f.abrupt("continue",7);case 20:i.push(u),f.next=10;break;case 23:return f.abrupt("break",26);case 26:return f.next=28,[s,i];case 28:case"end":return f.stop()}},U,this)});e.group=v,e.groupby=v;var p=regeneratorRuntime.mark(function V(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e(i);case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t10=o["catch"](3),a=!0,u=o.t10;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},V,this,[[3,14,18,26],[19,,21,25]])});e.map=p;var x=regeneratorRuntime.mark(function W(e,r){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!(r-->0)){t.next=5;break}return t.next=3,e;case 3:t.next=0;break;case 5:case"end":return t.stop()}},W,this)});e.nrepeat=x;var b=regeneratorRuntime.mark(function X(e,r){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(t=q(e),n=t.length,!(r>n)){o.next=4;break}return o.abrupt("return");case 4:return a=q(F(0,n,1)),u=q(F(n,n-r,-1)),o.next=8,q(D(t,I(a,r)));case 8:if(0!==r&&0!==n){o.next=10;break}return o.abrupt("return");case 10:c=r;case 12:if(!c--){o.next=28;break}if(--u[c],0!==u[c]){o.next=19;break}a.push(a.splice(c,1)[0]),u[c]=n-c,o.next=26;break;case 19:return s=u[c],i=[a[n-s],a[c]],a[c]=i[0],a[n-s]=i[1],o.next=25,q(D(t,I(a,r)));case 25:return o.abrupt("break",28);case 26:o.next=12;break;case 28:if(-1!==c){o.next=30;break}return o.abrupt("return");case 30:o.next=10;break;case 32:case"end":return o.stop()}},X,this)});e.permutations=b;var h=regeneratorRuntime.mark(function Z(e,r){var n;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return n=q(B(l(p(q,e)),r)),a.delegateYield(p(q,t(n,0,n.length)),"t11",2);case 2:case"end":return a.stop()}},Z,this)});e.product=h;var k=regeneratorRuntime.mark(function $(e){return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=3,e;case 3:r.next=0;break;case 5:case"end":return r.stop()}},$,this)});e.repeat=k;var l=regeneratorRuntime.mark(function ee(e){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:for(t=[],n=!0,a=!1,u=r,o.prev=4,c=e[Symbol.iterator]();!(n=(s=c.next()).done);n=!0)i=s.value,t.push(i);o.next=12;break;case 8:o.prev=8,o.t12=o["catch"](4),a=!0,u=o.t12;case 12:o.prev=12,o.prev=13,!n&&c["return"]&&c["return"]();case 15:if(o.prev=15,!a){o.next=18;break}throw u;case 18:return o.finish(15);case 19:return o.finish(12);case 20:if(!t.length){o.next=25;break}return o.next=23,t.pop();case 23:o.next=20;break;case 25:case"end":return o.stop()}},ee,this,[[4,8,12,20],[13,,15,19]])});e.reversed=l;var m=regeneratorRuntime.mark(function re(e,r,t,n){var a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:a=O(e);case 1:if(!(r>0)){s.next=8;break}if(!C(a).done){s.next=4;break}return s.abrupt("return");case 4:--r,--t,s.next=1;break;case 8:if(!(t>0)){s.next=24;break}if(u=C(a),!u.done){s.next=12;break}return s.abrupt("return");case 12:return s.next=14,u.value;case 14:--t,c=n;case 16:if(!(c>1)){s.next=22;break}if(!C(a).done){s.next=19;break}return s.abrupt("return");case 19:--c,s.next=16;break;case 22:s.next=8;break;case 24:case"end":return s.stop()}},re,this)});e.slice=m;var d=function(e,r){return q(r).sort(e)};e.sorted=d;var w=regeneratorRuntime.mark(function te(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e.apply(null,i);case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t13=o["catch"](3),a=!0,u=o.t13;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},te,this,[[3,14,18,26],[19,,21,25]])});e.starmap=w;var g=regeneratorRuntime.mark(function ne(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=14;break}if(i=s.value,e(i)){o.next=9;break}return o.abrupt("return");case 9:return o.next=11,i;case 11:n=!0,o.next=5;break;case 14:o.next=20;break;case 16:o.prev=16,o.t14=o["catch"](3),a=!0,u=o.t14;case 20:o.prev=20,o.prev=21,!n&&c["return"]&&c["return"]();case 23:if(o.prev=23,!a){o.next=26;break}throw u;case 26:return o.finish(23);case 27:return o.finish(20);case 28:case"end":return o.stop()}},ne,this,[[3,16,20,28],[21,,23,27]])});e.takewhile=g;var y=regeneratorRuntime.mark(function ae(e){var t,n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(t=q(p(O,e)),0!==t.length){f.next=3;break}return f.abrupt("return");case 3:n=[],a=!0,u=!1,c=r,f.prev=8,s=p(C,t)[Symbol.iterator]();case 10:if(a=(i=s.next()).done){f.next=18;break}if(o=i.value,!o.done){f.next=14;break}return f.abrupt("return");case 14:n.push(o.value);case 15:a=!0,f.next=10;break;case 18:f.next=24;break;case 20:f.prev=20,f.t15=f["catch"](8),u=!0,c=f.t15;case 24:f.prev=24,f.prev=25,!a&&s["return"]&&s["return"]();case 27:if(f.prev=27,!u){f.next=30;break}throw c;case 30:return f.finish(27);case 31:return f.finish(24);case 32:return f.next=34,n;case 34:f.next=3;break;case 36:case"end":return f.stop()}},ae,this,[[8,20,24,32],[25,,27,31]])});e.zip=y;var R=function(e){var t=!0,n=!1,a=r;try{for(var u,c=e[Symbol.iterator]();!(t=(u=c.next()).done);t=!0){var s=u.value;if(!s)return!1}}catch(i){n=!0,a=i}finally{try{!t&&c["return"]&&c["return"]()}finally{if(n)throw a}}return!0};e.all=R;var S=function(e){var t=!0,n=!1,a=r;try{for(var u,c=e[Symbol.iterator]();!(t=(u=c.next()).done);t=!0){var s=u.value;if(s)return!0}}catch(i){n=!0,a=i}finally{try{!t&&c["return"]&&c["return"]()}finally{if(n)throw a}}return!1};e.any=S;var Y=function(e,t){var n=O(t),a=C(n);if(a.done)return r;var u=a.value,c=!0,s=!1,i=r;try{for(var o,f=n[Symbol.iterator]();!(c=(o=f.next()).done);c=!0){var v=o.value;e(v,u)>0&&(u=v)}}catch(p){s=!0,i=p}finally{try{!c&&f["return"]&&f["return"]()}finally{if(s)throw i}}return u};e.max=Y;var A=function(e,t){var n=O(t),a=C(n);if(a.done)return r;var u=a.value,c=!0,s=!1,i=r;try{for(var o,f=n[Symbol.iterator]();!(c=(o=f.next()).done);c=!0){var v=o.value;e(v,u)<0&&(u=v)}}catch(p){s=!0,i=p}finally{try{!c&&f["return"]&&f["return"]()}finally{if(s)throw i}}return u};e.min=A;var T=function(e,t,n){var a=!0,u=!1,c=r;try{for(var s,i=t[Symbol.iterator]();!(a=(s=i.next()).done);a=!0){var o=s.value;n=e(n,o)}}catch(f){u=!0,c=f}finally{try{!a&&i["return"]&&i["return"]()}finally{if(u)throw c}}return n};e.reduce=T;var _=function(e,t){if(0>=t)return!0;var n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;if(i&&0===--t)return!0}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return!1};e.some=_;var j=function(e){var t=0,n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;t+=i}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t};e.sum=j;var z=regeneratorRuntime.mark(function ue(e,r){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=3,e;case 3:e+=r,t.next=0;break;case 6:case"end":return t.stop()}},ue,this)});e.count=z;var E=regeneratorRuntime.mark(function ce(e){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:t=[],n=!0,a=!1,u=r,o.prev=4,c=e[Symbol.iterator]();case 6:if(n=(s=c.next()).done){o.next=14;break}return i=s.value,o.next=10,i;case 10:t.push(i);case 11:n=!0,o.next=6;break;case 14:o.next=20;break;case 16:o.prev=16,o.t16=o["catch"](4),a=!0,u=o.t16;case 20:o.prev=20,o.prev=21,!n&&c["return"]&&c["return"]();case 23:if(o.prev=23,!a){o.next=26;break}throw u;case 26:return o.finish(23);case 27:return o.finish(20);case 28:if(0!==t.length){o.next=30;break}return o.abrupt("return");case 30:return o.delegateYield(t,"t17",32);case 32:o.next=30;break;case 34:case"end":return o.stop()}},ce,this,[[4,16,20,28],[21,,23,27]])});e.cycle=E;var I=regeneratorRuntime.mark(function se(e,r){var t,n;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:t=O(e);case 1:if(!(r-->0)){a.next=9;break}if(n=C(t),!n.done){a.next=5;break}return a.abrupt("return");case 5:return a.next=7,n.value;case 7:a.next=1;break;case 9:case"end":return a.stop()}},se,this)});e.head=I;var O=function(e){return e[Symbol.iterator]()};e.iter=O;var q=function(e){var t=[],n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;t.push(i)}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t};e.list=q;var B=regeneratorRuntime.mark(function ie(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:n=[],a=!0,u=!1,c=r,f.prev=4,s=e[Symbol.iterator]();case 6:if(a=(i=s.next()).done){f.next=14;break}return o=i.value,f.next=10,o;case 10:n.push(o);case 11:a=!0,f.next=6;break;case 14:f.next=20;break;case 16:f.prev=16,f.t18=f["catch"](4),u=!0,c=f.t18;case 20:f.prev=20,f.prev=21,!a&&s["return"]&&s["return"]();case 23:if(f.prev=23,!u){f.next=26;break}throw c;case 26:return f.finish(23);case 27:return f.finish(20);case 28:if(0!==n.length){f.next=30;break}return f.abrupt("return");case 30:if(!(--t>0)){f.next=34;break}return f.delegateYield(n,"t19",32);case 32:f.next=30;break;case 34:case"end":return f.stop()}},ie,this,[[4,16,20,28],[21,,23,27]])});e.ncycle=B;var C=function(e){return e.next()};e.next=C;var D=regeneratorRuntime.mark(function oe(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e[i];case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t20=o["catch"](3),a=!0,u=o.t20;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},oe,this,[[3,14,18,26],[19,,21,25]])});e.pick=D;var F=regeneratorRuntime.mark(function fe(e,r,t){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!(0>t)){n.next=9;break}case 1:if(!(e>r)){n.next=7;break}return n.next=4,e;case 4:e+=t,n.next=1;break;case 7:n.next=15;break;case 9:if(!(r>e)){n.next=15;break}return n.next=12,e;case 12:e+=t,n.next=9;break;case 15:case"end":return n.stop()}},fe,this)});e.range=F;var G=function(e,t){for(var n=O(e),a=[];t-->0;)a.push([]);var u=regeneratorRuntime.mark(function c(e){var t,u,s,i,o,f,v;return regeneratorRuntime.wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(0!==e.length){c.next=24;break}if(t=C(n),!t.done){c.next=5;break}return c.abrupt("return");case 5:for(u=!0,s=!1,i=r,c.prev=8,o=a[Symbol.iterator]();!(u=(f=o.next()).done);u=!0)v=f.value,v.push(t.value);c.next=16;break;case 12:c.prev=12,c.t21=c["catch"](8),s=!0,i=c.t21;case 16:c.prev=16,c.prev=17,!u&&o["return"]&&o["return"]();case 19:if(c.prev=19,!s){c.next=22;break}throw i;case 22:return c.finish(19);case 23:return c.finish(16);case 24:return c.next=26,e.shift();case 26:c.next=0;break;case 28:case"end":return c.stop()}},c,this,[[8,12,16,24],[17,,19,23]])});return q(p(u,a))};e.tee=G}("undefined"==typeof exports?(void 0).itertools={}:exports); +"use strict";var _slicedToArray=function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var t=[],n=!0,a=!1,u=void 0;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done)&&(t.push(c.value),!r||t.length!==r);n=!0);}catch(i){a=!0,u=i}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t}throw new TypeError("Invalid attempt to destructure non-iterable instance")};!function(e,r){var t=function(e){function r(r,n,a){var u=arguments;return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.delegateYield(e.apply(this,u),"t0",1);case 1:return r.abrupt("return",r.t0);case 2:case"end":return r.stop()}},t[0],this)}var t=[r].map(regeneratorRuntime.mark);return r.toString=function(){return e.toString()},r}(regeneratorRuntime.mark(function K(e,n,a){var u,c,s,i,o,f,v,p,x,b,h,k,l;return regeneratorRuntime.wrap(function(m){for(;;)switch(m.prev=m.next){case 0:if(n!==a){m.next=4;break}return m.next=3,[];case 3:return m.abrupt("return");case 4:u=e[n],c=!0,s=!1,i=r,m.prev=8,o=t(e,n+1,a)[Symbol.iterator]();case 10:if(c=(f=o.next()).done){m.next=43;break}v=f.value,p=!0,x=!1,b=r,m.prev=15,h=u[Symbol.iterator]();case 17:if(p=(k=h.next()).done){m.next=26;break}return l=k.value,v.push(l),m.next=22,v;case 22:v.pop(l);case 23:p=!0,m.next=17;break;case 26:m.next=32;break;case 28:m.prev=28,m.t1=m["catch"](15),x=!0,b=m.t1;case 32:m.prev=32,m.prev=33,!p&&h["return"]&&h["return"]();case 35:if(m.prev=35,!x){m.next=38;break}throw b;case 38:return m.finish(35);case 39:return m.finish(32);case 40:c=!0,m.next=10;break;case 43:m.next=49;break;case 45:m.prev=45,m.t2=m["catch"](8),s=!0,i=m.t2;case 49:m.prev=49,m.prev=50,!c&&o["return"]&&o["return"]();case 52:if(m.prev=52,!s){m.next=55;break}throw i;case 55:return m.finish(52);case 56:return m.finish(49);case 57:case"end":return m.stop()}},K,this,[[8,45,49,57],[15,28,32,40],[33,,35,39],[50,,52,56]])}));e._product=t;var n=regeneratorRuntime.mark(function L(e){var t,n,a,u,c,s;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:t=!0,n=!1,a=r,i.prev=3,u=e[Symbol.iterator]();case 5:if(t=(c=u.next()).done){i.next=11;break}return s=c.value,i.delegateYield(s,"t3",8);case 8:t=!0,i.next=5;break;case 11:i.next=17;break;case 13:i.prev=13,i.t4=i["catch"](3),n=!0,a=i.t4;case 17:i.prev=17,i.prev=18,!t&&u["return"]&&u["return"]();case 20:if(i.prev=20,!n){i.next=23;break}throw a;case 23:return i.finish(20);case 24:return i.finish(17);case 25:case"end":return i.stop()}},L,this,[[3,13,17,25],[18,,20,24]])});e.chain=n;var a=regeneratorRuntime.mark(function M(e,r){var t,n,a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(t=C(e),n=t.length,!(r>n)){s.next=4;break}return s.abrupt("return");case 4:return a=C(H(0,r,1)),s.next=7,C(G(t,a));case 7:u=r-1;case 9:if(!(0>u)){s.next=12;break}return s.abrupt("return");case 12:if(a[u]===u+n-r){s.next=16;break}for(c=++a[u],++u;r>u;++u)a[u]=++c;return s.abrupt("break",19);case 16:--u,s.next=9;break;case 19:return s.next=21,C(G(t,a));case 21:s.next=7;break;case 23:case"end":return s.stop()}},M,this)});e.combinations=a;var u=regeneratorRuntime.mark(function N(e,r){var t,n,a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(t=C(e),n=t.length,!(0===n&&r>0)){s.next=4;break}return s.abrupt("return");case 4:return a=C(x(0,r)),s.next=7,C(G(t,a));case 7:u=r-1;case 9:if(!(0>u)){s.next=12;break}return s.abrupt("return");case 12:if(a[u]===n-1){s.next=16;break}for(c=++a[u],++u;r>u;++u)a[u]=c;return s.abrupt("break",19);case 16:--u,s.next=9;break;case 19:return s.next=21,C(G(t,a));case 21:s.next=7;break;case 23:case"end":return s.stop()}},N,this)});e.combinationswithrepetition=u;var c=regeneratorRuntime.mark(function P(e,t){var n,a,u,c,s,i,o,f;return regeneratorRuntime.wrap(function(v){for(;;)switch(v.prev=v.next){case 0:n=!0,a=!1,u=r,v.prev=3,c=g([t,e])[Symbol.iterator]();case 5:if(n=(s=c.next()).done){v.next=15;break}if(i=_slicedToArray(s.value,2),o=i[0],f=i[1],!o){v.next=12;break}return v.next=12,f;case 12:n=!0,v.next=5;break;case 15:v.next=21;break;case 17:v.prev=17,v.t5=v["catch"](3),a=!0,u=v.t5;case 21:v.prev=21,v.prev=22,!n&&c["return"]&&c["return"]();case 24:if(v.prev=24,!a){v.next=27;break}throw u;case 27:return v.finish(24);case 28:return v.finish(21);case 29:case"end":return v.stop()}},P,this,[[3,17,21,29],[22,,24,28]])});e.compress=c;var s=regeneratorRuntime.mark(function Q(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:n=B(t),a=!0,u=!1,c=r,f.prev=4,s=n[Symbol.iterator]();case 6:if(a=(i=s.next()).done){f.next=17;break}if(o=i.value,!e(o)){f.next=10;break}return f.abrupt("continue",14);case 10:return f.next=12,o;case 12:return f.delegateYield(n,"t6",13);case 13:return f.abrupt("return");case 14:a=!0,f.next=6;break;case 17:f.next=23;break;case 19:f.prev=19,f.t7=f["catch"](4),u=!0,c=f.t7;case 23:f.prev=23,f.prev=24,!a&&s["return"]&&s["return"]();case 26:if(f.prev=26,!u){f.next=29;break}throw c;case 29:return f.finish(26);case 30:return f.finish(23);case 31:case"end":return f.stop()}},Q,this,[[4,19,23,31],[24,,26,30]])});e.dropwhile=s;var i=function(e){return g([E(0,1),e])};e.enumerate=i;var o=regeneratorRuntime.mark(function U(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=13;break}if(i=s.value,!e(i)){o.next=10;break}return o.next=10,i;case 10:n=!0,o.next=5;break;case 13:o.next=19;break;case 15:o.prev=15,o.t8=o["catch"](3),a=!0,u=o.t8;case 19:o.prev=19,o.prev=20,!n&&c["return"]&&c["return"]();case 22:if(o.prev=22,!a){o.next=25;break}throw u;case 25:return o.finish(22);case 26:return o.finish(19);case 27:case"end":return o.stop()}},U,this,[[3,15,19,27],[20,,22,26]])});e.filter=o,e.filtertrue=o;var f=regeneratorRuntime.mark(function V(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=13;break}if(i=s.value,e(i)){o.next=10;break}return o.next=10,i;case 10:n=!0,o.next=5;break;case 13:o.next=19;break;case 15:o.prev=15,o.t9=o["catch"](3),a=!0,u=o.t9;case 19:o.prev=19,o.prev=20,!n&&c["return"]&&c["return"]();case 22:if(o.prev=22,!a){o.next=25;break}throw u;case 25:return o.finish(22);case 26:return o.finish(19);case 27:case"end":return o.stop()}},V,this,[[3,15,19,27],[20,,22,26]])});e.filterfalse=f;var v=regeneratorRuntime.mark(function W(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(n=B(t),a=F(n),!a.done){f.next=4;break}return f.abrupt("return");case 4:u=a.value,c=e(u),s=r,i=r;case 7:s=c,i=[u];case 10:if(o=F(n),!o.done){f.next=14;break}return f.abrupt("break",26);case 14:if(u=o.value,c=e(u),c===s){f.next=20;break}return f.next=19,[s,i];case 19:return f.abrupt("continue",7);case 20:i.push(u),f.next=10;break;case 23:return f.abrupt("break",26);case 26:return f.next=28,[s,i];case 28:case"end":return f.stop()}},W,this)});e.group=v,e.groupby=v;var p=regeneratorRuntime.mark(function X(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e(i);case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t10=o["catch"](3),a=!0,u=o.t10;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},X,this,[[3,14,18,26],[19,,21,25]])});e.map=p;var x=regeneratorRuntime.mark(function Z(e,r){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!(r-->0)){t.next=5;break}return t.next=3,e;case 3:t.next=0;break;case 5:case"end":return t.stop()}},Z,this)});e.nrepeat=x;var b=regeneratorRuntime.mark(function $(e,r){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(t=C(e),n=t.length,!(r>n)){o.next=4;break}return o.abrupt("return");case 4:return a=C(H(0,n,1)),u=C(H(n,n-r,-1)),o.next=8,C(G(t,q(a,r)));case 8:if(0!==r&&0!==n){o.next=10;break}return o.abrupt("return");case 10:c=r;case 12:if(!c--){o.next=28;break}if(--u[c],0!==u[c]){o.next=19;break}a.push(a.splice(c,1)[0]),u[c]=n-c,o.next=26;break;case 19:return s=u[c],i=[a[n-s],a[c]],a[c]=i[0],a[n-s]=i[1],o.next=25,C(G(t,q(a,r)));case 25:return o.abrupt("break",28);case 26:o.next=12;break;case 28:if(-1!==c){o.next=30;break}return o.abrupt("return");case 30:o.next=10;break;case 32:case"end":return o.stop()}},$,this)});e.permutations=b;var h=regeneratorRuntime.mark(function ee(e,r){var n;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:return n=C(D(l(p(C,e)),r)),a.delegateYield(p(C,t(n,0,n.length)),"t11",2);case 2:case"end":return a.stop()}},ee,this)});e.product=h;var k=regeneratorRuntime.mark(function re(e){return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=3,e;case 3:r.next=0;break;case 5:case"end":return r.stop()}},re,this)});e.repeat=k;var l=regeneratorRuntime.mark(function te(e){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:for(t=[],n=!0,a=!1,u=r,o.prev=4,c=e[Symbol.iterator]();!(n=(s=c.next()).done);n=!0)i=s.value,t.push(i);o.next=12;break;case 8:o.prev=8,o.t12=o["catch"](4),a=!0,u=o.t12;case 12:o.prev=12,o.prev=13,!n&&c["return"]&&c["return"]();case 15:if(o.prev=15,!a){o.next=18;break}throw u;case 18:return o.finish(15);case 19:return o.finish(12);case 20:if(!t.length){o.next=25;break}return o.next=23,t.pop();case 23:o.next=20;break;case 25:case"end":return o.stop()}},te,this,[[4,8,12,20],[13,,15,19]])});e.reversed=l;var m=regeneratorRuntime.mark(function ne(e,r,t,n){var a,u,c;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:a=B(e);case 1:if(!(r>0)){s.next=8;break}if(!F(a).done){s.next=4;break}return s.abrupt("return");case 4:--r,--t,s.next=1;break;case 8:if(!(t>0)){s.next=24;break}if(u=F(a),!u.done){s.next=12;break}return s.abrupt("return");case 12:return s.next=14,u.value;case 14:--t,c=n;case 16:if(!(c>1)){s.next=22;break}if(!F(a).done){s.next=19;break}return s.abrupt("return");case 19:--c,s.next=16;break;case 22:s.next=8;break;case 24:case"end":return s.stop()}},ne,this)});e.slice=m;var d=function(e,r){return C(r).sort(e)};e.sorted=d;var w=regeneratorRuntime.mark(function ae(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e.apply(null,i);case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t13=o["catch"](3),a=!0,u=o.t13;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},ae,this,[[3,14,18,26],[19,,21,25]])});e.starmap=w;var y=regeneratorRuntime.mark(function ue(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=14;break}if(i=s.value,e(i)){o.next=9;break}return o.abrupt("return");case 9:return o.next=11,i;case 11:n=!0,o.next=5;break;case 14:o.next=20;break;case 16:o.prev=16,o.t14=o["catch"](3),a=!0,u=o.t14;case 20:o.prev=20,o.prev=21,!n&&c["return"]&&c["return"]();case 23:if(o.prev=23,!a){o.next=26;break}throw u;case 26:return o.finish(23);case 27:return o.finish(20);case 28:case"end":return o.stop()}},ue,this,[[3,16,20,28],[21,,23,27]])});e.takewhile=y;var g=regeneratorRuntime.mark(function ce(e){var t,n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(t=C(p(B,e)),0!==t.length){f.next=3;break}return f.abrupt("return");case 3:n=[],a=!0,u=!1,c=r,f.prev=8,s=p(F,t)[Symbol.iterator]();case 10:if(a=(i=s.next()).done){f.next=18;break}if(o=i.value,!o.done){f.next=14;break}return f.abrupt("return");case 14:n.push(o.value);case 15:a=!0,f.next=10;break;case 18:f.next=24;break;case 20:f.prev=20,f.t15=f["catch"](8),u=!0,c=f.t15;case 24:f.prev=24,f.prev=25,!a&&s["return"]&&s["return"]();case 27:if(f.prev=27,!u){f.next=30;break}throw c;case 30:return f.finish(27);case 31:return f.finish(24);case 32:return f.next=34,n;case 34:f.next=3;break;case 36:case"end":return f.stop()}},ce,this,[[8,20,24,32],[25,,27,31]])});e.zip=g;var R=function(e){var t=!0,n=!1,a=r;try{for(var u,c=e[Symbol.iterator]();!(t=(u=c.next()).done);t=!0){var s=u.value;if(!s)return!1}}catch(i){n=!0,a=i}finally{try{!t&&c["return"]&&c["return"]()}finally{if(n)throw a}}return!0};e.all=R;var S=function(e){var t=!0,n=!1,a=r;try{for(var u,c=e[Symbol.iterator]();!(t=(u=c.next()).done);t=!0){var s=u.value;if(s)return!0}}catch(i){n=!0,a=i}finally{try{!t&&c["return"]&&c["return"]()}finally{if(n)throw a}}return!1};e.any=S;var Y=function(e,t){var n=B(t),a=F(n);if(a.done)return r;var u=a.value,c=!0,s=!1,i=r;try{for(var o,f=n[Symbol.iterator]();!(c=(o=f.next()).done);c=!0){var v=o.value;e(v,u)>0&&(u=v)}}catch(p){s=!0,i=p}finally{try{!c&&f["return"]&&f["return"]()}finally{if(s)throw i}}return u};e.max=Y;var A=function(e,t){var n=B(t),a=F(n);if(a.done)return r;var u=a.value,c=!0,s=!1,i=r;try{for(var o,f=n[Symbol.iterator]();!(c=(o=f.next()).done);c=!0){var v=o.value;e(v,u)<0&&(u=v)}}catch(p){s=!0,i=p}finally{try{!c&&f["return"]&&f["return"]()}finally{if(s)throw i}}return u};e.min=A;var T=function(e,t,n){var a=!0,u=!1,c=r;try{for(var s,i=t[Symbol.iterator]();!(a=(s=i.next()).done);a=!0){var o=s.value;n=e(n,o)}}catch(f){u=!0,c=f}finally{try{!a&&i["return"]&&i["return"]()}finally{if(u)throw c}}return n};e.reduce=T;var _=function(e,t){if(0>=t)return!0;var n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;if(i&&0===--t)return!0}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return!1};e.some=_;var j=function(e){var t=0,n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;t+=i}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t};e.sum=j;var z=function(e,r){for(;r-->0&&!F(e).done;);};e.consume=z;var E=regeneratorRuntime.mark(function se(e,r){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=3,e;case 3:e+=r,t.next=0;break;case 6:case"end":return t.stop()}},se,this)});e.count=E;var I=regeneratorRuntime.mark(function ie(e){var t,n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:t=[],n=!0,a=!1,u=r,o.prev=4,c=e[Symbol.iterator]();case 6:if(n=(s=c.next()).done){o.next=14;break}return i=s.value,o.next=10,i;case 10:t.push(i);case 11:n=!0,o.next=6;break;case 14:o.next=20;break;case 16:o.prev=16,o.t16=o["catch"](4),a=!0,u=o.t16;case 20:o.prev=20,o.prev=21,!n&&c["return"]&&c["return"]();case 23:if(o.prev=23,!a){o.next=26;break}throw u;case 26:return o.finish(23);case 27:return o.finish(20);case 28:if(0!==t.length){o.next=30;break}return o.abrupt("return");case 30:return o.delegateYield(t,"t17",32);case 32:o.next=30;break;case 34:case"end":return o.stop()}},ie,this,[[4,16,20,28],[21,,23,27]])});e.cycle=I;var O=function(e){var t=!0,n=!1,a=r;try{for(var u,c=e[Symbol.iterator]();!(t=(u=c.next()).done);t=!0){u.value}}catch(s){n=!0,a=s}finally{try{!t&&c["return"]&&c["return"]()}finally{if(n)throw a}}};e.exhaust=O;var q=regeneratorRuntime.mark(function oe(e,r){var t,n;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:t=B(e);case 1:if(!(r-->0)){a.next=9;break}if(n=F(t),!n.done){a.next=5;break}return a.abrupt("return");case 5:return a.next=7,n.value;case 7:a.next=1;break;case 9:case"end":return a.stop()}},oe,this)});e.head=q;var B=function(e){return e[Symbol.iterator]()};e.iter=B;var C=function(e){var t=[],n=!0,a=!1,u=r;try{for(var c,s=e[Symbol.iterator]();!(n=(c=s.next()).done);n=!0){var i=c.value;t.push(i)}}catch(o){a=!0,u=o}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw u}}return t};e.list=C;var D=regeneratorRuntime.mark(function fe(e,t){var n,a,u,c,s,i,o;return regeneratorRuntime.wrap(function(f){for(;;)switch(f.prev=f.next){case 0:n=[],a=!0,u=!1,c=r,f.prev=4,s=e[Symbol.iterator]();case 6:if(a=(i=s.next()).done){f.next=14;break}return o=i.value,f.next=10,o;case 10:n.push(o);case 11:a=!0,f.next=6;break;case 14:f.next=20;break;case 16:f.prev=16,f.t18=f["catch"](4),u=!0,c=f.t18;case 20:f.prev=20,f.prev=21,!a&&s["return"]&&s["return"]();case 23:if(f.prev=23,!u){f.next=26;break}throw c;case 26:return f.finish(23);case 27:return f.finish(20);case 28:if(0!==n.length){f.next=30;break}return f.abrupt("return");case 30:if(!(--t>0)){f.next=34;break}return f.delegateYield(n,"t19",32);case 32:f.next=30;break;case 34:case"end":return f.stop()}},fe,this,[[4,16,20,28],[21,,23,27]])});e.ncycle=D;var F=function(e){return e.next()};e.next=F;var G=regeneratorRuntime.mark(function ve(e,t){var n,a,u,c,s,i;return regeneratorRuntime.wrap(function(o){for(;;)switch(o.prev=o.next){case 0:n=!0,a=!1,u=r,o.prev=3,c=t[Symbol.iterator]();case 5:if(n=(s=c.next()).done){o.next=12;break}return i=s.value,o.next=9,e[i];case 9:n=!0,o.next=5;break;case 12:o.next=18;break;case 14:o.prev=14,o.t20=o["catch"](3),a=!0,u=o.t20;case 18:o.prev=18,o.prev=19,!n&&c["return"]&&c["return"]();case 21:if(o.prev=21,!a){o.next=24;break}throw u;case 24:return o.finish(21);case 25:return o.finish(18);case 26:case"end":return o.stop()}},ve,this,[[3,14,18,26],[19,,21,25]])});e.pick=G;var H=regeneratorRuntime.mark(function pe(e,r,t){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!(0>t)){n.next=9;break}case 1:if(!(e>r)){n.next=7;break}return n.next=4,e;case 4:e+=t,n.next=1;break;case 7:n.next=15;break;case 9:if(!(r>e)){n.next=15;break}return n.next=12,e;case 12:e+=t,n.next=9;break;case 15:case"end":return n.stop()}},pe,this)});e.range=H;var J=function(e,t){for(var n=B(e),a=[];t-->0;)a.push([]);var u=regeneratorRuntime.mark(function c(e){var t,u,s,i,o,f,v;return regeneratorRuntime.wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(0!==e.length){c.next=24;break}if(t=F(n),!t.done){c.next=5;break}return c.abrupt("return");case 5:for(u=!0,s=!1,i=r,c.prev=8,o=a[Symbol.iterator]();!(u=(f=o.next()).done);u=!0)v=f.value,v.push(t.value);c.next=16;break;case 12:c.prev=12,c.t21=c["catch"](8),s=!0,i=c.t21;case 16:c.prev=16,c.prev=17,!u&&o["return"]&&o["return"]();case 19:if(c.prev=19,!s){c.next=22;break}throw i;case 22:return c.finish(19);case 23:return c.finish(16);case 24:return c.next=26,e.shift();case 26:c.next=0;break;case 28:case"end":return c.stop()}},c,this,[[8,12,16,24],[17,,19,23]])});return C(p(u,a))};e.tee=J}("undefined"==typeof exports?(void 0).itertools={}:exports); //# sourceMappingURL=js/dist/itertools.js.map \ No newline at end of file diff --git a/js/src/utils/consume.js b/js/src/utils/consume.js new file mode 100644 index 0000000..13e0694 --- /dev/null +++ b/js/src/utils/consume.js @@ -0,0 +1,8 @@ + +let consume = function ( iterator , n ) { + + while ( n --> 0 && !next( iterator ).done ) ; + +} ; + +exports.consume = consume ; diff --git a/js/src/utils/exhaust.js b/js/src/utils/exhaust.js new file mode 100644 index 0000000..e36dc13 --- /dev/null +++ b/js/src/utils/exhaust.js @@ -0,0 +1,8 @@ + +let exhaust = function ( iterator ) { + + for ( let item of iterator ) ; + +} ; + +exports.exhaust = exhaust ; diff --git a/test/js/src/utils/consume.js b/test/js/src/utils/consume.js new file mode 100644 index 0000000..40d795d --- /dev/null +++ b/test/js/src/utils/consume.js @@ -0,0 +1,12 @@ + +test( "consume" , function ( ) { + + var iterator = itertools.range( 0 , 100 , 1 ) ; + + itertools.consume( iterator , 37 ) ; + + var output = itertools.list( iterator ) ; + + deepEqual( output , itertools.list( itertools.range( 37 , 100 , 1 ) ) ) ; + +} ) ; diff --git a/test/js/src/utils/exhaust.js b/test/js/src/utils/exhaust.js new file mode 100644 index 0000000..7917eb3 --- /dev/null +++ b/test/js/src/utils/exhaust.js @@ -0,0 +1,12 @@ + +test( "exhaust" , function ( ) { + + var iterator = itertools.range( 0 , 100 , 1 ) ; + + itertools.exhaust( itertools.head( iterator , 37 ) ) ; + + var output = itertools.list( iterator ) ; + + deepEqual( output , itertools.list( itertools.range( 37 , 100 , 1 ) ) ) ; + +} ) ;