!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):n.taylorwin=t()}(this,function(){"use strict";function n(n){var t=1,r=!0,e=!1,u=void 0;try{for(var o,i=n[Symbol.iterator]();!(r=(o=i.next()).done);r=!0){var f=o.value;t*=f}}catch(a){e=!0,u=a}finally{try{!r&&i["return"]&&i["return"]()}finally{if(e)throw u}}return t}function t(n){var t=0,r=!0,e=!1,u=void 0;try{for(var o,i=n[Symbol.iterator]();!(r=(o=i.next()).done);r=!0){var f=o.value;t+=f}}catch(a){e=!0,u=a}finally{try{!r&&i["return"]&&i["return"]()}finally{if(e)throw u}}return t}function r(n,t){return Array.from(Array(n),function(n,r){return t(r)})}function e(n){return r(n,function(n){return n+1})}function u(n,t){return r(n,function(n){return t(n+1)})}function o(o,i,f){var a=Math.pow(10,Math.abs(f)/20),c=Math.log(a+Math.sqrt(a*a-1))/Math.PI,l=i*i/(c*c+(i-.5)*(i-.5)),y=function(t){return.5*Math.pow(-1,t+1)*n(u(i-1,function(n){return 1-t*t/l/(c*c+(n-.5)*(n-.5))}))},h=function(t){return n(e(i-1).filter(function(n){return n!=t}).map(function(n){return 1-t*t/(n*n)}))},d=u(i-1,function(n){return y(n)/h(n)});return r(o,function(n){return 1+2*t(d.map(function(t,r){return t*Math.cos(2*Math.PI*(r+1)/o*(n-.5*o+.5))}))})}return o});