(window.__LOADABLE_LOADED_CHUNKS__=window.__LOADABLE_LOADED_CHUNKS__||[]).push([[34],{
/***/"96CT":
/***/function(e,t,n){var i=n("nfZ1");i.prototype.postfixEval=function(e){"use strict";(e=e||{}).PI=Math.PI,e.E=Math.E;for(var t,n,a,r=[],o=this.value,s="undefined"!==typeof e.n,u=0;u<o.length;u++)1===o[u].type?r.push({value:o[u].value,type:1}):3===o[u].type?r.push({value:e[o[u].value],type:1}):0===o[u].type||7===o[u].type?"undefined"===typeof r[r.length-1].type?r[r.length-1].value.push(o[u]):r[r.length-1].value=o[u].value(r[r.length-1].value):8===o[u].type?(t=r.pop(),n=r.pop(),r.push({type:1,value:o[u].value(n.value,t.value)})):10===o[u].type?(t=r.pop(),"undefined"===typeof(n=r.pop()).type?(n.value=n.concat(t),n.value.push(o[u]),r.push(n)):"undefined"===typeof t.type?(t.unshift(n),t.push(o[u]),r.push(t)):r.push({type:1,value:o[u].value(n.value,t.value)})):2===o[u].type||9===o[u].type?(t=r.pop(),"undefined"===typeof(n=r.pop()).type?((n=n.concat(t)).push(o[u]),r.push(n)):"undefined"===typeof t.type?(t.unshift(n),t.push(o[u]),r.push(t)):r.push({type:1,value:o[u].value(n.value,t.value)})):12===o[u].type?("undefined"!==typeof(t=r.pop()).type&&(t=[t]),n=r.pop(),a=r.pop(),r.push({type:1,value:o[u].value(a.value,n.value,new i(t))})):13===o[u].type&&(s?r.push({value:e[o[u].value],type:3}):r.push([o[u]]));if(r.length>1)throw new i.Exception("Uncaught Syntax error");return r[0].value>1e15?"Infinity":parseFloat(r[0].value.toFixed(15))},i.eval=function(e,t,n){return"undefined"===typeof t?this.lex(e).toPostfix().postfixEval():"undefined"===typeof n?"undefined"!==typeof t.length?this.lex(e,t).toPostfix().postfixEval():this.lex(e).toPostfix().postfixEval(t):this.lex(e,t).toPostfix().postfixEval(n)},e.exports=i},
/***/"9pXD":
/***/function(e,t,n){"use strict";
// ESM COMPAT FLAG
n.r(t);
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/react/jsx-runtime.js
var i=n("jg1C"),a=n("ERkP"),r=n.n(a),o=n("qfda"),s=n("0fDw"),u=n("/AGv"),c=n("O94r"),l=n.n(c),f=n("aWzz"),h=n.n(f);
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/react/index.js
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/group/esm/Group.js
function p(){return(p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function d(e){var t=e.top,n=void 0===t?0:t,i=e.left,a=void 0===i?0:i,o=e.transform,s=e.className,u=e.children,c=e.innerRef,f=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["top","left","transform","className","children","innerRef"]);
return r.a.createElement("g",p({ref:c,className:l()("visx-group",s),transform:o||"translate("+a+", "+n+")"},f),u)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/shape/esm/shapes/Line.js
function v(){return(v=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function y(e){var t=e.from,n=void 0===t?{x:0,y:0}:t,i=e.to,a=void 0===i?{x:1,y:1}:i,o=e.fill,s=void 0===o?"transparent":o,u=e.className,c=e.innerRef,f=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["from","to","fill","className","innerRef"]),h=n.x===a.x||n.y===a.y;
return r.a.createElement("line",v({ref:c,className:l()("visx-line",u),x1:n.x,y1:n.y,x2:a.x,y2:a.y,fill:s,shapeRendering:h?"crispEdges":"auto"},f))}
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/reduce-css-calc/index.js
d.propTypes={top:h.a.number,left:h.a.number,transform:h.a.string,className:h.a.string,children:h.a.node,innerRef:h.a.oneOfType([h.a.string,h.a.func,h.a.object])};var m=n("leIH"),g=n.n(m),x=n("pFSi"),b="__react_svg_text_measurement_id";
/* harmony default export */var w=n.n(x)()((function(e,t){try{
// Calculate length of each word to be used to determine number of words per line
var n=document.getElementById(b);if(!n){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.width="0",i.style.height="0",i.style.position="absolute",i.style.top="-100%",i.style.left="-100%",(n=document.createElementNS("http://www.w3.org/2000/svg","text")).setAttribute("id",b),i.appendChild(n),document.body.appendChild(i)}return Object.assign(n.style,t),n.textContent=e,n.getComputedTextLength()}catch(a){return null}}),(function(e,t){return e+"_"+JSON.stringify(t)}));
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/text/esm/hooks/useText.js
function O(e){return"number"===typeof e}function j(e){// number that is not NaN or Infinity
return"number"===typeof e&&Number.isFinite(e)||// for percentage
"string"===typeof e}function k(e){var t=e.verticalAnchor,n=void 0===t?"end":t,i=e.scaleToFit,r=void 0!==i&&i,o=e.angle,s=e.width,u=e.lineHeight,c=void 0===u?"1em":u,l=e.capHeight,f=void 0===l?"0.71em":l,h=e.children,p=e.style,d=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["verticalAnchor","scaleToFit","angle","width","lineHeight","capHeight","children","style"]),v=d.x,y=void 0===v?0:v,m=d.y,x=void 0===m?0:m,b=!j(y)||!j(x),k=Object(a.useMemo)((function(){return{wordsWithWidth:(null==h?[]:h.toString().split(/(?:(?!\u00A0+)\s+)/)).map((function(e){return{word:e,wordWidth:w(e,p)||0}})),spaceWidth:w("\xa0",p)||0}}),[h,p]),M=k.wordsWithWidth,N=k.spaceWidth,P=Object(a.useMemo)((function(){return b?[]:// Only perform calculations if using features that require them (multiline, scaleToFit)
s||r?M.reduce((function(e,t){var n=t.word,i=t.wordWidth,a=e[e.length-1];if(a&&(null==s||r||(a.width||0)+i+N<s))
// Word can be added to an existing line
a.words.push(n),a.width=a.width||0,a.width+=i+N;else{
// Add first word to line or word is too long to scaleToFit on existing line
var o={words:[n],width:i};e.push(o)}return e}),[]):[{words:null==h?[]:h.toString().split(/(?:(?!\u00A0+)\s+)/)}]}),[b,s,r,h,M,N]),E=Object(a.useMemo)((function(){return b?"":"start"===n?g()("calc("+f+")"):"middle"===n?g()("calc("+(P.length-1)/2+" * -"+c+" + ("+f+" / 2))"):g()("calc("+(P.length-1)+" * -"+c+")")}),[b,n,f,P.length,c]),C=Object(a.useMemo)((function(){var e=[];if(b)return"";if(O(y)&&O(x)&&O(s)&&r&&P.length>0){var t=P[0].width||1,n=s/t,i=n,a=y-n*y,u=x-i*x;e.push("matrix("+n+", 0, 0, "+i+", "+a+", "+u+")")}return o&&e.push("rotate("+o+", "+y+", "+x+")"),e.length>0?e.join(" "):""}),[b,y,x,s,r,P,o]);return{wordsByLines:P,startDy:E,transform:C}}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/text/esm/Text.js
function M(){return(M=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var N={overflow:"visible"};function P(e){var t=e.dx,n=void 0===t?0:t,i=e.dy,a=void 0===i?0:i,o=e.textAnchor,s=void 0===o?"start":o,u=e.innerRef,c=e.innerTextRef,l=(e.verticalAnchor,e.angle,e.lineHeight),f=void 0===l?"1em":l,h=(e.scaleToFit,e.capHeight,e.width,function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["dx","dy","textAnchor","innerRef","innerTextRef","verticalAnchor","angle","lineHeight","scaleToFit","capHeight","width"])),p=h.x,d=void 0===p?0:p,v=h.fontSize,y=k(e),m=y.wordsByLines,g=y.startDy,x=y.transform;
return r.a.createElement("svg",{ref:u,x:n,y:a,fontSize:v,style:N},m.length>0?r.a.createElement("text",M({ref:c,transform:x},h,{textAnchor:s}),m.map((function(e,t){
return r.a.createElement("tspan",{key:t,x:d,dy:0===t?g:f},e.words.join(" "))}))):null)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/constants/orientation.js
var E={top:"top",left:"left",right:"right",bottom:"bottom"};
/* harmony default export */
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/axis/Ticks.js
function C(){return(C=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function L(e){var t=e.hideTicks,n=e.horizontal,i=e.orientation,a=e.tickClassName,o=e.tickComponent,s=e.tickLabelProps,u=e.tickStroke,c=void 0===u?"#222":u,f=e.tickTransform;return e.ticks.map((function(e){var u,h=e.value,p=e.index,v=e.from,m=e.to,g=e.formattedValue,x=null!=(u=s[p])?u:{},b=Math.max(10,"number"===typeof x.fontSize&&x.fontSize||0),w=m.y+(n&&i!==E.top?b:0);
return r.a.createElement(d,{key:"visx-tick-"+h+"-"+p,className:l()("visx-axis-tick",a),transform:f},!t&&r.a.createElement(y,{from:v,to:m,stroke:c,strokeLinecap:"square"}),o?o(C({},x,{x:m.x,y:w,formattedValue:g})):r.a.createElement(P,C({x:m.x,y:w},x),g))}))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/axis/AxisRenderer.js
function S(){return(S=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var I={textAnchor:"middle",fontFamily:"Arial",fontSize:10,fill:"#222"};function A(e){var t=e.axisFromPoint,n=e.axisLineClassName,i=e.axisToPoint,a=e.hideAxisLine,o=e.hideTicks,s=e.horizontal,u=e.label,c=void 0===u?"":u,f=e.labelClassName,h=e.labelOffset,p=void 0===h?14:h,d=e.labelProps,v=void 0===d?I:d,m=e.orientation,g=void 0===m?E.bottom:m,x=e.scale,b=e.stroke,w=void 0===b?"#222":b,O=e.strokeDasharray,j=e.strokeWidth,k=void 0===j?1:j,M=e.tickClassName,N=e.tickComponent,C=e.tickLabelProps,A=void 0===C?function(){
/** tickValue, index, tickValues */
return I}:C,_=e.tickLength,D=void 0===_?8:_,T=e.tickStroke,F=void 0===T?"#222":T,R=e.tickTransform,z=e.ticks,$=e.ticksComponent,X=void 0===$?L:$,Y=z.map((function(e){var t=e.value,n=e.index;return A(t,n,z)})),H=Math.max.apply(Math,[10].concat(Y.map((function(e){return"number"===typeof e.fontSize?e.fontSize:0}))));// compute the max tick label size to compute label offset
return r.a.createElement(r.a.Fragment,null,X({hideTicks:o,horizontal:s,orientation:g,scale:x,tickClassName:M,tickComponent:N,tickLabelProps:Y,tickStroke:F,tickTransform:R,ticks:z}),!a&&r.a.createElement(y,{className:l()("visx-axis-line",n),from:t,to:i,stroke:w,strokeWidth:k,strokeDasharray:O}),c&&r.a.createElement(P,S({className:l()("visx-axis-label",f)},
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/utils/getLabelTransform.js
function(e){var t,n,i,a=e.labelOffset,r=e.labelProps,o=e.orientation,s=e.range,u=e.tickLabelFontSize,c=e.tickLength,l=o===E.left||o===E.top?-1:1;if(o===E.top||o===E.bottom){var f=o===E.bottom&&"number"===typeof r.fontSize?r.fontSize:0;t=(Number(s[0])+Number(s[s.length-1]))/2,n=l*(c+a+u+f)}else t=l*((Number(s[0])+Number(s[s.length-1]))/2),n=-(c+a),i="rotate("+90*l+")";return{x:t,y:n,transform:i}}({labelOffset:p,labelProps:v,orientation:g,range:x.range(),tickLabelFontSize:H,tickLength:D}),v),c))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/utils/getTickPosition.js
/**
 * Create a function that returns a tick position for the given tick value
 */
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/utils/toString.js
function _(e){return null==e?void 0:e.toString()}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/utils/getTickFormatter.js
/**
 * Returns a tick position for the given tick value
 */
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/point/esm/Point.js
function D(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var T=function(){function e(e){var t=e.x,n=void 0===t?0:t,i=e.y,a=void 0===i?0:i;D(this,"x",0),D(this,"y",0),this.x=n,this.y=a}var t=e.prototype;return t.value=function(){return{x:this.x,y:this.y}},t.toArray=function(){return[this.x,this.y]},e}();
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/utils/createPoint.js
function F(e,t){var n=e.x,i=e.y;return new T(t?{x:n,y:i}:{x:i,y:n})}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/axis/Axis.js
function R(){return(R=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function z(e){var t=e.children,n=void 0===t?A:t,i=e.axisClassName,a=e.hideAxisLine,o=void 0!==a&&a,s=e.hideTicks,u=void 0!==s&&s,c=e.hideZero,f=void 0!==c&&c,h=e.left,p=void 0===h?0:h,v=e.numTicks,y=void 0===v?10:v,m=e.orientation,g=void 0===m?E.bottom:m,x=e.rangePadding,b=void 0===x?0:x,w=e.scale,O=e.tickFormat,j=e.tickLength,k=void 0===j?8:j,M=e.tickValues,N=e.top,P=void 0===N?0:N,C=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["children","axisClassName","hideAxisLine","hideTicks","hideZero","left","numTicks","orientation","rangePadding","scale","tickFormat","tickLength","tickValues","top"]),L=null!=O?O:function(e){// For point or band scales,
// have to add offset to make the tick centered.
return"tickFormat"in e?e.tickFormat():_}(w),S=g===E.left,I=g===E.top,D=I||g===E.bottom,T=function(e,t){void 0===t&&(t="center");// Broaden type before using 'xxx' in s as typeguard.
var n=e;// For point or band scales,
// have to add offset to make the tick at center or end.
if("start"!==t&&"bandwidth"in n){var i=n.bandwidth();return"center"===t&&(i/=2),n.round()&&(i=Math.round(i)),function(e){var t=n(e);return"number"===typeof t?t+i:t}}return e}(w),z=S||I?-1:1,$=w.range(),X=F({x:Number($[0])+.5-b,y:0},D),Y=F({x:Number($[$.length-1])+.5+b,y:0},D),H=(null!=M?M:
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/utils/getTicks.js
function(e,t){
// Because `Scale` is generic type which maybe a subset of AnyD3Scale
// that may not have `ticks` field,
// TypeScript will not let us do the `'ticks' in scale` check directly.
// Have to manually cast and expand type first.
var n=e;return"ticks"in n?n.ticks(t):n.domain().filter((function(e,n,i){return null==t||i.length<=t||n%Math.round((i.length-1)/t)===0}))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/utils/coerceNumber.js
(w,y)).filter((function(e){return!f||0!==e&&"0"!==e})).map((function(e,t){return{value:e,index:t}})),V=H.map((function(e){var t=e.value,n=e.index,i=function(e){if(("function"===typeof e||"object"===typeof e&&e)&&"valueOf"in e){var t=e.valueOf();if("number"===typeof t)return t}return e}(T(t));return{value:t,index:n,from:F({x:i,y:0},D),to:F({x:i,y:k*z},D),formattedValue:L(t,n,H)}}));
return r.a.createElement(d,{className:l()("visx-axis",i),top:P,left:p},n(R({},C,{axisFromPoint:X,axisToPoint:Y,hideAxisLine:o,hideTicks:u,hideZero:f,horizontal:D,numTicks:y,orientation:g,rangePadding:b,scale:w,tickFormat:L,tickLength:k,tickPosition:T,tickSign:z,ticks:V})))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/axis/AxisLeft.js
function $(){return($=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var X=function(){
/** tickValue, index */
return{dx:"-0.25em",dy:"0.25em",fill:"#222",fontFamily:"Arial",fontSize:10,textAnchor:"end"}};function Y(e){var t=e.axisClassName,n=e.labelOffset,i=void 0===n?36:n,a=e.tickLabelProps,o=void 0===a?X:a,s=e.tickLength,u=void 0===s?8:s,c=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["axisClassName","labelOffset","tickLabelProps","tickLength"]);
return r.a.createElement(z,$({axisClassName:l()("visx-axis-left",t),labelOffset:i,orientation:E.left,tickLabelProps:o,tickLength:u},c))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/axis/esm/axis/AxisBottom.js
function H(){return(H=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var V=function(){
/** tickValue, index */
return{dy:"0.25em",fill:"#222",fontFamily:"Arial",fontSize:10,textAnchor:"middle"}};function W(e){var t=e.axisClassName,n=e.labelOffset,i=void 0===n?8:n,a=e.tickLabelProps,o=void 0===a?V:a,s=e.tickLength,u=void 0===s?8:s,c=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["axisClassName","labelOffset","tickLabelProps","tickLength"]);
return r.a.createElement(z,H({axisClassName:l()("visx-axis-bottom",t),labelOffset:i,orientation:E.bottom,tickLabelProps:o,tickLength:u},c))}
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/arc.js
n("mBAT"),n("KdQ8");
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/area.js
var q=n("+pY8");n("lg8u"),n("FVKn"),n("uvDt");
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/shape/esm/util/setNumberOrNumberAccessor.js
/**
 * This is a workaround for TypeScript not inferring the correct
 * method overload/signature for some d3 shape methods.
 */
function K(e,t){e(t)}
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/order/ascending.js
var B=n("Zx3a"),U=n("c6zU"),Z=n("yU24"),G=n("V+6I"),Q=n("NKRu"),J={ascending:B.a,descending:U.a,insideout:Z.a,none:G.a,reverse:Q.a};
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/order/descending.js
Object.keys(J);
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/offset/expand.js
var ee=n("+Y26"),te=n("M3gT"),ne=n("Ddjo"),ie=n("Xyxy"),ae=n("Q4nK"),re={expand:ee.a,diverging:te.a,none:ne.a,silhouette:ie.a,wiggle:ae.a};
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/offset/diverging.js
Object.keys(re);
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/shape/esm/shapes/LinePath.js
function oe(){return(oe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}function se(e){var t=e.children,n=e.data,i=void 0===n?[]:n,a=e.x,o=e.y,s=e.fill,u=void 0===s?"transparent":s,c=e.className,f=e.curve,h=e.innerRef,p=e.defined,d=void 0===p?function(){return!0}:p,v=function(e,t){if(null==e)return{};var n,i,a={},r=Object.keys(e);for(i=0;i<r.length;i++)n=r[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["children","data","x","y","fill","className","curve","innerRef","defined"]),y=function(e){var t=void 0===e?{}:e,n=t.x,i=t.y,a=t.defined,r=t.curve,o=Object(q.a)();return n&&K(o.x,n),i&&K(o.y,i),a&&o.defined(a),r&&o.curve(r),o}({x:a,y:o,defined:d,curve:f});// eslint-disable-next-line react/jsx-no-useless-fragment
return t?r.a.createElement(r.a.Fragment,null,t({path:y})):r.a.createElement("path",oe({ref:h,className:l()("visx-linepath",c),d:y(i)||"",fill:u,strokeLinecap:"round"},v))}
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-shape/src/curve/monotone.js
var ue=n("EbDF"),ce=n("CatE"),le={main:"sine__main",hypotenuse:"sine__hypotenuse",opposite:"sine__opposite",adjacent:"sine__adjacent","joining-line":"sine__joining-line","axis-line":"sine__axis-line",sine:"sine__sine",ray:"sine__ray","unit-circle":"sine__unit-circle",axis:"sine__axis","unit-cirle":"sine__unit-cirle"},fe=n("dNc3"),he=n("ZRAw");
// EXTERNAL MODULE: ../use-mathjax/dist/use-mathjax.esm.js
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-color/src/define.js
var pe=n("AonO"),de=n("PvqL"),ve=Math.PI/180,ye=180/Math.PI,me=.96422,ge=.82521,xe=4/29,be=6/29,we=3*be*be;
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-color/src/color.js
function Oe(e){if(e instanceof ke)return new ke(e.l,e.a,e.b,e.opacity);if(e instanceof Se)return Ie(e);e instanceof de.b||(e=Object(de.h)(e));var t,n,i=Ee(e.r),a=Ee(e.g),r=Ee(e.b),o=Me((.2225045*i+.7168786*a+.0606169*r)/1);return i===a&&a===r?t=n=o:(t=Me((.4360747*i+.3850649*a+.1430804*r)/me),n=Me((.0139322*i+.0971045*a+.7141733*r)/ge)),new ke(116*o-16,500*(t-o),200*(o-n),e.opacity)}function je(e,t,n,i){return 1===arguments.length?Oe(e):new ke(e,t,n,null==i?1:i)}function ke(e,t,n,i){this.l=+e,this.a=+t,this.b=+n,this.opacity=+i}function Me(e){return e>.008856451679035631?Math.pow(e,1/3):e/we+xe}function Ne(e){return e>be?e*e*e:we*(e-xe)}function Pe(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Ee(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Ce(e){if(e instanceof Se)return new Se(e.h,e.c,e.l,e.opacity);if(e instanceof ke||(e=Oe(e)),0===e.a&&0===e.b)return new Se(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*ye;return new Se(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function Le(e,t,n,i){return 1===arguments.length?Ce(e):new Se(e,t,n,null==i?1:i)}function Se(e,t,n,i){this.h=+e,this.c=+t,this.l=+n,this.opacity=+i}function Ie(e){if(isNaN(e.h))return new ke(e.l,0,0,e.opacity);var t=e.h*ve;return new ke(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}Object(pe.a)(ke,je,Object(pe.b)(de.a,{brighter:function(e){return new ke(this.l+18*(null==e?1:e),this.a,this.b,this.opacity)},darker:function(e){return new ke(this.l-18*(null==e?1:e),this.a,this.b,this.opacity)},rgb:function(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return t=me*Ne(t),e=1*Ne(e),n=ge*Ne(n),new de.b(Pe(3.1338561*t-1.6168667*e-.4906146*n),Pe(-.9787684*t+1.9161415*e+.033454*n),Pe(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}})),Object(pe.a)(Se,Le,Object(pe.b)(de.a,{brighter:function(e){return new Se(this.h,this.c,this.l+18*(null==e?1:e),this.opacity)},darker:function(e){return new Se(this.h,this.c,this.l-18*(null==e?1:e),this.opacity)},rgb:function(){return Ie(this).rgb()}}));
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/color.js
var Ae=n("Lgd7");
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/lab.js
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/hcl.js
function _e(e){return function(t,n){var i=e((t=Le(t)).h,(n=Le(n)).h),a=Object(Ae.a)(t.c,n.c),r=Object(Ae.a)(t.l,n.l),o=Object(Ae.a)(t.opacity,n.opacity);return function(e){return t.h=i(e),t.c=a(e),t.l=r(e),t.opacity=o(e),t+""}}}
/* harmony default export */var De=_e(Ae.c),Te=_e(Ae.a);
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/hsl.js
function Fe(e){return function(t,n){var i=e((t=Object(de.f)(t)).h,(n=Object(de.f)(n)).h),a=Object(Ae.a)(t.s,n.s),r=Object(Ae.a)(t.l,n.l),o=Object(Ae.a)(t.opacity,n.opacity);return function(e){return t.h=i(e),t.s=a(e),t.l=r(e),t.opacity=o(e),t+""}}}
/* harmony default export */var Re=Fe(Ae.c),ze=Fe(Ae.a),$e=-.14861,Xe=1.78277,Ye=-.29227,He=-.90649,Ve=1.97294,We=Ve*He,qe=Ve*Xe,Ke=Xe*Ye-He*$e;function Be(e){if(e instanceof Ze)return new Ze(e.h,e.s,e.l,e.opacity);e instanceof de.b||(e=Object(de.h)(e));var t=e.r/255,n=e.g/255,i=e.b/255,a=(Ke*i+We*t-qe*n)/(Ke+We-qe),r=i-a,o=(Ve*(n-a)-Ye*r)/He,s=Math.sqrt(o*o+r*r)/(Ve*a*(1-a)),
// NaN if l=0 or l=1
u=s?Math.atan2(o,r)*ye-120:NaN;return new Ze(u<0?u+360:u,s,a,e.opacity)}function Ue(e,t,n,i){return 1===arguments.length?Be(e):new Ze(e,t,n,null==i?1:i)}function Ze(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/cubehelix.js
function Ge(e){return function t(n){function i(t,i){var a=e((t=Ue(t)).h,(i=Ue(i)).h),r=Object(Ae.a)(t.s,i.s),o=Object(Ae.a)(t.l,i.l),s=Object(Ae.a)(t.opacity,i.opacity);return function(e){return t.h=a(e),t.s=r(e),t.l=o(Math.pow(e,n)),t.opacity=s(e),t+""}}return n=+n,i.gamma=t,i}(1)}
/* harmony default export */Object(pe.a)(Ze,Ue,Object(pe.b)(de.a,{brighter:function(e){return e=null==e?de.c:Math.pow(de.c,e),new Ze(this.h,this.s,this.l*e,this.opacity)},darker:function(e){return e=null==e?de.d:Math.pow(de.d,e),new Ze(this.h,this.s,this.l*e,this.opacity)},rgb:function(){var e=isNaN(this.h)?0:(this.h+120)*ve,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),i=Math.cos(e),a=Math.sin(e);return new de.b(255*(t+n*($e*i+Xe*a)),255*(t+n*(Ye*i+He*a)),255*(t+n*(Ve*i)),this.opacity)}}));var Qe={lab:function(e,t){var n=Object(Ae.a)((e=je(e)).l,(t=je(t)).l),i=Object(Ae.a)(e.a,t.a),a=Object(Ae.a)(e.b,t.b),r=Object(Ae.a)(e.opacity,t.opacity);return function(t){return e.l=n(t),e.a=i(t),e.b=a(t),e.opacity=r(t),e+""}},hcl:De,"hcl-long":Te,hsl:Re,"hsl-long":ze,cubehelix:Ge(Ae.c),"cubehelix-long":Ge(Ae.a),rgb:n("I6Yn").a};
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-time/src/day.js
var Je=n("NeEQ"),et=n("y1Yx"),tt=n("ye78"),nt=n("PE29"),it=n("KvvH"),at=n("8eBc"),rt=n("VJwe"),ot=n("h734"),st=n("39fc"),ut=n("mdOK"),ct=n("fa3w"),lt=n("LNnp"),ft=n("gpY3"),ht=new Date(Date.UTC(2020,1,2,3,4,5));
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-time/src/hour.js
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/nice.js
var pt={day:Je.a,hour:et.a,minute:tt.a,month:nt.a,second:it.a,week:at.b,year:rt.a},dt={day:ot.a,hour:st.a,minute:ut.a,month:ct.a,second:it.a,week:lt.b,year:ft.a};
// EXTERNAL MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/d3-interpolate/src/round.js
var vt=n("98dg");
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/round.js
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/scaleOperator.js
/**
 * List of all operators, in order of execution
 */
var yt=[// domain => nice => zero
"domain","nice","zero",// interpolate before round
"interpolate","round",// set range then reverse
"range","reverse",// Order does not matter for these operators
"align","base","clamp","constant","exponent","padding","unknown"],mt={domain:
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/domain.js
function(e,t){t.domain&&
// continuous input scales
e.domain(t.domain)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/range.js
,nice:function(e,t){if("nice"in t&&"undefined"!==typeof t.nice&&"nice"in e){var n=t.nice;if("boolean"===typeof n)n&&e.nice();else if("number"===typeof n)e.nice(n);else{var i=e,a=
/**
 * Check if the scale is UTC or Time scale
 * When local time is equal to UTC, always return true
 * @param scale time or utc scale
 */
function(e){return"2020-02-02 03:04"===e.tickFormat(1,"%Y-%m-%d %H:%M")(ht)}(i);if("string"===typeof n)i.nice(a?dt[n]:pt[n]);else{var r=n.interval,o=n.step,s=(a?dt[r]:pt[r]).every(o);null!=s&&i.nice(s)}}}}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/padding.js
,zero:
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/zero.js
function(e,t){if("zero"in t&&!0===t.zero){var n=e.domain(),i=n[0],a=n[1],r=a<i,o=r?[a,i]:[i,a],s=o[0],u=o[1],c=[Math.min(0,s),Math.max(0,u)];e.domain(r?c.reverse():c)}},interpolate:
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/interpolate.js
function(e,t){if("interpolate"in t&&"interpolate"in e&&"undefined"!==typeof t.interpolate){var n=function(e){switch(e){case"lab":case"hcl":case"hcl-long":case"hsl":case"hsl-long":case"cubehelix":case"cubehelix-long":case"rgb":return Qe[e]}var t=e.type,n=e.gamma,i=Qe[t];return"undefined"===typeof n?i:i.gamma(n)}(t.interpolate);e.interpolate(n)}},round:function(e,t){"round"in t&&"undefined"!==typeof t.round&&(t.round&&"interpolate"in t&&"undefined"!==typeof t.interpolate?console.warn("[visx/scale/applyRound] ignoring round: scale config contains round and interpolate. only applying interpolate. config:",t):"round"in e?
// for point and band scales
e.round(t.round):"interpolate"in e&&t.round&&
// for continuous output scales
// setting config.round = true
// is actually setting interpolator to interpolateRound
// as these scales do not have scale.round() function
e.interpolate(vt.a))}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/unknown.js
,align:
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/align.js
function(e,t){"align"in e&&"align"in t&&"undefined"!==typeof t.align&&e.align(t.align)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/base.js
,base:function(e,t){"base"in e&&"base"in t&&"undefined"!==typeof t.base&&e.base(t.base)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/clamp.js
,clamp:function(e,t){"clamp"in e&&"clamp"in t&&"undefined"!==typeof t.clamp&&e.clamp(t.clamp)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/constant.js
,constant:function(e,t){"constant"in e&&"constant"in t&&"undefined"!==typeof t.constant&&e.constant(t.constant)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/exponent.js
,exponent:function(e,t){"exponent"in e&&"exponent"in t&&"undefined"!==typeof t.exponent&&e.exponent(t.exponent)},padding:function(e,t){"padding"in e&&"padding"in t&&"undefined"!==typeof t.padding&&e.padding(t.padding),"paddingInner"in e&&"paddingInner"in t&&"undefined"!==typeof t.paddingInner&&e.paddingInner(t.paddingInner),"paddingOuter"in e&&"paddingOuter"in t&&"undefined"!==typeof t.paddingOuter&&e.paddingOuter(t.paddingOuter)}
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/operators/reverse.js
,range:function(e,t){t.range&&
// point and band scales
e.range(t.range)},reverse:function(e,t){if(t.reverse){var n=e.range().slice().reverse();
// point and band scales
e.range(n)}},unknown:function(e,t){"unknown"in e&&"unknown"in t&&"undefined"!==typeof t.unknown&&e.unknown(t.unknown)}};// Use Record to enforce that all keys in OperatorType must exist.
// CONCATENATED MODULE: /Users/paulcowan/projects/cuttingedge/node_modules/@visx/scale/esm/scales/linear.js
var gt=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var i=new Set(t),a=yt.filter((function(e){return i.has(e)}));return function(e,t){return"undefined"!==typeof t&&a.forEach((function(n){mt[n](e,t)})),e}}("domain","range","reverse","clamp","interpolate","nice","round","zero");function xt(e){return gt(Object(he.a)(),e)}
// EXTERNAL MODULE: ../util/dist/util.esm.js
var bt=n("k4Rf"),wt=function(){return(wt=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)},Ot=2*Math.PI/360,jt=[0,1.57,3.14,4.71,6.28],kt={0:"0",1.57:"\\pi\\over 2",3.14:"\\pi",4.71:"3\\pi\\over 2",6.28:"2\\pi"},Mt=[{value:Math.PI/4,label:"$\\frac{\\pi}4$"},{value:Math.PI/2,label:"$\\frac{\\pi}2$"},{value:3*Math.PI/4,label:"$\\frac{3\\pi}4$"},{value:Math.PI,label:"$\\pi$"},{value:5*Math.PI/4,label:"$\\frac{5\\pi}4$"},{value:3*Math.PI/2,label:"$\\frac{3\\pi}2$"},{value:7*Math.PI/4,label:"$\\frac{7\\pi}4$"},{value:2*Math.PI,label:"${2\\pi}$"}],Nt={time:0,initialX:0,initialY:0,firstX:0,container:{x:0,y:0},unitCircle:{cx:0,cy:0,r:0},hypotenuse:{from:{x:0,y:0},to:{x:0,y:0}},opposite:{from:{x:0,y:0},to:{x:0,y:0}},adjacent:{from:{x:0,y:0},to:{x:0,y:0}},dot:{cx:0,cy:0,r:5},verticalDot:{cx:0,cy:0,r:5},joiningLine:{from:{x:0,y:0},to:{x:0,y:0}},
// TODO: fix axisDot
// axisDot: { cx: 0, cy: 0, r: MarkerWidth },
axisDot:{cx:0,cy:0,r:0},sine:[{x:0,y:0}],xIncrement:0,rays:[{cosX:0,sinY:0,offsetX:0,offsetY:0,label:""}]},Pt=function(e,t){switch(t.type){case"TICK":var n=e.time+Ot,i=e.xIncrement>2*Math.PI?Ot:e.xIncrement+Ot,a=t.payload,r=a.radius,o=a.firstX,s=Object(fe.a)(0,54).map((function(e){return 10*e/85})).map((function(e){return{x:e,y:-Math.sin(e-n)}})),u=r*Math.cos(n),c=r*-Math.sin(n),l=Mt.map((function(e){var t=e.value,n=e.label,i=t>Math.PI/2&&t<3*Math.PI/2?-20:-5,a=t>0&&t<Math.PI?-35:0,o=r*Math.cos(t),s=r*-Math.sin(t);return{cosX:o,sinY:s,offsetX:i+o,offsetY:a+s,label:n}}));return wt(wt({},e),{unitCircle:wt(wt({},e.unitCircle),{r:r}),
// TODO: fix axisDot
// axisDot: {
//   ...state.axisDot,
//   cx: xAxisScale(newXIncrement),
// },
dot:{cx:u,cy:c,r:5},joiningLine:wt(wt({},e.joiningLine),{from:{x:o,y:e.joiningLine.from.y}}),hypotenuse:wt(wt({},e.hypotenuse),{to:{x:u,y:c}}),opposite:wt(wt({},e.opposite),{from:{x:u,y:c},to:{x:u,y:0}}),adjacent:wt(wt({},e.adjacent),{from:{x:u,y:0}}),verticalDot:wt(wt({},e.verticalDot),{cy:c}),time:n,xIncrement:i,sine:s,rays:l});default:return e}},Et=function(){return(Et=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)},Ct=function(e){var t=e.formattedValue,n=e.x,a=e.y;return"$0$"===t?Object(i.jsx)(i.Fragment,{},void 0):Object(i.jsx)(s.a,Et({transform:"translate("+(n-6)+", "+(a-12)+")"},{children:Object(i.jsx)(ce.b,{expr:t||"$\\frac{\\pi}2$"},void 0)}),void 0)},Lt=function(){return(Lt=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)},St=function(e,t){var n="function"===typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,a,r=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(s){a={error:s}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return o};
// CONCATENATED MODULE: ./src/components/Sine/utils.ts
t.default=function(){var e=Object(a.useRef)(null),t=Object(u.a)(e),n=t.width,c=t.height,l=Object(a.useRef)(),f=Object(a.useMemo)((function(){return function(e){var t=e.width,n=e.height;if(1===t&&1===n)return{xScale:bt.a,yScale:bt.a,xAxisScale:bt.a,yAxisScale:bt.a,firstX:0,initialX:0,initialY:0,radius:0};var i=n/6,a=xt({domain:[0,20],range:[0,t]}),r=xt({domain:[0,20],range:[n,0]}),o=-1.25*i,s=a(20)-i,u=r(12);return{xScale:a,yScale:r,xAxisScale:xt({domain:[0,2*Math.PI],range:[o,-s]}),yAxisScale:xt({domain:[-1,1],range:[i,-i]}),firstX:o,initialX:s,initialY:u,radius:i}}({width:n,height:c})}),[n,c]),h=f.initialX,p=f.initialY,d=f.firstX,v=f.radius,y=f.xAxisScale,m=f.yAxisScale,g=St(Object(a.useReducer)(Pt,Nt),2),x=g[0],b=g[1],w=Object(a.useCallback)((function(e){return b({type:"TICK",payload:{radius:v,firstX:d,time:e,xAxisScale:y}})}),[d,v,y]);Object(a.useEffect)((function(){return l.current=requestAnimationFrame(w.bind(x.time)),function(){l.current&&cancelAnimationFrame(l.current)}}),[w,d,v,x.time]);var O=n>1&&c>1;return Object(i.jsx)(o.a,Lt({heading:"Sine of the times"},{children:Object(i.jsx)("section",Lt({className:le.main,ref:e},{children:Object(i.jsx)(s.c,Lt({width:n,height:c},{children:Object(i.jsxs)(s.a,Lt({x:h,y:p},{children:[x.rays.map((function(e){var t=e.cosX,n=e.sinY,a=e.label,o=e.offsetX,u=e.offsetY;return Object(i.jsxs)(r.a.Fragment,{children:[Object(i.jsx)(s.a,Lt({transform:"translate("+o+", "+u+")"},{children:Object(i.jsx)(ce.b,{expr:a},void 0)}),void 0),Object(i.jsx)(s.b,{className:le.ray,from:{x:0,y:0},to:{x:t,y:n}},void 0)]},a)})),Object(i.jsx)("circle",Lt({className:le["unit-cirle"]},x.unitCircle),void 0),Object(i.jsx)(s.b,Lt({className:le.hypotenuse},x.hypotenuse),void 0),Object(i.jsx)(s.b,Lt({className:le.opposite},x.opposite),void 0),Object(i.jsx)(s.b,Lt({className:le.adjacent},x.adjacent),void 0),Object(i.jsx)("circle",Lt({className:le.dot},x.dot),void 0),Object(i.jsx)("circle",Lt({className:le["vertical-guide"]},x.verticalDot),void 0),Object(i.jsx)(s.b,Lt({className:le["joining-line"]},x.joiningLine),void 0),Object(i.jsx)("circle",Lt({className:le["axis-dot"]},x.axisDot),void 0),O&&Object(i.jsxs)(i.Fragment,{children:[Object(i.jsx)(s.a,Lt({transform:"translate("+d+", 0)"},{children:Object(i.jsx)(Y,{scale:m,tickValues:[-1,0,1],axisClassName:le.axis,axisLineClassName:le["axis-line"],tickStroke:"#fff"},void 0)}),void 0),Object(i.jsx)(s.a,{children:Object(i.jsx)(W,{scale:y,tickValues:jt,tickFormat:function(e){return"$"+kt[e]+"$"},axisClassName:le.axis,axisLineClassName:le["axis-line"],tickStroke:"#fff",tickComponent:Ct},void 0)},void 0),Object(i.jsx)(se,{className:le.sine,x:function(e){var t;return null!==(t=y(e.x))&&void 0!==t?t:0},y:function(e){var t;return null!==(t=m(e.y))&&void 0!==t?t:0},strokeWidth:1,curve:ue.a,data:x.sine},void 0)]},void 0)]}),void 0)}),void 0)}),void 0)}),void 0)}},
/***/BGq7:
/***/function(e,t,n){var i=n("96CT");i.prototype.formulaEval=function(){"use strict";for(var e,t,n,i=[],a=this.value,r=0;r<a.length;r++)1===a[r].type||3===a[r].type?i.push({value:3===a[r].type?a[r].show:a[r].value,type:1}):13===a[r].type?i.push({value:a[r].show,type:1}):0===a[r].type?i[i.length-1]={value:a[r].show+("-"!=a[r].show?"(":"")+i[i.length-1].value+("-"!=a[r].show?")":""),type:0}:7===a[r].type?i[i.length-1]={value:(1!=i[i.length-1].type?"(":"")+i[i.length-1].value+(1!=i[i.length-1].type?")":"")+a[r].show,type:7}:10===a[r].type?(e=i.pop(),t=i.pop(),"P"===a[r].show||"C"===a[r].show?i.push({value:"<sup>"+t.value+"</sup>"+a[r].show+"<sub>"+e.value+"</sub>",type:10}):i.push({value:(1!=t.type?"(":"")+t.value+(1!=t.type?")":"")+"<sup>"+e.value+"</sup>",type:1})):2===a[r].type||9===a[r].type?(e=i.pop(),t=i.pop(),i.push({value:(1!=t.type?"(":"")+t.value+(1!=t.type?")":"")+a[r].show+(1!=e.type?"(":"")+e.value+(1!=e.type?")":""),type:a[r].type})):12===a[r].type&&(e=i.pop(),t=i.pop(),n=i.pop(),i.push({value:a[r].show+"("+n.value+","+t.value+","+e.value+")",type:12}));return i[0].value},e.exports=i},
/***/MOCl:
/***/function(e,t,n){"use strict";var i=function(e){this.value=e};i.math={isDegree:!0,
// mode of calculator
acos:function(e){return i.math.isDegree?180/Math.PI*Math.acos(e):Math.acos(e)},add:function(e,t){return e+t},asin:function(e){return i.math.isDegree?180/Math.PI*Math.asin(e):Math.asin(e)},atan:function(e){return i.math.isDegree?180/Math.PI*Math.atan(e):Math.atan(e)},acosh:function(e){return Math.log(e+Math.sqrt(e*e-1))},asinh:function(e){return Math.log(e+Math.sqrt(e*e+1))},atanh:function(e){return Math.log((1+e)/(1-e))},C:function(e,t){var n=1,a=e-t,r=t;r<a&&(r=a,a=t);for(var o=r+1;o<=e;o++)n*=o;return n/i.math.fact(a)},changeSign:function(e){return-e},cos:function(e){return i.math.isDegree&&(e=i.math.toRadian(e)),Math.cos(e)},cosh:function(e){return(Math.pow(Math.E,e)+Math.pow(Math.E,-1*e))/2},div:function(e,t){return e/t},fact:function(e){if(e%1!==0)return"NaN";for(var t=1,n=2;n<=e;n++)t*=n;return t},inverse:function(e){return 1/e},log:function(e){return Math.log(e)/Math.log(10)},mod:function(e,t){return e%t},mul:function(e,t){return e*t},P:function(e,t){for(var n=1,i=Math.floor(e)-Math.floor(t)+1;i<=Math.floor(e);i++)n*=i;return n},Pi:function(e,t,n){for(var i=1,a=e;a<=t;a++)i*=Number(n.postfixEval({n:a}));return i},pow10x:function(e){for(var t=1;e--;)t*=10;return t},sigma:function(e,t,n){for(var i=0,a=e;a<=t;a++)i+=Number(n.postfixEval({n:a}));return i},sin:function(e){return i.math.isDegree&&(e=i.math.toRadian(e)),Math.sin(e)},sinh:function(e){return(Math.pow(Math.E,e)-Math.pow(Math.E,-1*e))/2},sub:function(e,t){return e-t},tan:function(e){return i.math.isDegree&&(e=i.math.toRadian(e)),Math.tan(e)},tanh:function(e){return i.sinha(e)/i.cosha(e)},toRadian:function(e){return e*Math.PI/180}},i.Exception=function(e){this.message=e},e.exports=i},
/***/Vtpy:
/***/function(e,t,n){
/*
 * Module dependencies
 */
var i=n("mRg+");
/**
 * Expose `reduceFunctionCall`
 *
 * @type {Function}
 */
/**
 * Walkthrough all expressions, evaluate them and insert them into the declaration
 *
 * @param {Array} expressions
 * @param {Object} declaration
 */
function a(e,t,n){var r=e;
/**
 * Parses expressions in a value
 *
 * @param {String} value
 * @returns {Array}
 * @api private
 */
return function(e,t){var n=[],a="string"===typeof t?new RegExp("\\b("+t+")\\("):t;do{var r=a.exec(e);if(!r)return n;if(void 0===r[1])throw new Error("Missing the first couple of parenthesis to get the function identifier in "+t);var o=r[1],s=r.index,u=i("(",")",e.substring(s));if(!u||u.start!==r[0].length-1)throw new SyntaxError(o+"(): missing closing ')' in the value '"+e+"'");n.push({matches:u,functionIdentifier:o}),e=u.post}while(a.test(e));return n}
/**
 * Evaluates an expression
 *
 * @param {String} expression
 * @returns {String}
 * @api private
 */(e,t).reduce((function(e,i){return e.replace(i.functionIdentifier+"("+i.matches.body+")",function(e,t,n,i,r){
// allow recursivity
return n(a(e,r,n),t,i)}
/***/(i.matches.body,i.functionIdentifier,n,r,t))}),e)}e.exports=a},
/***/leIH:
/***/function(e,t,n){
/**
 * Module dependencies
 */
var i,a=n("mRg+"),r=n("Vtpy"),o=n("BGq7"),s=/(\+|\-|\*|\\|[^a-z]|)(\s*)(\()/g;
/**
 * Expose reduceCSSCalc plugin
 *
 * @type {Function}
 */
e.exports=
/**
 * Reduce CSS calc() in a string, whenever it's possible
 *
 * @param {String} value css input
 */
function(e,t){
/**
   * Evaluates an expression
   *
   * @param {String} expression
   * @returns {String}
   */
function n(e,r,u){if(i++>100)throw i=0,new Error("Call stack overflow for "+u);if(""===e)throw new Error(r+"(): '"+u+"' must contain a non-whitespace string");var c=
/**
 * Checks what units are used in an expression
 *
 * @param {String} expression
 * @returns {Array}
 */
function(e){var t=[],n=[],i=/[\.0-9]([%a-z]+)/gi,a=i.exec(e);for(;a;)a&&a[1]&&(-1===n.indexOf(a[1].toLowerCase())&&(t.push(a[1]),n.push(a[1].toLowerCase())),a=i.exec(e));return t}
/***/(e=
/**
   * Evaluates nested expressions
   *
   * @param {String} expression
   * @returns {String}
   */
function(e,t){
// Remove the calc part from nested expressions to ensure
// better browser compatibility
e=e.replace(/((?:\-[a-z]+\-)?calc)/g,"");var i,r="",o=e;for(;i=s.exec(o);){i[0].index>0&&(r+=o.substring(0,i[0].index));var u=a("(",")",o.substring([0].index));if(""===u.body)throw new Error("'"+e+"' must contain a non-whitespace string");var c=n(u.body,"",t);r+=u.pre+c,o=u.post}return r+o}(e,u));// If the expression contains multiple units or CSS variables,
// then let the expression be (i.e. browser calc())
if(c.length>1||e.indexOf("var(")>-1)return r+"("+e+")";var l=c[0]||"";"%"===l&&(
// Convert percentages to numbers, to handle expressions like: 50% * 50% (will become: 25%):
// console.log(expression)
e=e.replace(/\b[0-9\.]+%/g,(function(e){return.01*parseFloat(e.slice(0,-1))})));// Remove units in expression:
var f,h=e.replace(new RegExp(l,"gi"),"");try{f=o.eval(h)}catch(p){return r+"("+e+")"}// Transform back to a percentage result:
return"%"===l&&(f*=100),// adjust rounding shit
// (0.1 * 0.2 === 0.020000000000000004)
(r.length||"%"===l)&&(f=Math.round(f*t)/t),// Add unit
f+=l}return i=0,t=Math.pow(10,void 0===t?5:t),// Allow calc() on multiple lines
e=e.replace(/\n+/g," "),r(e,/((?:\-[a-z]+\-)?calc)\(/,n)}},
/***/"mRg+":
/***/function(e,t,n){"use strict";function i(e,t,n){e instanceof RegExp&&(e=a(e,n)),t instanceof RegExp&&(t=a(t,n));var i=r(e,t,n);return i&&{start:i[0],end:i[1],pre:n.slice(0,i[0]),body:n.slice(i[0]+e.length,i[1]),post:n.slice(i[1]+t.length)}}function a(e,t){var n=t.match(e);return n?n[0]:null}function r(e,t,n){var i,a,r,o,s,u=n.indexOf(e),c=n.indexOf(t,u+1),l=u;if(u>=0&&c>0){if(e===t)return[u,c];for(i=[],r=n.length;l>=0&&!s;)l==u?(i.push(l),u=n.indexOf(e,l+1)):1==i.length?s=[i.pop(),c]:((a=i.pop())<r&&(r=a,o=c),c=n.indexOf(t,l+1)),l=u<c&&u>=0?u:c;i.length&&(s=[r,o])}return s}
/***/e.exports=i,i.range=r},
/***/nfZ1:
/***/function(e,t,n){var i=n("pmk4");i.prototype.toPostfix=function(){"use strict";for(var e,t,n,a,r,o=[],s=[{value:"(",type:4,pre:0}],u=this.value,c=1;c<u.length;c++)if(1===u[c].type||3===u[c].type||13===u[c].type)
//if token is number,constant,or n(which is also a special constant in our case)
1===u[c].type&&(u[c].value=Number(u[c].value)),o.push(u[c]);else if(4===u[c].type)s.push(u[c]);else if(5===u[c].type)for(;4!==(t=s.pop()).type;)o.push(t);else if(11===u[c].type){for(;4!==(t=s.pop()).type;)o.push(t);s.push(t)}else{a=(e=u[c]).pre,n=(r=s[s.length-1]).pre;var l="Math.pow"==r.value&&"Math.pow"==e.value;if(a>n)s.push(e);else{for(;n>=a&&!l||l&&a<n;)t=s.pop(),r=s[s.length-1],o.push(t),n=r.pre,l="Math.pow"==e.value&&"Math.pow"==r.value;s.push(e)}}return new i(o)},e.exports=i},
/***/pmk4:
/***/function(e,t,n){"use strict";var i=n("MOCl");function a(e,t){for(var n=0;n<e.length;n++)e[n]+=t;return e}var r=["sin","cos","tan","pi","(",")","P","C"," ","asin","acos","atan","7","8","9","int","cosh","acosh","ln","^","root","4","5","6","/","!","tanh","atanh","Mod","1","2","3","*","sinh","asinh","e","log","0",".","+","-",",","Sigma","n","Pi","pow"],o=["sin","cos","tan","&pi;","(",")","P","C"," ","asin","acos","atan","7","8","9","Int","cosh","acosh"," ln","^","root","4","5","6","&divide;","!","tanh","atanh"," Mod ","1","2","3","&times;","sinh","asinh","e"," log","0",".","+","-",",","&Sigma;","n","&Pi;","pow"],s=[i.math.sin,i.math.cos,i.math.tan,"PI","(",")",i.math.P,i.math.C," ".anchor,i.math.asin,i.math.acos,i.math.atan,"7","8","9",Math.floor,i.math.cosh,i.math.acosh,Math.log,Math.pow,Math.sqrt,"4","5","6",i.math.div,i.math.fact,i.math.tanh,i.math.atanh,i.math.mod,"1","2","3",i.math.mul,i.math.sinh,i.math.asinh,"E",i.math.log,"0",".",i.math.add,i.math.sub,",",i.math.sigma,"n",i.math.Pi,Math.pow],u={0:11,1:0,2:3,3:0,4:0,5:0,6:0,7:11,8:11,9:1,10:10,11:0,12:11,13:0,14:-1},c=[0,0,0,3,4,5,10,10,14,0,0,0,1,1,1,0,0,0,0,10,0,1,1,1,2,7,0,0,2,1,1,1,2,0,0,3,0,1,6,9,9,11,12,13,12,8],l={0:!0,1:!0,3:!0,4:!0,6:!0,8:!0,9:!0,12:!0,13:!0,14:!0},f={0:!0,1:!0,2:!0,3:!0,4:!0,5:!0,6:!0,7:!0,8:!0,9:!0,10:!0,11:!0,12:!0,13:!0},h={0:!0,3:!0,4:!0,8:!0,12:!0,13:!0},p={},d={0:!0,1:!0,3:!0,4:!0,6:!0,8:!0,12:!0,13:!0},v={1:!0},y=[[],["1","2","3","7","8","9","4","5","6","+","-","*","/","(",")","^","!","P","C","e","0",".",",","n"," "],["pi","ln","Pi"],["sin","cos","tan","Del","int","Mod","log","pow"],["asin","acos","atan","cosh","root","tanh","sinh"],["acosh","atanh","asinh","Sigma"]];function m(e,t,n,i){for(var a=0;a<i;a++)if(e[n+a]!==t[a])return!1;return!0}i.addToken=function(e){for(var t=0;t<e.length;t++){var n=e[t].token.length,i=-1;// newAr is a specially designed data structure index of 1d array = length of tokens
y[n]=y[n]||[];for(var a=0;a<y[n].length;a++)if(e[t].token===y[n][a]){i=r.indexOf(y[n][a]);break}-1===i?(r.push(e[t].token),c.push(e[t].type),y.length<=e[t].token.length&&(y[e[t].token.length]=[]),y[e[t].token.length].push(e[t].token),s.push(e[t].value),o.push(e[t].show)):(
// overwrite
r[i]=e[t].token,c[i]=e[t].type,s[i]=e[t].value,o[i]=e[t].show)}},i.lex=function(e,t){var n,g={value:i.math.changeSign,type:0,pre:21,show:"-"},x={value:")",show:")",type:5,pre:0},b={value:"(",type:4,pre:0,show:"("},w=[b],O=[],j=e,k=l,M=0,N=p,P="";"undefined"!==typeof t&&i.addToken(t);var E={},C=function(e){for(var t,n,a,l=[],f=e.length,h=0;h<f;h++)if(!(h<f-1&&" "===e[h]&&" "===e[h+1])){for(t="",n=e.length-h>y.length-2?y.length-1:e.length-h;n>0;n--)if(void 0!==y[n])for(a=0;a<y[n].length;a++)m(e,y[n][a],h,n)&&(t=y[n][a],a=y[n].length,n=0);if(h+=t.length-1,""===t)throw new i.Exception("Can't understand after "+e.slice(h));var p=r.indexOf(t);l.push({index:p,token:t,type:c[p],eval:s[p],precedence:u[c[p]],show:o[p]})}return l}(j);for(n=0;n<C.length;n++){var L=C[n];if(14!==L.type){L.index;var S,I=L.token,A=L.type,_=L.eval,D=L.precedence,T=L.show,F=w[w.length-1];for(S=O.length;S--&&0===O[S];)if(-1!==[0,2,3,4,5,9,11,12,13].indexOf(A)){if(!0!==k[A])throw console.log(e,L,C,k),new i.Exception(I+" is not allowed after "+P);w.push(x),k=f,N=d,a(O,-1).pop()}if(!0!==k[A])throw new i.Exception(I+" is not allowed after "+P);if(!0===N[A]&&(A=2,_=i.math.mul,T="&times;",D=3,n-=I.length),E={value:_,type:A,pre:D,show:T},0===A)k=l,N=p,a(O,2).push(2),w.push(E),w.push(b);else if(1===A)1===F.type?(F.value+=_,a(O,1)):w.push(E),k=f,N=h;else if(2===A)k=l,N=p,a(O,2),w.push(E);else if(3===A)
// constant
w.push(E),k=f,N=d;else if(4===A)a(O,1),M++,k=l,N=p,w.push(E);else if(5===A){if(!M)throw new i.Exception("Closing parenthesis are more than opening one, wait What!!!");M--,k=f,N=d,w.push(E),a(O,1)}else if(6===A){if(F.hasDec)throw new i.Exception("Two decimals are not allowed in one number");1!==F.type&&(F={value:0,type:1,pre:0},// pre needs to be changed as it will the last value now to be safe in later code
w.push(F),a(O,-1)),k=v,a(O,1),N=p,F.value+=_,F.hasDec=!0}else 7===A&&(k=f,N=d,a(O,1),w.push(E));8===A?(k=l,N=p,a(O,4).push(4),w.push(E),w.push(b)):9===A?(9===F.type?F.value===i.math.add?(F.value=_,F.show=T,a(O,1)):F.value===i.math.sub&&"-"===T&&(F.value=i.math.add,F.show="+",a(O,1)):5!==F.type&&7!==F.type&&1!==F.type&&3!==F.type&&13!==F.type?
// changesign only when negative is found
"-"===I&&(
// do nothing for + token
// don't add with the above if statement as that will run the else statement of parent if on Ctoken +
k=l,N=p,a(O,2).push(2),w.push(g),w.push(b)):(w.push(E),a(O,2)),k=l,N=p):10===A?(k=l,N=p,a(O,2),w.push(E)):11===A?(k=l,N=p,w.push(E)):12===A?(k=l,N=p,a(O,6).push(6),w.push(E),w.push(b)):13===A&&(k=f,N=d,w.push(E)),a(O,-1),P=I}else if(n>0&&n<C.length-1&&1===C[n+1].type&&(1===C[n-1].type||6===C[n-1].type))throw new i.Exception("Unexpected Space")}for(S=O.length;S--&&0===O[S];)w.push(x),a(O,-1).pop();if(!0!==k[5])throw new i.Exception("complete the expression");for(;M--;)w.push(x);//        console.log(str);
return w.push(x),new i(w)},e.exports=i}}]);
//# sourceMappingURL=src-components-Sine-Sine-493df0b3.10f2c8a5.chunk.js.map