{"version":3,"file":"shared-lib.CUIbmRG6.mjs","names":["e","n","t","i","o","r","u","p","x","a","s","l","c","d","Y","f","Matter","Matter","i","Matter","e","i","x","React","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","SVG","sharedStyle.css","sharedStyle.fonts","addPropertyOverrides","Button","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","SVG","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","SVG","RichText","sharedStyle.css","sharedStyle.fonts","fonts","css","className","fonts","css","className","fonts","css","className","fonts","css","className","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","Label","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","Image","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","fonts","css","className"],"sources":["https:/ga.jspm.io/npm:matter-js@0.18.0/build/matter.js","https:/framerusercontent.com/modules/KYVdEKqNHqMXAKLjSKCy/Ok6wam0uM9G4VUuXWgpR/MakeWalls.js","https:/framerusercontent.com/modules/6UgWtAa26OCy0CE59gub/LTuIQWugGJr30ZUS1CV9/MakeBodies.js","https:/framerusercontent.com/modules/J5dvZmKgCR2VeJUGUW9R/NOka49dL3NFIzOG8ITuA/Physics.js","https:/framerusercontent.com/modules/WkMjDow2UwQmUok1WXbX/sllzVk5KDcmdKbVYbDgB/L9LmQxkAg.js","https:/framerusercontent.com/modules/DnNcTctZH5N2scd5uOzL/7FiwYnJCX1faRGoMF3hV/ypSgpIBhr.js","https:/framerusercontent.com/modules/RkaHM0QHvagnt2w7vZeb/bUIuA67Ug9eCl5XiJW3z/ztIGYheUJ.js","https:/framerusercontent.com/modules/PeiVYPgciNXXVJofgnsI/2gvSfuPU1YdhIDNT2hYn/lxVs8hvW6.js","https:/framerusercontent.com/modules/QUvqPCvtJjqh2Y5j9oe3/8smCNpKmXh2NSzjKm34i/GJb69dTML.js","https:/framerusercontent.com/modules/AlMKV4SloHxZgO4CTC4P/jC4tMiCZQQS11LtQKUMP/bLI_1F8qc.js","https:/framerusercontent.com/modules/s1bGSLbKvimcOdRCFQAG/Ub8y1qBfMw6dhNC7qwoB/PClsg5Sbq.js","https:/framerusercontent.com/modules/jzZDl4ya1deUfyQhjiGQ/kJaeROXux1RYkzBEMHVf/MZqeNI4y9.js","https:/framerusercontent.com/modules/YnH0nBTeZYD9emqycxFZ/toLpVQkSV3Rcoa1121pX/VJC1xqIDk.js","https:/framerusercontent.com/modules/PHJcdHVOOS9Rsvoh4uko/s6xIjb2SDzZKEoUjFi1v/y2jVBNtuj.js","https:/framerusercontent.com/modules/oRoaagFl4AdwUygnd8xZ/p4yApyBID3O9o5tI4ghp/DcAQlMI1P.js","https:/framerusercontent.com/modules/o8936yJKSbVvUV01zN8m/PmoxoniqdfVtSqbph5Kp/HSHPnGczp.js","https:/framerusercontent.com/modules/DyWf0t0r9Gs3Jsyfy7e8/FLIJzBHgnYoTwA1bYTfI/VyknP3_qk.js","https:/framerusercontent.com/modules/2Qs2uNiBv6xEuV50ddoZ/f4B3LaySFic4GgzHXSIN/ewZUuFXso.js","https:/framerusercontent.com/modules/sQbn01PSFCCA819EjsX9/vFGElTvCDdGgzTbMEv09/fOdkCR5SC.js","https:/framerusercontent.com/modules/2NHJA4pltr8EvWnlGcV6/YjePP6BBQaHWPeFcw8S7/siteMetadata.js"],"sourcesContent":["var e=\"undefined\"!==typeof globalThis?globalThis:\"undefined\"!==typeof self?self:global;var t={};(function webpackUniversalModuleDefinition(e,n){t=n()})(0,(function(){return function(e){var t={};function __webpack_require__(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:false,exports:{}};e[n].call(i.exports,i,i.exports,__webpack_require__);i.l=true;return i.exports}__webpack_require__.m=e;__webpack_require__.c=t;__webpack_require__.d=function(e,t,n){__webpack_require__.o(e,t)||Object.defineProperty(e,t,{enumerable:true,get:n})};__webpack_require__.r=function(e){\"undefined\"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"});Object.defineProperty(e,\"__esModule\",{value:true})};__webpack_require__.t=function(e,t){1&t&&(e=__webpack_require__(e));if(8&t)return e;if(4&t&&\"object\"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);__webpack_require__.r(n);Object.defineProperty(n,\"default\",{enumerable:true,value:e});if(2&t&&\"string\"!=typeof e)for(var i in e)__webpack_require__.d(n,i,function(t){return e[t]}.bind(null,i));return n};__webpack_require__.n=function(e){var t=e&&e.__esModule?function getDefault(){return e.default}:function getModuleExports(){return e};__webpack_require__.d(t,\"a\",t);return t};__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=21)}([function(t,n){var i={};t.exports=i;(function(){i._nextId=0;i._seed=0;i._nowStartTime=+new Date;i._warnedOnce={};i._decomp=null;\n/**\n         * Extends the object in the first argument using the object in the second argument.\n         * @method extend\n         * @param {} obj\n         * @param {boolean} deep\n         * @return {} obj extended\n         */i.extend=function(e,t){var n,o;if(\"boolean\"===typeof t){n=2;o=t}else{n=1;o=true}for(var r=n;r<arguments.length;r++){var a=arguments[r];if(a)for(var s in a)if(o&&a[s]&&a[s].constructor===Object)if(e[s]&&e[s].constructor!==Object)e[s]=a[s];else{e[s]=e[s]||{};i.extend(e[s],o,a[s])}else e[s]=a[s]}return e};\n/**\n         * Creates a new clone of the object, if deep is true references will also be cloned.\n         * @method clone\n         * @param {} obj\n         * @param {bool} deep\n         * @return {} obj cloned\n         */i.clone=function(e,t){return i.extend({},t,e)};\n/**\n         * Returns the list of keys for the given object.\n         * @method keys\n         * @param {} obj\n         * @return {string[]} keys\n         */i.keys=function(e){if(Object.keys)return Object.keys(e);var t=[];for(var n in e)t.push(n);return t};\n/**\n         * Returns the list of values for the given object.\n         * @method values\n         * @param {} obj\n         * @return {array} Array of the objects property values\n         */i.values=function(e){var t=[];if(Object.keys){var n=Object.keys(e);for(var i=0;i<n.length;i++)t.push(e[n[i]]);return t}for(var o in e)t.push(e[o]);return t};\n/**\n         * Gets a value from `base` relative to the `path` string.\n         * @method get\n         * @param {} obj The base object\n         * @param {string} path The path relative to `base`, e.g. 'Foo.Bar.baz'\n         * @param {number} [begin] Path slice begin\n         * @param {number} [end] Path slice end\n         * @return {} The object at the given path\n         */i.get=function(e,t,n,i){t=t.split(\".\").slice(n,i);for(var o=0;o<t.length;o+=1)e=e[t[o]];return e};\n/**\n         * Sets a value on `base` relative to the given `path` string.\n         * @method set\n         * @param {} obj The base object\n         * @param {string} path The path relative to `base`, e.g. 'Foo.Bar.baz'\n         * @param {} val The value to set\n         * @param {number} [begin] Path slice begin\n         * @param {number} [end] Path slice end\n         * @return {} Pass through `val` for chaining\n         */i.set=function(e,t,n,o,r){var a=t.split(\".\").slice(o,r);i.get(e,t,0,-1)[a[a.length-1]]=n;return n};\n/**\n         * Shuffles the given array in-place.\n         * The function uses a seeded random generator.\n         * @method shuffle\n         * @param {array} array\n         * @return {array} array shuffled randomly\n         */i.shuffle=function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(i.random()*(t+1));var o=e[t];e[t]=e[n];e[n]=o}return e};\n/**\n         * Randomly chooses a value from a list with equal probability.\n         * The function uses a seeded random generator.\n         * @method choose\n         * @param {array} choices\n         * @return {object} A random choice object from the array\n         */i.choose=function(e){return e[Math.floor(i.random()*e.length)]};\n/**\n         * Returns true if the object is a HTMLElement, otherwise false.\n         * @method isElement\n         * @param {object} obj\n         * @return {boolean} True if the object is a HTMLElement, otherwise false\n         */i.isElement=function(e){return\"undefined\"!==typeof HTMLElement?e instanceof HTMLElement:!!(e&&e.nodeType&&e.nodeName)};\n/**\n         * Returns true if the object is an array.\n         * @method isArray\n         * @param {object} obj\n         * @return {boolean} True if the object is an array, otherwise false\n         */i.isArray=function(e){return\"[object Array]\"===Object.prototype.toString.call(e)};\n/**\n         * Returns true if the object is a function.\n         * @method isFunction\n         * @param {object} obj\n         * @return {boolean} True if the object is a function, otherwise false\n         */i.isFunction=function(e){return\"function\"===typeof e};\n/**\n         * Returns true if the object is a plain object.\n         * @method isPlainObject\n         * @param {object} obj\n         * @return {boolean} True if the object is a plain object, otherwise false\n         */i.isPlainObject=function(e){return\"object\"===typeof e&&e.constructor===Object};\n/**\n         * Returns true if the object is a string.\n         * @method isString\n         * @param {object} obj\n         * @return {boolean} True if the object is a string, otherwise false\n         */i.isString=function(e){return\"[object String]\"===toString.call(e)};\n/**\n         * Returns the given value clamped between a minimum and maximum value.\n         * @method clamp\n         * @param {number} value\n         * @param {number} min\n         * @param {number} max\n         * @return {number} The value clamped between min and max inclusive\n         */i.clamp=function(e,t,n){return e<t?t:e>n?n:e};\n/**\n         * Returns the sign of the given value.\n         * @method sign\n         * @param {number} value\n         * @return {number} -1 if negative, +1 if 0 or positive\n         */i.sign=function(e){return e<0?-1:1};i.now=function(){if(\"undefined\"!==typeof window&&window.performance){if(window.performance.now)return window.performance.now();if(window.performance.webkitNow)return window.performance.webkitNow()}return Date.now?Date.now():new Date-i._nowStartTime};\n/**\n         * Returns a random value between a minimum and a maximum value inclusive.\n         * The function uses a seeded random generator.\n         * @method random\n         * @param {number} min\n         * @param {number} max\n         * @return {number} A random number between min and max inclusive\n         */i.random=function(e,t){e=\"undefined\"!==typeof e?e:0;t=\"undefined\"!==typeof t?t:1;return e+_seededRandom()*(t-e)};var _seededRandom=function(){i._seed=(9301*i._seed+49297)%233280;return i._seed/233280};\n/**\n         * Converts a CSS hex colour string into an integer.\n         * @method colorToNumber\n         * @param {string} colorString\n         * @return {number} An integer representing the CSS hex string\n         */i.colorToNumber=function(e){e=e.replace(\"#\",\"\");3==e.length&&(e=e.charAt(0)+e.charAt(0)+e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2));return parseInt(e,16)};\n/**\n         * The console logging level to use, where each level includes all levels above and excludes the levels below.\n         * The default level is 'debug' which shows all console messages.  \n         *\n         * Possible level values are:\n         * - 0 = None\n         * - 1 = Debug\n         * - 2 = Info\n         * - 3 = Warn\n         * - 4 = Error\n         * @property Common.logLevel\n         * @type {Number}\n         * @default 1\n         */i.logLevel=1;\n/**\n         * Shows a `console.log` message only if the current `Common.logLevel` allows it.\n         * The message will be prefixed with 'matter-js' to make it easily identifiable.\n         * @method log\n         * @param ...objs {} The objects to log.\n         */i.log=function(){console&&i.logLevel>0&&i.logLevel<=3&&console.log.apply(console,[\"matter-js:\"].concat(Array.prototype.slice.call(arguments)))};\n/**\n         * Shows a `console.info` message only if the current `Common.logLevel` allows it.\n         * The message will be prefixed with 'matter-js' to make it easily identifiable.\n         * @method info\n         * @param ...objs {} The objects to log.\n         */i.info=function(){console&&i.logLevel>0&&i.logLevel<=2&&console.info.apply(console,[\"matter-js:\"].concat(Array.prototype.slice.call(arguments)))};\n/**\n         * Shows a `console.warn` message only if the current `Common.logLevel` allows it.\n         * The message will be prefixed with 'matter-js' to make it easily identifiable.\n         * @method warn\n         * @param ...objs {} The objects to log.\n         */i.warn=function(){console&&i.logLevel>0&&i.logLevel<=3&&console.warn.apply(console,[\"matter-js:\"].concat(Array.prototype.slice.call(arguments)))};\n/**\n         * Uses `Common.warn` to log the given message one time only.\n         * @method warnOnce\n         * @param ...objs {} The objects to log.\n         */i.warnOnce=function(){var e=Array.prototype.slice.call(arguments).join(\" \");if(!i._warnedOnce[e]){i.warn(e);i._warnedOnce[e]=true}};\n/**\n         * Shows a deprecated console warning when the function on the given object is called.\n         * The target function will be replaced with a new function that first shows the warning\n         * and then calls the original function.\n         * @method deprecated\n         * @param {object} obj The object or module\n         * @param {string} name The property name of the function on obj\n         * @param {string} warning The one-time message to show if the function is called\n         */i.deprecated=function(e,t,n){e[t]=i.chain((function(){i.warnOnce(\"🔅 deprecated 🔅\",n)}),e[t])};i.nextId=function(){return i._nextId++};\n/**\n         * A cross browser compatible indexOf implementation.\n         * @method indexOf\n         * @param {array} haystack\n         * @param {object} needle\n         * @return {number} The position of needle in haystack, otherwise -1.\n         */i.indexOf=function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0;n<e.length;n++)if(e[n]===t)return n;return-1};\n/**\n         * A cross browser compatible array map implementation.\n         * @method map\n         * @param {array} list\n         * @param {function} func\n         * @return {array} Values from list transformed by func.\n         */i.map=function(e,t){if(e.map)return e.map(t);var n=[];for(var i=0;i<e.length;i+=1)n.push(t(e[i]));return n};\n/**\n         * Takes a directed graph and returns the partially ordered set of vertices in topological order.\n         * Circular dependencies are allowed.\n         * @method topologicalSort\n         * @param {object} graph\n         * @return {array} Partially ordered set of vertices in topological order.\n         */i.topologicalSort=function(e){var t=[],n=[],o=[];for(var r in e)n[r]||o[r]||i._topologicalSort(r,n,o,e,t);return t};i._topologicalSort=function(e,t,n,o,r){var a=o[e]||[];n[e]=true;for(var s=0;s<a.length;s+=1){var l=a[s];n[l]||(t[l]||i._topologicalSort(l,t,n,o,r))}n[e]=false;t[e]=true;r.push(e)};\n/**\n         * Takes _n_ functions as arguments and returns a new function that calls them in order.\n         * The arguments applied when calling the new function will also be applied to every function passed.\n         * The value of `this` refers to the last value returned in the chain that was not `undefined`.\n         * Therefore if a passed function does not return a value, the previously returned value is maintained.\n         * After all passed functions have been called the new function returns the last returned value (if any).\n         * If any of the passed functions are a chain, then the chain will be flattened.\n         * @method chain\n         * @param ...funcs {function} The functions to chain.\n         * @return {function} A new function that calls the passed functions in order.\n         */i.chain=function(){var e=[];for(var t=0;t<arguments.length;t+=1){var n=arguments[t];n._chained?e.push.apply(e,n._chained):e.push(n)}var chain=function(){var t,n=new Array(arguments.length);for(var i=0,o=arguments.length;i<o;i++)n[i]=arguments[i];for(i=0;i<e.length;i+=1){var r=e[i].apply(t,n);\"undefined\"!==typeof r&&(t=r)}return t};chain._chained=e;return chain};\n/**\n         * Chains a function to excute before the original function on the given `path` relative to `base`.\n         * See also docs for `Common.chain`.\n         * @method chainPathBefore\n         * @param {} base The base object\n         * @param {string} path The path relative to `base`\n         * @param {function} func The function to chain before the original\n         * @return {function} The chained function that replaced the original\n         */i.chainPathBefore=function(e,t,n){return i.set(e,t,i.chain(n,i.get(e,t)))};\n/**\n         * Chains a function to excute after the original function on the given `path` relative to `base`.\n         * See also docs for `Common.chain`.\n         * @method chainPathAfter\n         * @param {} base The base object\n         * @param {string} path The path relative to `base`\n         * @param {function} func The function to chain after the original\n         * @return {function} The chained function that replaced the original\n         */i.chainPathAfter=function(e,t,n){return i.set(e,t,i.chain(i.get(e,t),n))};\n/**\n         * Provide the [poly-decomp](https://github.com/schteppe/poly-decomp.js) library module to enable\n         * concave vertex decomposition support when using `Bodies.fromVertices` e.g. `Common.setDecomp(require('poly-decomp'))`.\n         * @method setDecomp\n         * @param {} decomp The [poly-decomp](https://github.com/schteppe/poly-decomp.js) library module.\n         */i.setDecomp=function(e){i._decomp=e};i.getDecomp=function(){var t=i._decomp;try{t||\"undefined\"===typeof window||(t=window.decomp);t||\"undefined\"===typeof e||(t=e.decomp)}catch(e){t=null}return t}})()},function(e,t){var n={};e.exports=n;(function(){\n/**\n         * Creates a new axis-aligned bounding box (AABB) for the given vertices.\n         * @method create\n         * @param {vertices} vertices\n         * @return {bounds} A new bounds object\n         */\nn.create=function(e){var t={min:{x:0,y:0},max:{x:0,y:0}};e&&n.update(t,e);return t};\n/**\n         * Updates bounds using the given vertices and extends the bounds given a velocity.\n         * @method update\n         * @param {bounds} bounds\n         * @param {vertices} vertices\n         * @param {vector} velocity\n         */n.update=function(e,t,n){e.min.x=Infinity;e.max.x=-Infinity;e.min.y=Infinity;e.max.y=-Infinity;for(var i=0;i<t.length;i++){var o=t[i];o.x>e.max.x&&(e.max.x=o.x);o.x<e.min.x&&(e.min.x=o.x);o.y>e.max.y&&(e.max.y=o.y);o.y<e.min.y&&(e.min.y=o.y)}if(n){n.x>0?e.max.x+=n.x:e.min.x+=n.x;n.y>0?e.max.y+=n.y:e.min.y+=n.y}};\n/**\n         * Returns true if the bounds contains the given point.\n         * @method contains\n         * @param {bounds} bounds\n         * @param {vector} point\n         * @return {boolean} True if the bounds contain the point, otherwise false\n         */n.contains=function(e,t){return t.x>=e.min.x&&t.x<=e.max.x&&t.y>=e.min.y&&t.y<=e.max.y};\n/**\n         * Returns true if the two bounds intersect.\n         * @method overlaps\n         * @param {bounds} boundsA\n         * @param {bounds} boundsB\n         * @return {boolean} True if the bounds overlap, otherwise false\n         */n.overlaps=function(e,t){return e.min.x<=t.max.x&&e.max.x>=t.min.x&&e.max.y>=t.min.y&&e.min.y<=t.max.y};\n/**\n         * Translates the bounds by the given vector.\n         * @method translate\n         * @param {bounds} bounds\n         * @param {vector} vector\n         */n.translate=function(e,t){e.min.x+=t.x;e.max.x+=t.x;e.min.y+=t.y;e.max.y+=t.y};\n/**\n         * Shifts the bounds to the given position.\n         * @method shift\n         * @param {bounds} bounds\n         * @param {vector} position\n         */n.shift=function(e,t){var n=e.max.x-e.min.x,i=e.max.y-e.min.y;e.min.x=t.x;e.max.x=t.x+n;e.min.y=t.y;e.max.y=t.y+i}})()},function(e,t){var n={};e.exports=n;(function(){\n/**\n         * Creates a new vector.\n         * @method create\n         * @param {number} x\n         * @param {number} y\n         * @return {vector} A new vector\n         */\nn.create=function(e,t){return{x:e||0,y:t||0}};\n/**\n         * Returns a new vector with `x` and `y` copied from the given `vector`.\n         * @method clone\n         * @param {vector} vector\n         * @return {vector} A new cloned vector\n         */n.clone=function(e){return{x:e.x,y:e.y}};\n/**\n         * Returns the magnitude (length) of a vector.\n         * @method magnitude\n         * @param {vector} vector\n         * @return {number} The magnitude of the vector\n         */n.magnitude=function(e){return Math.sqrt(e.x*e.x+e.y*e.y)};\n/**\n         * Returns the magnitude (length) of a vector (therefore saving a `sqrt` operation).\n         * @method magnitudeSquared\n         * @param {vector} vector\n         * @return {number} The squared magnitude of the vector\n         */n.magnitudeSquared=function(e){return e.x*e.x+e.y*e.y};\n/**\n         * Rotates the vector about (0, 0) by specified angle.\n         * @method rotate\n         * @param {vector} vector\n         * @param {number} angle\n         * @param {vector} [output]\n         * @return {vector} The vector rotated about (0, 0)\n         */n.rotate=function(e,t,n){var i=Math.cos(t),o=Math.sin(t);n||(n={});var r=e.x*i-e.y*o;n.y=e.x*o+e.y*i;n.x=r;return n};\n/**\n         * Rotates the vector about a specified point by specified angle.\n         * @method rotateAbout\n         * @param {vector} vector\n         * @param {number} angle\n         * @param {vector} point\n         * @param {vector} [output]\n         * @return {vector} A new vector rotated about the point\n         */n.rotateAbout=function(e,t,n,i){var o=Math.cos(t),r=Math.sin(t);i||(i={});var a=n.x+((e.x-n.x)*o-(e.y-n.y)*r);i.y=n.y+((e.x-n.x)*r+(e.y-n.y)*o);i.x=a;return i};\n/**\n         * Normalises a vector (such that its magnitude is `1`).\n         * @method normalise\n         * @param {vector} vector\n         * @return {vector} A new vector normalised\n         */n.normalise=function(e){var t=n.magnitude(e);return 0===t?{x:0,y:0}:{x:e.x/t,y:e.y/t}};\n/**\n         * Returns the dot-product of two vectors.\n         * @method dot\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @return {number} The dot product of the two vectors\n         */n.dot=function(e,t){return e.x*t.x+e.y*t.y};\n/**\n         * Returns the cross-product of two vectors.\n         * @method cross\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @return {number} The cross product of the two vectors\n         */n.cross=function(e,t){return e.x*t.y-e.y*t.x};\n/**\n         * Returns the cross-product of three vectors.\n         * @method cross3\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @param {vector} vectorC\n         * @return {number} The cross product of the three vectors\n         */n.cross3=function(e,t,n){return(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x)};\n/**\n         * Adds the two vectors.\n         * @method add\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @param {vector} [output]\n         * @return {vector} A new vector of vectorA and vectorB added\n         */n.add=function(e,t,n){n||(n={});n.x=e.x+t.x;n.y=e.y+t.y;return n};\n/**\n         * Subtracts the two vectors.\n         * @method sub\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @param {vector} [output]\n         * @return {vector} A new vector of vectorA and vectorB subtracted\n         */n.sub=function(e,t,n){n||(n={});n.x=e.x-t.x;n.y=e.y-t.y;return n};\n/**\n         * Multiplies a vector and a scalar.\n         * @method mult\n         * @param {vector} vector\n         * @param {number} scalar\n         * @return {vector} A new vector multiplied by scalar\n         */n.mult=function(e,t){return{x:e.x*t,y:e.y*t}};\n/**\n         * Divides a vector and a scalar.\n         * @method div\n         * @param {vector} vector\n         * @param {number} scalar\n         * @return {vector} A new vector divided by scalar\n         */n.div=function(e,t){return{x:e.x/t,y:e.y/t}};\n/**\n         * Returns the perpendicular vector. Set `negate` to true for the perpendicular in the opposite direction.\n         * @method perp\n         * @param {vector} vector\n         * @param {bool} [negate=false]\n         * @return {vector} The perpendicular vector\n         */n.perp=function(e,t){t=true===t?-1:1;return{x:t*-e.y,y:t*e.x}};\n/**\n         * Negates both components of a vector such that it points in the opposite direction.\n         * @method neg\n         * @param {vector} vector\n         * @return {vector} The negated vector\n         */n.neg=function(e){return{x:-e.x,y:-e.y}};\n/**\n         * Returns the angle between the vector `vectorB - vectorA` and the x-axis in radians.\n         * @method angle\n         * @param {vector} vectorA\n         * @param {vector} vectorB\n         * @return {number} The angle in radians\n         */n.angle=function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)};\n/**\n         * Temporary vector pool (not thread-safe).\n         * @property _temp\n         * @type {vector[]}\n         * @private\n         */n._temp=[n.create(),n.create(),n.create(),n.create(),n.create(),n.create()]})()},function(e,t,n){var i={};e.exports=i;var o=n(2);var r=n(0);(function(){\n/**\n         * Creates a new set of `Matter.Body` compatible vertices.\n         * The `points` argument accepts an array of `Matter.Vector` points orientated around the origin `(0, 0)`, for example:\n         *\n         *     [{ x: 0, y: 0 }, { x: 25, y: 50 }, { x: 50, y: 0 }]\n         *\n         * The `Vertices.create` method returns a new array of vertices, which are similar to Matter.Vector objects,\n         * but with some additional references required for efficient collision detection routines.\n         *\n         * Vertices must be specified in clockwise order.\n         *\n         * Note that the `body` argument is not optional, a `Matter.Body` reference must be provided.\n         *\n         * @method create\n         * @param {vector[]} points\n         * @param {body} body\n         */\ni.create=function(e,t){var n=[];for(var i=0;i<e.length;i++){var o=e[i],r={x:o.x,y:o.y,index:i,body:t,isInternal:false};n.push(r)}return n};\n/**\n         * Parses a string containing ordered x y pairs separated by spaces (and optionally commas), \n         * into a `Matter.Vertices` object for the given `Matter.Body`.\n         * For parsing SVG paths, see `Svg.pathToVertices`.\n         * @method fromPath\n         * @param {string} path\n         * @param {body} body\n         * @return {vertices} vertices\n         */i.fromPath=function(e,t){var n=/L?\\s*([-\\d.e]+)[\\s,]*([-\\d.e]+)*/gi,o=[];e.replace(n,(function(e,t,n){o.push({x:parseFloat(t),y:parseFloat(n)})}));return i.create(o,t)};\n/**\n         * Returns the centre (centroid) of the set of vertices.\n         * @method centre\n         * @param {vertices} vertices\n         * @return {vector} The centre point\n         */i.centre=function(e){var t,n,r,a=i.area(e,true),s={x:0,y:0};for(var l=0;l<e.length;l++){r=(l+1)%e.length;t=o.cross(e[l],e[r]);n=o.mult(o.add(e[l],e[r]),t);s=o.add(s,n)}return o.div(s,6*a)};\n/**\n         * Returns the average (mean) of the set of vertices.\n         * @method mean\n         * @param {vertices} vertices\n         * @return {vector} The average point\n         */i.mean=function(e){var t={x:0,y:0};for(var n=0;n<e.length;n++){t.x+=e[n].x;t.y+=e[n].y}return o.div(t,e.length)};\n/**\n         * Returns the area of the set of vertices.\n         * @method area\n         * @param {vertices} vertices\n         * @param {bool} signed\n         * @return {number} The area\n         */i.area=function(e,t){var n=0,i=e.length-1;for(var o=0;o<e.length;o++){n+=(e[i].x-e[o].x)*(e[i].y+e[o].y);i=o}return t?n/2:Math.abs(n)/2};\n/**\n         * Returns the moment of inertia (second moment of area) of the set of vertices given the total mass.\n         * @method inertia\n         * @param {vertices} vertices\n         * @param {number} mass\n         * @return {number} The polygon's moment of inertia\n         */i.inertia=function(e,t){var n,i,r=0,a=0,s=e;for(var l=0;l<s.length;l++){i=(l+1)%s.length;n=Math.abs(o.cross(s[i],s[l]));r+=n*(o.dot(s[i],s[i])+o.dot(s[i],s[l])+o.dot(s[l],s[l]));a+=n}return t/6*(r/a)};\n/**\n         * Translates the set of vertices in-place.\n         * @method translate\n         * @param {vertices} vertices\n         * @param {vector} vector\n         * @param {number} scalar\n         */i.translate=function(e,t,n){n=\"undefined\"!==typeof n?n:1;var i,o=e.length,r=t.x*n,a=t.y*n;for(i=0;i<o;i++){e[i].x+=r;e[i].y+=a}return e};\n/**\n         * Rotates the set of vertices in-place.\n         * @method rotate\n         * @param {vertices} vertices\n         * @param {number} angle\n         * @param {vector} point\n         */i.rotate=function(e,t,n){if(0!==t){var i,o,r,a,s=Math.cos(t),l=Math.sin(t),c=n.x,u=n.y,f=e.length;for(a=0;a<f;a++){i=e[a];o=i.x-c;r=i.y-u;i.x=c+(o*s-r*l);i.y=u+(o*l+r*s)}return e}};\n/**\n         * Returns `true` if the `point` is inside the set of `vertices`.\n         * @method contains\n         * @param {vertices} vertices\n         * @param {vector} point\n         * @return {boolean} True if the vertices contains point, otherwise false\n         */i.contains=function(e,t){var n,i=t.x,o=t.y,r=e.length,a=e[r-1];for(var s=0;s<r;s++){n=e[s];if((i-a.x)*(n.y-a.y)+(o-a.y)*(a.x-n.x)>0)return false;a=n}return true};\n/**\n         * Scales the vertices from a point (default is centre) in-place.\n         * @method scale\n         * @param {vertices} vertices\n         * @param {number} scaleX\n         * @param {number} scaleY\n         * @param {vector} point\n         */i.scale=function(e,t,n,r){if(1===t&&1===n)return e;r=r||i.centre(e);var a,s;for(var l=0;l<e.length;l++){a=e[l];s=o.sub(a,r);e[l].x=r.x+s.x*t;e[l].y=r.y+s.y*n}return e};\n/**\n         * Chamfers a set of vertices by giving them rounded corners, returns a new set of vertices.\n         * The radius parameter is a single number or an array to specify the radius for each vertex.\n         * @method chamfer\n         * @param {vertices} vertices\n         * @param {number[]} radius\n         * @param {number} quality\n         * @param {number} qualityMin\n         * @param {number} qualityMax\n         */i.chamfer=function(e,t,n,i,a){t=\"number\"===typeof t?[t]:t||[8];n=\"undefined\"!==typeof n?n:-1;i=i||2;a=a||14;var s=[];for(var l=0;l<e.length;l++){var c=e[l-1>=0?l-1:e.length-1],u=e[l],f=e[(l+1)%e.length],d=t[l<t.length?l:t.length-1];if(0!==d){var p=o.normalise({x:u.y-c.y,y:c.x-u.x});var v=o.normalise({x:f.y-u.y,y:u.x-f.x});var y=Math.sqrt(2*Math.pow(d,2)),m=o.mult(r.clone(p),d),g=o.normalise(o.mult(o.add(p,v),.5)),x=o.sub(u,o.mult(g,y));var h=n;-1===n&&(h=1.75*Math.pow(d,.32));h=r.clamp(h,i,a);h%2===1&&(h+=1);var b=Math.acos(o.dot(p,v)),S=b/h;for(var w=0;w<h;w++)s.push(o.add(o.rotate(m,S*w),x))}else s.push(u)}return s};\n/**\n         * Sorts the input vertices into clockwise order in place.\n         * @method clockwiseSort\n         * @param {vertices} vertices\n         * @return {vertices} vertices\n         */i.clockwiseSort=function(e){var t=i.mean(e);e.sort((function(e,n){return o.angle(t,e)-o.angle(t,n)}));return e};\n/**\n         * Returns true if the vertices form a convex shape (vertices must be in clockwise order).\n         * @method isConvex\n         * @param {vertices} vertices\n         * @return {bool} `true` if the `vertices` are convex, `false` if not (or `null` if not computable).\n         */i.isConvex=function(e){var t,n,i,o,r=0,a=e.length;if(a<3)return null;for(t=0;t<a;t++){n=(t+1)%a;i=(t+2)%a;o=(e[n].x-e[t].x)*(e[i].y-e[n].y);o-=(e[n].y-e[t].y)*(e[i].x-e[n].x);o<0?r|=1:o>0&&(r|=2);if(3===r)return false}return 0!==r||null};\n/**\n         * Returns the convex hull of the input vertices as a new array of points.\n         * @method hull\n         * @param {vertices} vertices\n         * @return [vertex] vertices\n         */i.hull=function(e){var t,n,i=[],r=[];e=e.slice(0);e.sort((function(e,t){var n=e.x-t.x;return 0!==n?n:e.y-t.y}));for(n=0;n<e.length;n+=1){t=e[n];while(r.length>=2&&o.cross3(r[r.length-2],r[r.length-1],t)<=0)r.pop();r.push(t)}for(n=e.length-1;n>=0;n-=1){t=e[n];while(i.length>=2&&o.cross3(i[i.length-2],i[i.length-1],t)<=0)i.pop();i.push(t)}i.pop();r.pop();return i.concat(r)}})()},function(e,t,n){var i={};e.exports=i;var o=n(0);(function(){\n/**\n         * Subscribes a callback function to the given object's `eventName`.\n         * @method on\n         * @param {} object\n         * @param {string} eventNames\n         * @param {function} callback\n         */\ni.on=function(e,t,n){var i,o=t.split(\" \");for(var r=0;r<o.length;r++){i=o[r];e.events=e.events||{};e.events[i]=e.events[i]||[];e.events[i].push(n)}return n};\n/**\n         * Removes the given event callback. If no callback, clears all callbacks in `eventNames`. If no `eventNames`, clears all events.\n         * @method off\n         * @param {} object\n         * @param {string} eventNames\n         * @param {function} callback\n         */i.off=function(e,t,n){if(t){if(\"function\"===typeof t){n=t;t=o.keys(e.events).join(\" \")}var i=t.split(\" \");for(var r=0;r<i.length;r++){var a=e.events[i[r]],s=[];if(n&&a)for(var l=0;l<a.length;l++)a[l]!==n&&s.push(a[l]);e.events[i[r]]=s}}else e.events={}};\n/**\n         * Fires all the callbacks subscribed to the given object's `eventName`, in the order they subscribed, if any.\n         * @method trigger\n         * @param {} object\n         * @param {string} eventNames\n         * @param {} event\n         */i.trigger=function(e,t,n){var i,r,a,s;var l=e.events;if(l&&o.keys(l).length>0){n||(n={});i=t.split(\" \");for(var c=0;c<i.length;c++){r=i[c];a=l[r];if(a){s=o.clone(n,false);s.name=r;s.source=e;for(var u=0;u<a.length;u++)a[u].apply(e,[s])}}}}})()},function(e,t,n){var i={};e.exports=i;var o=n(4);var r=n(0);var a=n(1);var s=n(6);(function(){\n/**\n         * Creates a new composite. The options parameter is an object that specifies any properties you wish to override the defaults.\n         * See the properites section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {} [options]\n         * @return {composite} A new composite\n         */\ni.create=function(e){return r.extend({id:r.nextId(),type:\"composite\",parent:null,isModified:false,bodies:[],constraints:[],composites:[],label:\"Composite\",plugin:{},cache:{allBodies:null,allConstraints:null,allComposites:null}},e)};\n/**\n         * Sets the composite's `isModified` flag. \n         * If `updateParents` is true, all parents will be set (default: false).\n         * If `updateChildren` is true, all children will be set (default: false).\n         * @private\n         * @method setModified\n         * @param {composite} composite\n         * @param {boolean} isModified\n         * @param {boolean} [updateParents=false]\n         * @param {boolean} [updateChildren=false]\n         */i.setModified=function(e,t,n,o){e.isModified=t;if(t&&e.cache){e.cache.allBodies=null;e.cache.allConstraints=null;e.cache.allComposites=null}n&&e.parent&&i.setModified(e.parent,t,n,o);if(o)for(var r=0;r<e.composites.length;r++){var a=e.composites[r];i.setModified(a,t,n,o)}};\n/**\n         * Generic single or multi-add function. Adds a single or an array of body(s), constraint(s) or composite(s) to the given composite.\n         * Triggers `beforeAdd` and `afterAdd` events on the `composite`.\n         * @method add\n         * @param {composite} composite\n         * @param {object|array} object A single or an array of body(s), constraint(s) or composite(s)\n         * @return {composite} The original composite with the objects added\n         */i.add=function(e,t){var n=[].concat(t);o.trigger(e,\"beforeAdd\",{object:t});for(var a=0;a<n.length;a++){var s=n[a];switch(s.type){case\"body\":if(s.parent!==s){r.warn(\"Composite.add: skipped adding a compound body part (you must add its parent instead)\");break}i.addBody(e,s);break;case\"constraint\":i.addConstraint(e,s);break;case\"composite\":i.addComposite(e,s);break;case\"mouseConstraint\":i.addConstraint(e,s.constraint);break}}o.trigger(e,\"afterAdd\",{object:t});return e};\n/**\n         * Generic remove function. Removes one or many body(s), constraint(s) or a composite(s) to the given composite.\n         * Optionally searching its children recursively.\n         * Triggers `beforeRemove` and `afterRemove` events on the `composite`.\n         * @method remove\n         * @param {composite} composite\n         * @param {object|array} object\n         * @param {boolean} [deep=false]\n         * @return {composite} The original composite with the objects removed\n         */i.remove=function(e,t,n){var r=[].concat(t);o.trigger(e,\"beforeRemove\",{object:t});for(var a=0;a<r.length;a++){var s=r[a];switch(s.type){case\"body\":i.removeBody(e,s,n);break;case\"constraint\":i.removeConstraint(e,s,n);break;case\"composite\":i.removeComposite(e,s,n);break;case\"mouseConstraint\":i.removeConstraint(e,s.constraint);break}}o.trigger(e,\"afterRemove\",{object:t});return e};\n/**\n         * Adds a composite to the given composite.\n         * @private\n         * @method addComposite\n         * @param {composite} compositeA\n         * @param {composite} compositeB\n         * @return {composite} The original compositeA with the objects from compositeB added\n         */i.addComposite=function(e,t){e.composites.push(t);t.parent=e;i.setModified(e,true,true,false);return e};\n/**\n         * Removes a composite from the given composite, and optionally searching its children recursively.\n         * @private\n         * @method removeComposite\n         * @param {composite} compositeA\n         * @param {composite} compositeB\n         * @param {boolean} [deep=false]\n         * @return {composite} The original compositeA with the composite removed\n         */i.removeComposite=function(e,t,n){var o=r.indexOf(e.composites,t);-1!==o&&i.removeCompositeAt(e,o);if(n)for(var a=0;a<e.composites.length;a++)i.removeComposite(e.composites[a],t,true);return e};\n/**\n         * Removes a composite from the given composite.\n         * @private\n         * @method removeCompositeAt\n         * @param {composite} composite\n         * @param {number} position\n         * @return {composite} The original composite with the composite removed\n         */i.removeCompositeAt=function(e,t){e.composites.splice(t,1);i.setModified(e,true,true,false);return e};\n/**\n         * Adds a body to the given composite.\n         * @private\n         * @method addBody\n         * @param {composite} composite\n         * @param {body} body\n         * @return {composite} The original composite with the body added\n         */i.addBody=function(e,t){e.bodies.push(t);i.setModified(e,true,true,false);return e};\n/**\n         * Removes a body from the given composite, and optionally searching its children recursively.\n         * @private\n         * @method removeBody\n         * @param {composite} composite\n         * @param {body} body\n         * @param {boolean} [deep=false]\n         * @return {composite} The original composite with the body removed\n         */i.removeBody=function(e,t,n){var o=r.indexOf(e.bodies,t);-1!==o&&i.removeBodyAt(e,o);if(n)for(var a=0;a<e.composites.length;a++)i.removeBody(e.composites[a],t,true);return e};\n/**\n         * Removes a body from the given composite.\n         * @private\n         * @method removeBodyAt\n         * @param {composite} composite\n         * @param {number} position\n         * @return {composite} The original composite with the body removed\n         */i.removeBodyAt=function(e,t){e.bodies.splice(t,1);i.setModified(e,true,true,false);return e};\n/**\n         * Adds a constraint to the given composite.\n         * @private\n         * @method addConstraint\n         * @param {composite} composite\n         * @param {constraint} constraint\n         * @return {composite} The original composite with the constraint added\n         */i.addConstraint=function(e,t){e.constraints.push(t);i.setModified(e,true,true,false);return e};\n/**\n         * Removes a constraint from the given composite, and optionally searching its children recursively.\n         * @private\n         * @method removeConstraint\n         * @param {composite} composite\n         * @param {constraint} constraint\n         * @param {boolean} [deep=false]\n         * @return {composite} The original composite with the constraint removed\n         */i.removeConstraint=function(e,t,n){var o=r.indexOf(e.constraints,t);-1!==o&&i.removeConstraintAt(e,o);if(n)for(var a=0;a<e.composites.length;a++)i.removeConstraint(e.composites[a],t,true);return e};\n/**\n         * Removes a body from the given composite.\n         * @private\n         * @method removeConstraintAt\n         * @param {composite} composite\n         * @param {number} position\n         * @return {composite} The original composite with the constraint removed\n         */i.removeConstraintAt=function(e,t){e.constraints.splice(t,1);i.setModified(e,true,true,false);return e};\n/**\n         * Removes all bodies, constraints and composites from the given composite.\n         * Optionally clearing its children recursively.\n         * @method clear\n         * @param {composite} composite\n         * @param {boolean} keepStatic\n         * @param {boolean} [deep=false]\n         */i.clear=function(e,t,n){if(n)for(var o=0;o<e.composites.length;o++)i.clear(e.composites[o],t,true);t?e.bodies=e.bodies.filter((function(e){return e.isStatic})):e.bodies.length=0;e.constraints.length=0;e.composites.length=0;i.setModified(e,true,true,false);return e};\n/**\n         * Returns all bodies in the given composite, including all bodies in its children, recursively.\n         * @method allBodies\n         * @param {composite} composite\n         * @return {body[]} All the bodies\n         */i.allBodies=function(e){if(e.cache&&e.cache.allBodies)return e.cache.allBodies;var t=[].concat(e.bodies);for(var n=0;n<e.composites.length;n++)t=t.concat(i.allBodies(e.composites[n]));e.cache&&(e.cache.allBodies=t);return t};\n/**\n         * Returns all constraints in the given composite, including all constraints in its children, recursively.\n         * @method allConstraints\n         * @param {composite} composite\n         * @return {constraint[]} All the constraints\n         */i.allConstraints=function(e){if(e.cache&&e.cache.allConstraints)return e.cache.allConstraints;var t=[].concat(e.constraints);for(var n=0;n<e.composites.length;n++)t=t.concat(i.allConstraints(e.composites[n]));e.cache&&(e.cache.allConstraints=t);return t};\n/**\n         * Returns all composites in the given composite, including all composites in its children, recursively.\n         * @method allComposites\n         * @param {composite} composite\n         * @return {composite[]} All the composites\n         */i.allComposites=function(e){if(e.cache&&e.cache.allComposites)return e.cache.allComposites;var t=[].concat(e.composites);for(var n=0;n<e.composites.length;n++)t=t.concat(i.allComposites(e.composites[n]));e.cache&&(e.cache.allComposites=t);return t};\n/**\n         * Searches the composite recursively for an object matching the type and id supplied, null if not found.\n         * @method get\n         * @param {composite} composite\n         * @param {number} id\n         * @param {string} type\n         * @return {object} The requested object, if found\n         */i.get=function(e,t,n){var o,r;switch(n){case\"body\":o=i.allBodies(e);break;case\"constraint\":o=i.allConstraints(e);break;case\"composite\":o=i.allComposites(e).concat(e);break}if(!o)return null;r=o.filter((function(e){return e.id.toString()===t.toString()}));return 0===r.length?null:r[0]};\n/**\n         * Moves the given object(s) from compositeA to compositeB (equal to a remove followed by an add).\n         * @method move\n         * @param {compositeA} compositeA\n         * @param {object[]} objects\n         * @param {compositeB} compositeB\n         * @return {composite} Returns compositeA\n         */i.move=function(e,t,n){i.remove(e,t);i.add(n,t);return e};\n/**\n         * Assigns new ids for all objects in the composite, recursively.\n         * @method rebase\n         * @param {composite} composite\n         * @return {composite} Returns composite\n         */i.rebase=function(e){var t=i.allBodies(e).concat(i.allConstraints(e)).concat(i.allComposites(e));for(var n=0;n<t.length;n++)t[n].id=r.nextId();return e};\n/**\n         * Translates all children in the composite by a given vector relative to their current positions, \n         * without imparting any velocity.\n         * @method translate\n         * @param {composite} composite\n         * @param {vector} translation\n         * @param {bool} [recursive=true]\n         */i.translate=function(e,t,n){var o=n?i.allBodies(e):e.bodies;for(var r=0;r<o.length;r++)s.translate(o[r],t);return e};\n/**\n         * Rotates all children in the composite by a given angle about the given point, without imparting any angular velocity.\n         * @method rotate\n         * @param {composite} composite\n         * @param {number} rotation\n         * @param {vector} point\n         * @param {bool} [recursive=true]\n         */i.rotate=function(e,t,n,o){var r=Math.cos(t),a=Math.sin(t),l=o?i.allBodies(e):e.bodies;for(var c=0;c<l.length;c++){var u=l[c],f=u.position.x-n.x,d=u.position.y-n.y;s.setPosition(u,{x:n.x+(f*r-d*a),y:n.y+(f*a+d*r)});s.rotate(u,t)}return e};\n/**\n         * Scales all children in the composite, including updating physical properties (mass, area, axes, inertia), from a world-space point.\n         * @method scale\n         * @param {composite} composite\n         * @param {number} scaleX\n         * @param {number} scaleY\n         * @param {vector} point\n         * @param {bool} [recursive=true]\n         */i.scale=function(e,t,n,o,r){var a=r?i.allBodies(e):e.bodies;for(var l=0;l<a.length;l++){var c=a[l],u=c.position.x-o.x,f=c.position.y-o.y;s.setPosition(c,{x:o.x+u*t,y:o.y+f*n});s.scale(c,t,n)}return e};\n/**\n         * Returns the union of the bounds of all of the composite's bodies.\n         * @method bounds\n         * @param {composite} composite The composite.\n         * @returns {bounds} The composite bounds.\n         */i.bounds=function(e){var t=i.allBodies(e),n=[];for(var o=0;o<t.length;o+=1){var r=t[o];n.push(r.bounds.min,r.bounds.max)}return a.create(n)};\n/**\n        * Fired when a call to `Composite.add` is made, before objects have been added.\n        *\n        * @event beforeAdd\n        * @param {} event An event object\n        * @param {} event.object The object(s) to be added (may be a single body, constraint, composite or a mixed array of these)\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when a call to `Composite.add` is made, after objects have been added.\n        *\n        * @event afterAdd\n        * @param {} event An event object\n        * @param {} event.object The object(s) that have been added (may be a single body, constraint, composite or a mixed array of these)\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when a call to `Composite.remove` is made, before objects have been removed.\n        *\n        * @event beforeRemove\n        * @param {} event An event object\n        * @param {} event.object The object(s) to be removed (may be a single body, constraint, composite or a mixed array of these)\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when a call to `Composite.remove` is made, after objects have been removed.\n        *\n        * @event afterRemove\n        * @param {} event An event object\n        * @param {} event.object The object(s) that have been removed (may be a single body, constraint, composite or a mixed array of these)\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n         * An integer `Number` uniquely identifying number generated in `Composite.create` by `Common.nextId`.\n         *\n         * @property id\n         * @type number\n         */\n/**\n         * A `String` denoting the type of object.\n         *\n         * @property type\n         * @type string\n         * @default \"composite\"\n         * @readOnly\n         */\n/**\n         * An arbitrary `String` name to help the user identify and manage composites.\n         *\n         * @property label\n         * @type string\n         * @default \"Composite\"\n         */\n/**\n         * A flag that specifies whether the composite has been modified during the current step.\n         * This is automatically managed when bodies, constraints or composites are added or removed.\n         *\n         * @property isModified\n         * @type boolean\n         * @default false\n         */\n/**\n         * The `Composite` that is the parent of this composite. It is automatically managed by the `Matter.Composite` methods.\n         *\n         * @property parent\n         * @type composite\n         * @default null\n         */\n/**\n         * An array of `Body` that are _direct_ children of this composite.\n         * To add or remove bodies you should use `Composite.add` and `Composite.remove` methods rather than directly modifying this property.\n         * If you wish to recursively find all descendants, you should use the `Composite.allBodies` method.\n         *\n         * @property bodies\n         * @type body[]\n         * @default []\n         */\n/**\n         * An array of `Constraint` that are _direct_ children of this composite.\n         * To add or remove constraints you should use `Composite.add` and `Composite.remove` methods rather than directly modifying this property.\n         * If you wish to recursively find all descendants, you should use the `Composite.allConstraints` method.\n         *\n         * @property constraints\n         * @type constraint[]\n         * @default []\n         */\n/**\n         * An array of `Composite` that are _direct_ children of this composite.\n         * To add or remove composites you should use `Composite.add` and `Composite.remove` methods rather than directly modifying this property.\n         * If you wish to recursively find all descendants, you should use the `Composite.allComposites` method.\n         *\n         * @property composites\n         * @type composite[]\n         * @default []\n         */\n/**\n         * An object reserved for storing plugin-specific properties.\n         *\n         * @property plugin\n         * @type {}\n         */\n/**\n         * An object used for storing cached results for performance reasons.\n         * This is used internally only and is automatically managed.\n         *\n         * @private\n         * @property cache\n         * @type {}\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(2);var a=n(7);n(16);var s=n(0);var l=n(1);var c=n(11);(function(){i._inertiaScale=4;i._nextCollidingGroupId=1;i._nextNonCollidingGroupId=-1;i._nextCategory=1;\n/**\n         * Creates a new rigid body model. The options parameter is an object that specifies any properties you wish to override the defaults.\n         * All properties have default values, and many are pre-calculated automatically based on other properties.\n         * Vertices must be specified in clockwise order.\n         * See the properties section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {} options\n         * @return {body} body\n         */i.create=function(e){var t={id:s.nextId(),type:\"body\",label:\"Body\",parts:[],plugin:{},angle:0,vertices:o.fromPath(\"L 0 0 L 40 0 L 40 40 L 0 40\"),position:{x:0,y:0},force:{x:0,y:0},torque:0,positionImpulse:{x:0,y:0},constraintImpulse:{x:0,y:0,angle:0},totalContacts:0,speed:0,angularSpeed:0,velocity:{x:0,y:0},angularVelocity:0,isSensor:false,isStatic:false,isSleeping:false,motion:0,sleepThreshold:60,density:.001,restitution:0,friction:.1,frictionStatic:.5,frictionAir:.01,collisionFilter:{category:1,mask:4294967295,group:0},slop:.05,timeScale:1,render:{visible:true,opacity:1,strokeStyle:null,fillStyle:null,lineWidth:null,sprite:{xScale:1,yScale:1,xOffset:0,yOffset:0}},events:null,bounds:null,chamfer:null,circleRadius:0,positionPrev:null,anglePrev:0,parent:null,axes:null,area:0,mass:0,inertia:0,_original:null};var n=s.extend(t,e);_initProperties(n,e);return n};\n/**\n         * Returns the next unique group index for which bodies will collide.\n         * If `isNonColliding` is `true`, returns the next unique group index for which bodies will _not_ collide.\n         * See `body.collisionFilter` for more information.\n         * @method nextGroup\n         * @param {bool} [isNonColliding=false]\n         * @return {Number} Unique group index\n         */i.nextGroup=function(e){return e?i._nextNonCollidingGroupId--:i._nextCollidingGroupId++};i.nextCategory=function(){i._nextCategory=i._nextCategory<<1;return i._nextCategory};\n/**\n         * Initialises body properties.\n         * @method _initProperties\n         * @private\n         * @param {body} body\n         * @param {} [options]\n         */var _initProperties=function(e,t){t=t||{};i.set(e,{bounds:e.bounds||l.create(e.vertices),positionPrev:e.positionPrev||r.clone(e.position),anglePrev:e.anglePrev||e.angle,vertices:e.vertices,parts:e.parts||[e],isStatic:e.isStatic,isSleeping:e.isSleeping,parent:e.parent||e});o.rotate(e.vertices,e.angle,e.position);c.rotate(e.axes,e.angle);l.update(e.bounds,e.vertices,e.velocity);i.set(e,{axes:t.axes||e.axes,area:t.area||e.area,mass:t.mass||e.mass,inertia:t.inertia||e.inertia});var n=e.isStatic?\"#14151f\":s.choose([\"#f19648\",\"#f5d259\",\"#f55a3c\",\"#063e7b\",\"#ececd1\"]),a=e.isStatic?\"#555\":\"#ccc\",u=e.isStatic&&null===e.render.fillStyle?1:0;e.render.fillStyle=e.render.fillStyle||n;e.render.strokeStyle=e.render.strokeStyle||a;e.render.lineWidth=e.render.lineWidth||u;e.render.sprite.xOffset+=-(e.bounds.min.x-e.position.x)/(e.bounds.max.x-e.bounds.min.x);e.render.sprite.yOffset+=-(e.bounds.min.y-e.position.y)/(e.bounds.max.y-e.bounds.min.y)};\n/**\n         * Given a property and a value (or map of), sets the property(s) on the body, using the appropriate setter functions if they exist.\n         * Prefer to use the actual setter functions in performance critical situations.\n         * @method set\n         * @param {body} body\n         * @param {} settings A property name (or map of properties and values) to set on the body.\n         * @param {} value The value to set if `settings` is a single property name.\n         */i.set=function(e,t,n){var o;if(\"string\"===typeof t){o=t;t={};t[o]=n}for(o in t)if(Object.prototype.hasOwnProperty.call(t,o)){n=t[o];switch(o){case\"isStatic\":i.setStatic(e,n);break;case\"isSleeping\":a.set(e,n);break;case\"mass\":i.setMass(e,n);break;case\"density\":i.setDensity(e,n);break;case\"inertia\":i.setInertia(e,n);break;case\"vertices\":i.setVertices(e,n);break;case\"position\":i.setPosition(e,n);break;case\"angle\":i.setAngle(e,n);break;case\"velocity\":i.setVelocity(e,n);break;case\"angularVelocity\":i.setAngularVelocity(e,n);break;case\"parts\":i.setParts(e,n);break;case\"centre\":i.setCentre(e,n);break;default:e[o]=n}}};\n/**\n         * Sets the body as static, including isStatic flag and setting mass and inertia to Infinity.\n         * @method setStatic\n         * @param {body} body\n         * @param {bool} isStatic\n         */i.setStatic=function(e,t){for(var n=0;n<e.parts.length;n++){var i=e.parts[n];i.isStatic=t;if(t){i._original={restitution:i.restitution,friction:i.friction,mass:i.mass,inertia:i.inertia,density:i.density,inverseMass:i.inverseMass,inverseInertia:i.inverseInertia};i.restitution=0;i.friction=1;i.mass=i.inertia=i.density=Infinity;i.inverseMass=i.inverseInertia=0;i.positionPrev.x=i.position.x;i.positionPrev.y=i.position.y;i.anglePrev=i.angle;i.angularVelocity=0;i.speed=0;i.angularSpeed=0;i.motion=0}else if(i._original){i.restitution=i._original.restitution;i.friction=i._original.friction;i.mass=i._original.mass;i.inertia=i._original.inertia;i.density=i._original.density;i.inverseMass=i._original.inverseMass;i.inverseInertia=i._original.inverseInertia;i._original=null}}};\n/**\n         * Sets the mass of the body. Inverse mass, density and inertia are automatically updated to reflect the change.\n         * @method setMass\n         * @param {body} body\n         * @param {number} mass\n         */i.setMass=function(e,t){var n=e.inertia/(e.mass/6);e.inertia=n*(t/6);e.inverseInertia=1/e.inertia;e.mass=t;e.inverseMass=1/e.mass;e.density=e.mass/e.area};\n/**\n         * Sets the density of the body. Mass and inertia are automatically updated to reflect the change.\n         * @method setDensity\n         * @param {body} body\n         * @param {number} density\n         */i.setDensity=function(e,t){i.setMass(e,t*e.area);e.density=t};\n/**\n         * Sets the moment of inertia (i.e. second moment of area) of the body. \n         * Inverse inertia is automatically updated to reflect the change. Mass is not changed.\n         * @method setInertia\n         * @param {body} body\n         * @param {number} inertia\n         */i.setInertia=function(e,t){e.inertia=t;e.inverseInertia=1/e.inertia};\n/**\n         * Sets the body's vertices and updates body properties accordingly, including inertia, area and mass (with respect to `body.density`).\n         * Vertices will be automatically transformed to be orientated around their centre of mass as the origin.\n         * They are then automatically translated to world space based on `body.position`.\n         *\n         * The `vertices` argument should be passed as an array of `Matter.Vector` points (or a `Matter.Vertices` array).\n         * Vertices must form a convex hull, concave hulls are not supported.\n         *\n         * @method setVertices\n         * @param {body} body\n         * @param {vector[]} vertices\n         */i.setVertices=function(e,t){t[0].body===e?e.vertices=t:e.vertices=o.create(t,e);e.axes=c.fromVertices(e.vertices);e.area=o.area(e.vertices);i.setMass(e,e.density*e.area);var n=o.centre(e.vertices);o.translate(e.vertices,n,-1);i.setInertia(e,i._inertiaScale*o.inertia(e.vertices,e.mass));o.translate(e.vertices,e.position);l.update(e.bounds,e.vertices,e.velocity)};\n/**\n         * Sets the parts of the `body` and updates mass, inertia and centroid.\n         * Each part will have its parent set to `body`.\n         * By default the convex hull will be automatically computed and set on `body`, unless `autoHull` is set to `false.`\n         * Note that this method will ensure that the first part in `body.parts` will always be the `body`.\n         * @method setParts\n         * @param {body} body\n         * @param [body] parts\n         * @param {bool} [autoHull=true]\n         */i.setParts=function(e,t,n){var r;t=t.slice(0);e.parts.length=0;e.parts.push(e);e.parent=e;for(r=0;r<t.length;r++){var a=t[r];if(a!==e){a.parent=e;e.parts.push(a)}}if(1!==e.parts.length){n=\"undefined\"===typeof n||n;if(n){var s=[];for(r=0;r<t.length;r++)s=s.concat(t[r].vertices);o.clockwiseSort(s);var l=o.hull(s),c=o.centre(l);i.setVertices(e,l);o.translate(e.vertices,c)}var u=i._totalProperties(e);e.area=u.area;e.parent=e;e.position.x=u.centre.x;e.position.y=u.centre.y;e.positionPrev.x=u.centre.x;e.positionPrev.y=u.centre.y;i.setMass(e,u.mass);i.setInertia(e,u.inertia);i.setPosition(e,u.centre)}};\n/**\n         * Set the centre of mass of the body. \n         * The `centre` is a vector in world-space unless `relative` is set, in which case it is a translation.\n         * The centre of mass is the point the body rotates about and can be used to simulate non-uniform density.\n         * This is equal to moving `body.position` but not the `body.vertices`.\n         * Invalid if the `centre` falls outside the body's convex hull.\n         * @method setCentre\n         * @param {body} body\n         * @param {vector} centre\n         * @param {bool} relative\n         */i.setCentre=function(e,t,n){if(n){e.positionPrev.x+=t.x;e.positionPrev.y+=t.y;e.position.x+=t.x;e.position.y+=t.y}else{e.positionPrev.x=t.x-(e.position.x-e.positionPrev.x);e.positionPrev.y=t.y-(e.position.y-e.positionPrev.y);e.position.x=t.x;e.position.y=t.y}};\n/**\n         * Sets the position of the body instantly. Velocity, angle, force etc. are unchanged.\n         * @method setPosition\n         * @param {body} body\n         * @param {vector} position\n         */i.setPosition=function(e,t){var n=r.sub(t,e.position);e.positionPrev.x+=n.x;e.positionPrev.y+=n.y;for(var i=0;i<e.parts.length;i++){var a=e.parts[i];a.position.x+=n.x;a.position.y+=n.y;o.translate(a.vertices,n);l.update(a.bounds,a.vertices,e.velocity)}};\n/**\n         * Sets the angle of the body instantly. Angular velocity, position, force etc. are unchanged.\n         * @method setAngle\n         * @param {body} body\n         * @param {number} angle\n         */i.setAngle=function(e,t){var n=t-e.angle;e.anglePrev+=n;for(var i=0;i<e.parts.length;i++){var a=e.parts[i];a.angle+=n;o.rotate(a.vertices,n,e.position);c.rotate(a.axes,n);l.update(a.bounds,a.vertices,e.velocity);i>0&&r.rotateAbout(a.position,n,e.position,a.position)}};\n/**\n         * Sets the linear velocity of the body instantly. Position, angle, force etc. are unchanged. See also `Body.applyForce`.\n         * @method setVelocity\n         * @param {body} body\n         * @param {vector} velocity\n         */i.setVelocity=function(e,t){e.positionPrev.x=e.position.x-t.x;e.positionPrev.y=e.position.y-t.y;e.velocity.x=t.x;e.velocity.y=t.y;e.speed=r.magnitude(e.velocity)};\n/**\n         * Sets the angular velocity of the body instantly. Position, angle, force etc. are unchanged. See also `Body.applyForce`.\n         * @method setAngularVelocity\n         * @param {body} body\n         * @param {number} velocity\n         */i.setAngularVelocity=function(e,t){e.anglePrev=e.angle-t;e.angularVelocity=t;e.angularSpeed=Math.abs(e.angularVelocity)};\n/**\n         * Moves a body by a given vector relative to its current position, without imparting any velocity.\n         * @method translate\n         * @param {body} body\n         * @param {vector} translation\n         */i.translate=function(e,t){i.setPosition(e,r.add(e.position,t))};\n/**\n         * Rotates a body by a given angle relative to its current angle, without imparting any angular velocity.\n         * @method rotate\n         * @param {body} body\n         * @param {number} rotation\n         * @param {vector} [point]\n         */i.rotate=function(e,t,n){if(n){var o=Math.cos(t),r=Math.sin(t),a=e.position.x-n.x,s=e.position.y-n.y;i.setPosition(e,{x:n.x+(a*o-s*r),y:n.y+(a*r+s*o)});i.setAngle(e,e.angle+t)}else i.setAngle(e,e.angle+t)};\n/**\n         * Scales the body, including updating physical properties (mass, area, axes, inertia), from a world-space point (default is body centre).\n         * @method scale\n         * @param {body} body\n         * @param {number} scaleX\n         * @param {number} scaleY\n         * @param {vector} [point]\n         */i.scale=function(e,t,n,r){var a=0,s=0;r=r||e.position;for(var u=0;u<e.parts.length;u++){var f=e.parts[u];o.scale(f.vertices,t,n,r);f.axes=c.fromVertices(f.vertices);f.area=o.area(f.vertices);i.setMass(f,e.density*f.area);o.translate(f.vertices,{x:-f.position.x,y:-f.position.y});i.setInertia(f,i._inertiaScale*o.inertia(f.vertices,f.mass));o.translate(f.vertices,{x:f.position.x,y:f.position.y});if(u>0){a+=f.area;s+=f.inertia}f.position.x=r.x+(f.position.x-r.x)*t;f.position.y=r.y+(f.position.y-r.y)*n;l.update(f.bounds,f.vertices,e.velocity)}if(e.parts.length>1){e.area=a;if(!e.isStatic){i.setMass(e,e.density*a);i.setInertia(e,s)}}e.circleRadius&&(t===n?e.circleRadius*=t:e.circleRadius=null)};\n/**\n         * Performs a simulation step for the given `body`, including updating position and angle using Verlet integration.\n         * @method update\n         * @param {body} body\n         * @param {number} deltaTime\n         * @param {number} timeScale\n         * @param {number} correction\n         */i.update=function(e,t,n,i){var a=Math.pow(t*n*e.timeScale,2);var s=1-e.frictionAir*n*e.timeScale,u=e.position.x-e.positionPrev.x,f=e.position.y-e.positionPrev.y;e.velocity.x=u*s*i+e.force.x/e.mass*a;e.velocity.y=f*s*i+e.force.y/e.mass*a;e.positionPrev.x=e.position.x;e.positionPrev.y=e.position.y;e.position.x+=e.velocity.x;e.position.y+=e.velocity.y;e.angularVelocity=(e.angle-e.anglePrev)*s*i+e.torque/e.inertia*a;e.anglePrev=e.angle;e.angle+=e.angularVelocity;e.speed=r.magnitude(e.velocity);e.angularSpeed=Math.abs(e.angularVelocity);for(var d=0;d<e.parts.length;d++){var p=e.parts[d];o.translate(p.vertices,e.velocity);if(d>0){p.position.x+=e.velocity.x;p.position.y+=e.velocity.y}if(0!==e.angularVelocity){o.rotate(p.vertices,e.angularVelocity,e.position);c.rotate(p.axes,e.angularVelocity);d>0&&r.rotateAbout(p.position,e.angularVelocity,e.position,p.position)}l.update(p.bounds,p.vertices,e.velocity)}};\n/**\n         * Applies a force to a body from a given world-space position, including resulting torque.\n         * @method applyForce\n         * @param {body} body\n         * @param {vector} position\n         * @param {vector} force\n         */i.applyForce=function(e,t,n){e.force.x+=n.x;e.force.y+=n.y;var i={x:t.x-e.position.x,y:t.y-e.position.y};e.torque+=i.x*n.y-i.y*n.x};\n/**\n         * Returns the sums of the properties of all compound parts of the parent body.\n         * @method _totalProperties\n         * @private\n         * @param {body} body\n         * @return {}\n         */i._totalProperties=function(e){var t={mass:0,area:0,inertia:0,centre:{x:0,y:0}};for(var n=1===e.parts.length?0:1;n<e.parts.length;n++){var i=e.parts[n],o=Infinity!==i.mass?i.mass:1;t.mass+=o;t.area+=i.area;t.inertia+=i.inertia;t.centre=r.add(t.centre,r.mult(i.position,o))}t.centre=r.div(t.centre,t.mass);return t};\n/**\n        * Fired when a body starts sleeping (where `this` is the body).\n        *\n        * @event sleepStart\n        * @this {body} The body that has started sleeping\n        * @param {} event An event object\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when a body ends sleeping (where `this` is the body).\n        *\n        * @event sleepEnd\n        * @this {body} The body that has ended sleeping\n        * @param {} event An event object\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n         * An integer `Number` uniquely identifying number generated in `Body.create` by `Common.nextId`.\n         *\n         * @property id\n         * @type number\n         */\n/**\n         * A `String` denoting the type of object.\n         *\n         * @property type\n         * @type string\n         * @default \"body\"\n         * @readOnly\n         */\n/**\n         * An arbitrary `String` name to help the user identify and manage bodies.\n         *\n         * @property label\n         * @type string\n         * @default \"Body\"\n         */\n/**\n         * An array of bodies that make up this body. \n         * The first body in the array must always be a self reference to the current body instance.\n         * All bodies in the `parts` array together form a single rigid compound body.\n         * Parts are allowed to overlap, have gaps or holes or even form concave bodies.\n         * Parts themselves should never be added to a `World`, only the parent body should be.\n         * Use `Body.setParts` when setting parts to ensure correct updates of all properties.\n         *\n         * @property parts\n         * @type body[]\n         */\n/**\n         * An object reserved for storing plugin-specific properties.\n         *\n         * @property plugin\n         * @type {}\n         */\n/**\n         * A self reference if the body is _not_ a part of another body.\n         * Otherwise this is a reference to the body that this is a part of.\n         * See `body.parts`.\n         *\n         * @property parent\n         * @type body\n         */\n/**\n         * A `Number` specifying the angle of the body, in radians.\n         *\n         * @property angle\n         * @type number\n         * @default 0\n         */\n/**\n         * An array of `Vector` objects that specify the convex hull of the rigid body.\n         * These should be provided about the origin `(0, 0)`. E.g.\n         *\n         *     [{ x: 0, y: 0 }, { x: 25, y: 50 }, { x: 50, y: 0 }]\n         *\n         * When passed via `Body.create`, the vertices are translated relative to `body.position` (i.e. world-space, and constantly updated by `Body.update` during simulation).\n         * The `Vector` objects are also augmented with additional properties required for efficient collision detection. \n         *\n         * Other properties such as `inertia` and `bounds` are automatically calculated from the passed vertices (unless provided via `options`).\n         * Concave hulls are not currently supported. The module `Matter.Vertices` contains useful methods for working with vertices.\n         *\n         * @property vertices\n         * @type vector[]\n         */\n/**\n         * A `Vector` that specifies the current world-space position of the body.\n         *\n         * @property position\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Vector` that specifies the force to apply in the current step. It is zeroed after every `Body.update`. See also `Body.applyForce`.\n         *\n         * @property force\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Number` that specifies the torque (turning force) to apply in the current step. It is zeroed after every `Body.update`.\n         *\n         * @property torque\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that _measures_ the current speed of the body after the last `Body.update`. It is read-only and always positive (it's the magnitude of `body.velocity`).\n         *\n         * @readOnly\n         * @property speed\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that _measures_ the current angular speed of the body after the last `Body.update`. It is read-only and always positive (it's the magnitude of `body.angularVelocity`).\n         *\n         * @readOnly\n         * @property angularSpeed\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Vector` that _measures_ the current velocity of the body after the last `Body.update`. It is read-only. \n         * If you need to modify a body's velocity directly, you should either apply a force or simply change the body's `position` (as the engine uses position-Verlet integration).\n         *\n         * @readOnly\n         * @property velocity\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Number` that _measures_ the current angular velocity of the body after the last `Body.update`. It is read-only. \n         * If you need to modify a body's angular velocity directly, you should apply a torque or simply change the body's `angle` (as the engine uses position-Verlet integration).\n         *\n         * @readOnly\n         * @property angularVelocity\n         * @type number\n         * @default 0\n         */\n/**\n         * A flag that indicates whether a body is considered static. A static body can never change position or angle and is completely fixed.\n         * If you need to set a body as static after its creation, you should use `Body.setStatic` as this requires more than just setting this flag.\n         *\n         * @property isStatic\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag that indicates whether a body is a sensor. Sensor triggers collision events, but doesn't react with colliding body physically.\n         *\n         * @property isSensor\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag that indicates whether the body is considered sleeping. A sleeping body acts similar to a static body, except it is only temporary and can be awoken.\n         * If you need to set a body as sleeping, you should use `Sleeping.set` as this requires more than just setting this flag.\n         *\n         * @property isSleeping\n         * @type boolean\n         * @default false\n         */\n/**\n         * A `Number` that _measures_ the amount of movement a body currently has (a combination of `speed` and `angularSpeed`). It is read-only and always positive.\n         * It is used and updated by the `Matter.Sleeping` module during simulation to decide if a body has come to rest.\n         *\n         * @readOnly\n         * @property motion\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that defines the number of updates in which this body must have near-zero velocity before it is set as sleeping by the `Matter.Sleeping` module (if sleeping is enabled by the engine).\n         *\n         * @property sleepThreshold\n         * @type number\n         * @default 60\n         */\n/**\n         * A `Number` that defines the density of the body, that is its mass per unit area.\n         * If you pass the density via `Body.create` the `mass` property is automatically calculated for you based on the size (area) of the object.\n         * This is generally preferable to simply setting mass and allows for more intuitive definition of materials (e.g. rock has a higher density than wood).\n         *\n         * @property density\n         * @type number\n         * @default 0.001\n         */\n/**\n         * A `Number` that defines the mass of the body, although it may be more appropriate to specify the `density` property instead.\n         * If you modify this value, you must also modify the `body.inverseMass` property (`1 / mass`).\n         *\n         * @property mass\n         * @type number\n         */\n/**\n         * A `Number` that defines the inverse mass of the body (`1 / mass`).\n         * If you modify this value, you must also modify the `body.mass` property.\n         *\n         * @property inverseMass\n         * @type number\n         */\n/**\n         * A `Number` that defines the moment of inertia (i.e. second moment of area) of the body.\n         * It is automatically calculated from the given convex hull (`vertices` array) and density in `Body.create`.\n         * If you modify this value, you must also modify the `body.inverseInertia` property (`1 / inertia`).\n         *\n         * @property inertia\n         * @type number\n         */\n/**\n         * A `Number` that defines the inverse moment of inertia of the body (`1 / inertia`).\n         * If you modify this value, you must also modify the `body.inertia` property.\n         *\n         * @property inverseInertia\n         * @type number\n         */\n/**\n         * A `Number` that defines the restitution (elasticity) of the body. The value is always positive and is in the range `(0, 1)`.\n         * A value of `0` means collisions may be perfectly inelastic and no bouncing may occur. \n         * A value of `0.8` means the body may bounce back with approximately 80% of its kinetic energy.\n         * Note that collision response is based on _pairs_ of bodies, and that `restitution` values are _combined_ with the following formula:\n         *\n         *     Math.max(bodyA.restitution, bodyB.restitution)\n         *\n         * @property restitution\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that defines the friction of the body. The value is always positive and is in the range `(0, 1)`.\n         * A value of `0` means that the body may slide indefinitely.\n         * A value of `1` means the body may come to a stop almost instantly after a force is applied.\n         *\n         * The effects of the value may be non-linear. \n         * High values may be unstable depending on the body.\n         * The engine uses a Coulomb friction model including static and kinetic friction.\n         * Note that collision response is based on _pairs_ of bodies, and that `friction` values are _combined_ with the following formula:\n         *\n         *     Math.min(bodyA.friction, bodyB.friction)\n         *\n         * @property friction\n         * @type number\n         * @default 0.1\n         */\n/**\n         * A `Number` that defines the static friction of the body (in the Coulomb friction model). \n         * A value of `0` means the body will never 'stick' when it is nearly stationary and only dynamic `friction` is used.\n         * The higher the value (e.g. `10`), the more force it will take to initially get the body moving when nearly stationary.\n         * This value is multiplied with the `friction` property to make it easier to change `friction` and maintain an appropriate amount of static friction.\n         *\n         * @property frictionStatic\n         * @type number\n         * @default 0.5\n         */\n/**\n         * A `Number` that defines the air friction of the body (air resistance). \n         * A value of `0` means the body will never slow as it moves through space.\n         * The higher the value, the faster a body slows when moving through space.\n         * The effects of the value are non-linear. \n         *\n         * @property frictionAir\n         * @type number\n         * @default 0.01\n         */\n/**\n         * An `Object` that specifies the collision filtering properties of this body.\n         *\n         * Collisions between two bodies will obey the following rules:\n         * - If the two bodies have the same non-zero value of `collisionFilter.group`,\n         *   they will always collide if the value is positive, and they will never collide\n         *   if the value is negative.\n         * - If the two bodies have different values of `collisionFilter.group` or if one\n         *   (or both) of the bodies has a value of 0, then the category/mask rules apply as follows:\n         *\n         * Each body belongs to a collision category, given by `collisionFilter.category`. This\n         * value is used as a bit field and the category should have only one bit set, meaning that\n         * the value of this property is a power of two in the range [1, 2^31]. Thus, there are 32\n         * different collision categories available.\n         *\n         * Each body also defines a collision bitmask, given by `collisionFilter.mask` which specifies\n         * the categories it collides with (the value is the bitwise AND value of all these categories).\n         *\n         * Using the category/mask rules, two bodies `A` and `B` collide if each includes the other's\n         * category in its mask, i.e. `(categoryA & maskB) !== 0` and `(categoryB & maskA) !== 0`\n         * are both true.\n         *\n         * @property collisionFilter\n         * @type object\n         */\n/**\n         * An Integer `Number`, that specifies the collision group this body belongs to.\n         * See `body.collisionFilter` for more information.\n         *\n         * @property collisionFilter.group\n         * @type object\n         * @default 0\n         */\n/**\n         * A bit field that specifies the collision category this body belongs to.\n         * The category value should have only one bit set, for example `0x0001`.\n         * This means there are up to 32 unique collision categories available.\n         * See `body.collisionFilter` for more information.\n         *\n         * @property collisionFilter.category\n         * @type object\n         * @default 1\n         */\n/**\n         * A bit mask that specifies the collision categories this body may collide with.\n         * See `body.collisionFilter` for more information.\n         *\n         * @property collisionFilter.mask\n         * @type object\n         * @default -1\n         */\n/**\n         * A `Number` that specifies a tolerance on how far a body is allowed to 'sink' or rotate into other bodies.\n         * Avoid changing this value unless you understand the purpose of `slop` in physics engines.\n         * The default should generally suffice, although very large bodies may require larger values for stable stacking.\n         *\n         * @property slop\n         * @type number\n         * @default 0.05\n         */\n/**\n         * A `Number` that allows per-body time scaling, e.g. a force-field where bodies inside are in slow-motion, while others are at full speed.\n         *\n         * @property timeScale\n         * @type number\n         * @default 1\n         */\n/**\n         * An `Object` that defines the rendering properties to be consumed by the module `Matter.Render`.\n         *\n         * @property render\n         * @type object\n         */\n/**\n         * A flag that indicates if the body should be rendered.\n         *\n         * @property render.visible\n         * @type boolean\n         * @default true\n         */\n/**\n         * Sets the opacity to use when rendering.\n         *\n         * @property render.opacity\n         * @type number\n         * @default 1\n        */\n/**\n         * An `Object` that defines the sprite properties to use when rendering, if any.\n         *\n         * @property render.sprite\n         * @type object\n         */\n/**\n         * An `String` that defines the path to the image to use as the sprite texture, if any.\n         *\n         * @property render.sprite.texture\n         * @type string\n         */\n/**\n         * A `Number` that defines the scaling in the x-axis for the sprite, if any.\n         *\n         * @property render.sprite.xScale\n         * @type number\n         * @default 1\n         */\n/**\n         * A `Number` that defines the scaling in the y-axis for the sprite, if any.\n         *\n         * @property render.sprite.yScale\n         * @type number\n         * @default 1\n         */\n/**\n          * A `Number` that defines the offset in the x-axis for the sprite (normalised by texture width).\n          *\n          * @property render.sprite.xOffset\n          * @type number\n          * @default 0\n          */\n/**\n          * A `Number` that defines the offset in the y-axis for the sprite (normalised by texture height).\n          *\n          * @property render.sprite.yOffset\n          * @type number\n          * @default 0\n          */\n/**\n         * A `Number` that defines the line width to use when rendering the body outline (if a sprite is not defined).\n         * A value of `0` means no outline will be rendered.\n         *\n         * @property render.lineWidth\n         * @type number\n         * @default 0\n         */\n/**\n         * A `String` that defines the fill style to use when rendering the body (if a sprite is not defined).\n         * It is the same as when using a canvas, so it accepts CSS style property values.\n         *\n         * @property render.fillStyle\n         * @type string\n         * @default a random colour\n         */\n/**\n         * A `String` that defines the stroke style to use when rendering the body outline (if a sprite is not defined).\n         * It is the same as when using a canvas, so it accepts CSS style property values.\n         *\n         * @property render.strokeStyle\n         * @type string\n         * @default a random colour\n         */\n/**\n         * An array of unique axis vectors (edge normals) used for collision detection.\n         * These are automatically calculated from the given convex hull (`vertices` array) in `Body.create`.\n         * They are constantly updated by `Body.update` during the simulation.\n         *\n         * @property axes\n         * @type vector[]\n         */\n/**\n         * A `Number` that _measures_ the area of the body's convex hull, calculated at creation by `Body.create`.\n         *\n         * @property area\n         * @type string\n         * @default \n         */\n/**\n         * A `Bounds` object that defines the AABB region for the body.\n         * It is automatically calculated from the given convex hull (`vertices` array) in `Body.create` and constantly updated by `Body.update` during simulation.\n         *\n         * @property bounds\n         * @type bounds\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(4);(function(){i._motionWakeThreshold=.18;i._motionSleepThreshold=.08;i._minBias=.9;\n/**\n         * Puts bodies to sleep or wakes them up depending on their motion.\n         * @method update\n         * @param {body[]} bodies\n         * @param {number} timeScale\n         */i.update=function(e,t){var n=t*t*t;for(var o=0;o<e.length;o++){var r=e[o],a=r.speed*r.speed+r.angularSpeed*r.angularSpeed;if(0===r.force.x&&0===r.force.y){var s=Math.min(r.motion,a),l=Math.max(r.motion,a);r.motion=i._minBias*s+(1-i._minBias)*l;if(r.sleepThreshold>0&&r.motion<i._motionSleepThreshold*n){r.sleepCounter+=1;r.sleepCounter>=r.sleepThreshold&&i.set(r,true)}else r.sleepCounter>0&&(r.sleepCounter-=1)}else i.set(r,false)}};\n/**\n         * Given a set of colliding pairs, wakes the sleeping bodies involved.\n         * @method afterCollisions\n         * @param {pair[]} pairs\n         * @param {number} timeScale\n         */i.afterCollisions=function(e,t){var n=t*t*t;for(var o=0;o<e.length;o++){var r=e[o];if(r.isActive){var a=r.collision,s=a.bodyA.parent,l=a.bodyB.parent;if(!(s.isSleeping&&l.isSleeping||s.isStatic||l.isStatic)&&(s.isSleeping||l.isSleeping)){var c=s.isSleeping&&!s.isStatic?s:l,u=c===s?l:s;!c.isStatic&&u.motion>i._motionWakeThreshold*n&&i.set(c,false)}}}};\n/**\n         * Set a body as sleeping or awake.\n         * @method set\n         * @param {body} body\n         * @param {boolean} isSleeping\n         */i.set=function(e,t){var n=e.isSleeping;if(t){e.isSleeping=true;e.sleepCounter=e.sleepThreshold;e.positionImpulse.x=0;e.positionImpulse.y=0;e.positionPrev.x=e.position.x;e.positionPrev.y=e.position.y;e.anglePrev=e.angle;e.speed=0;e.angularSpeed=0;e.motion=0;n||o.trigger(e,\"sleepStart\")}else{e.isSleeping=false;e.sleepCounter=0;n&&o.trigger(e,\"sleepEnd\")}}})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(9);(function(){var e=[];var t={overlap:0,axis:null};var n={overlap:0,axis:null};\n/**\n         * Creates a new collision record.\n         * @method create\n         * @param {body} bodyA The first body part represented by the collision record\n         * @param {body} bodyB The second body part represented by the collision record\n         * @return {collision} A new collision record\n         */i.create=function(e,t){return{pair:null,collided:false,bodyA:e,bodyB:t,parentA:e.parent,parentB:t.parent,depth:0,normal:{x:0,y:0},tangent:{x:0,y:0},penetration:{x:0,y:0},supports:[]}};\n/**\n         * Detect collision between two bodies.\n         * @method collides\n         * @param {body} bodyA\n         * @param {body} bodyB\n         * @param {pairs} [pairs] Optionally reuse collision records from existing pairs.\n         * @return {collision|null} A collision record if detected, otherwise null\n         */i.collides=function(e,a,s){i._overlapAxes(t,e.vertices,a.vertices,e.axes);if(t.overlap<=0)return null;i._overlapAxes(n,a.vertices,e.vertices,a.axes);if(n.overlap<=0)return null;var l,c=s&&s.table[r.id(e,a)];if(c)l=c.collision;else{l=i.create(e,a);l.collided=true;l.bodyA=e.id<a.id?e:a;l.bodyB=e.id<a.id?a:e;l.parentA=l.bodyA.parent;l.parentB=l.bodyB.parent}e=l.bodyA;a=l.bodyB;var u;u=t.overlap<n.overlap?t:n;var f=l.normal,d=l.supports,p=u.axis,v=p.x,y=p.y;if(v*(a.position.x-e.position.x)+y*(a.position.y-e.position.y)<0){f.x=v;f.y=y}else{f.x=-v;f.y=-y}l.tangent.x=-f.y;l.tangent.y=f.x;l.depth=u.overlap;l.penetration.x=f.x*l.depth;l.penetration.y=f.y*l.depth;var m=i._findSupports(e,a,f,1),g=0;o.contains(e.vertices,m[0])&&(d[g++]=m[0]);o.contains(e.vertices,m[1])&&(d[g++]=m[1]);if(g<2){var x=i._findSupports(a,e,f,-1);o.contains(a.vertices,x[0])&&(d[g++]=x[0]);g<2&&o.contains(a.vertices,x[1])&&(d[g++]=x[1])}0===g&&(d[g++]=m[0]);d.length=g;return l};\n/**\n         * Find the overlap between two sets of vertices.\n         * @method _overlapAxes\n         * @private\n         * @param {object} result\n         * @param {vertices} verticesA\n         * @param {vertices} verticesB\n         * @param {axes} axes\n         */i._overlapAxes=function(e,t,n,i){var o,r,a,s,l,c,u=t.length,f=n.length,d=t[0].x,p=t[0].y,v=n[0].x,y=n[0].y,m=i.length,g=Number.MAX_VALUE,x=0;for(l=0;l<m;l++){var h=i[l],b=h.x,S=h.y,w=d*b+p*S,_=v*b+y*S,A=w,P=_;for(c=1;c<u;c+=1){s=t[c].x*b+t[c].y*S;s>A?A=s:s<w&&(w=s)}for(c=1;c<f;c+=1){s=n[c].x*b+n[c].y*S;s>P?P=s:s<_&&(_=s)}r=A-_;a=P-w;o=r<a?r:a;if(o<g){g=o;x=l;if(o<=0)break}}e.axis=i[x];e.overlap=g};\n/**\n         * Projects vertices on an axis and returns an interval.\n         * @method _projectToAxis\n         * @private\n         * @param {} projection\n         * @param {} vertices\n         * @param {} axis\n         */i._projectToAxis=function(e,t,n){var i=t[0].x*n.x+t[0].y*n.y,o=i;for(var r=1;r<t.length;r+=1){var a=t[r].x*n.x+t[r].y*n.y;a>o?o=a:a<i&&(i=a)}e.min=i;e.max=o};\n/**\n         * Finds supporting vertices given two bodies along a given direction using hill-climbing.\n         * @method _findSupports\n         * @private\n         * @param {body} bodyA\n         * @param {body} bodyB\n         * @param {vector} normal\n         * @param {number} direction\n         * @return [vector]\n         */i._findSupports=function(t,n,i,o){var r,a,s,l,c,u=n.vertices,f=u.length,d=t.position.x,p=t.position.y,v=i.x*o,y=i.y*o,m=Number.MAX_VALUE;for(c=0;c<f;c+=1){a=u[c];l=v*(d-a.x)+y*(p-a.y);if(l<m){m=l;r=a}}s=u[(f+r.index-1)%f];m=v*(d-s.x)+y*(p-s.y);a=u[(r.index+1)%f];if(v*(d-a.x)+y*(p-a.y)<m){e[0]=r;e[1]=a;return e}e[0]=r;e[1]=s;return e};\n/**\n         * A reference to the pair using this collision record, if there is one.\n         *\n         * @property pair\n         * @type {pair|null}\n         * @default null\n         */\n/**\n         * A flag that indicates if the bodies were colliding when the collision was last updated.\n         * \n         * @property collided\n         * @type boolean\n         * @default false\n         */\n/**\n         * The first body part represented by the collision (see also `collision.parentA`).\n         * \n         * @property bodyA\n         * @type body\n         */\n/**\n         * The second body part represented by the collision (see also `collision.parentB`).\n         * \n         * @property bodyB\n         * @type body\n         */\n/**\n         * The first body represented by the collision (i.e. `collision.bodyA.parent`).\n         * \n         * @property parentA\n         * @type body\n         */\n/**\n         * The second body represented by the collision (i.e. `collision.bodyB.parent`).\n         * \n         * @property parentB\n         * @type body\n         */\n/**\n         * A `Number` that represents the minimum separating distance between the bodies along the collision normal.\n         *\n         * @readOnly\n         * @property depth\n         * @type number\n         * @default 0\n         */\n/**\n         * A normalised `Vector` that represents the direction between the bodies that provides the minimum separating distance.\n         *\n         * @property normal\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A normalised `Vector` that is the tangent direction to the collision normal.\n         *\n         * @property tangent\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Vector` that represents the direction and depth of the collision.\n         *\n         * @property penetration\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * An array of body vertices that represent the support points in the collision.\n         * These are the deepest vertices (along the collision normal) of each body that are contained by the other body's vertices.\n         *\n         * @property supports\n         * @type vector[]\n         * @default []\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(17);(function(){\n/**\n         * Creates a pair.\n         * @method create\n         * @param {collision} collision\n         * @param {number} timestamp\n         * @return {pair} A new pair\n         */\ni.create=function(e,t){var n=e.bodyA,o=e.bodyB;var r={id:i.id(n,o),bodyA:n,bodyB:o,collision:e,contacts:[],activeContacts:[],separation:0,isActive:true,confirmedActive:true,isSensor:n.isSensor||o.isSensor,timeCreated:t,timeUpdated:t,inverseMass:0,friction:0,frictionStatic:0,restitution:0,slop:0};i.update(r,e,t);return r};\n/**\n         * Updates a pair given a collision.\n         * @method update\n         * @param {pair} pair\n         * @param {collision} collision\n         * @param {number} timestamp\n         */i.update=function(e,t,n){var i=e.contacts,r=t.supports,a=e.activeContacts,s=t.parentA,l=t.parentB,c=s.vertices.length;e.isActive=true;e.timeUpdated=n;e.collision=t;e.separation=t.depth;e.inverseMass=s.inverseMass+l.inverseMass;e.friction=s.friction<l.friction?s.friction:l.friction;e.frictionStatic=s.frictionStatic>l.frictionStatic?s.frictionStatic:l.frictionStatic;e.restitution=s.restitution>l.restitution?s.restitution:l.restitution;e.slop=s.slop>l.slop?s.slop:l.slop;t.pair=e;a.length=0;for(var u=0;u<r.length;u++){var f=r[u],d=f.body===s?f.index:c+f.index,p=i[d];p?a.push(p):a.push(i[d]=o.create(f))}};\n/**\n         * Set a pair as active or inactive.\n         * @method setActive\n         * @param {pair} pair\n         * @param {bool} isActive\n         * @param {number} timestamp\n         */i.setActive=function(e,t,n){if(t){e.isActive=true;e.timeUpdated=n}else{e.isActive=false;e.activeContacts.length=0}};\n/**\n         * Get the id for the given pair.\n         * @method id\n         * @param {body} bodyA\n         * @param {body} bodyB\n         * @return {string} Unique pairId\n         */i.id=function(e,t){return e.id<t.id?\"A\"+e.id+\"B\"+t.id:\"A\"+t.id+\"B\"+e.id}})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(2);var a=n(7);var s=n(1);var l=n(11);var c=n(0);(function(){i._warming=.4;i._torqueDampen=1;i._minLength=1e-6;\n/**\n         * Creates a new constraint.\n         * All properties have default values, and many are pre-calculated automatically based on other properties.\n         * To simulate a revolute constraint (or pin joint) set `length: 0` and a high `stiffness` value (e.g. `0.7` or above).\n         * If the constraint is unstable, try lowering the `stiffness` value and / or increasing `engine.constraintIterations`.\n         * For compound bodies, constraints must be applied to the parent body (not one of its parts).\n         * See the properties section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {} options\n         * @return {constraint} constraint\n         */i.create=function(e){var t=e;t.bodyA&&!t.pointA&&(t.pointA={x:0,y:0});t.bodyB&&!t.pointB&&(t.pointB={x:0,y:0});var n=t.bodyA?r.add(t.bodyA.position,t.pointA):t.pointA,i=t.bodyB?r.add(t.bodyB.position,t.pointB):t.pointB,o=r.magnitude(r.sub(n,i));t.length=\"undefined\"!==typeof t.length?t.length:o;t.id=t.id||c.nextId();t.label=t.label||\"Constraint\";t.type=\"constraint\";t.stiffness=t.stiffness||(t.length>0?1:.7);t.damping=t.damping||0;t.angularStiffness=t.angularStiffness||0;t.angleA=t.bodyA?t.bodyA.angle:t.angleA;t.angleB=t.bodyB?t.bodyB.angle:t.angleB;t.plugin={};var a={visible:true,lineWidth:2,strokeStyle:\"#ffffff\",type:\"line\",anchors:true};if(0===t.length&&t.stiffness>.1){a.type=\"pin\";a.anchors=false}else t.stiffness<.9&&(a.type=\"spring\");t.render=c.extend(a,t.render);return t};\n/**\n         * Prepares for solving by constraint warming.\n         * @private\n         * @method preSolveAll\n         * @param {body[]} bodies\n         */i.preSolveAll=function(e){for(var t=0;t<e.length;t+=1){var n=e[t],i=n.constraintImpulse;if(!(n.isStatic||0===i.x&&0===i.y&&0===i.angle)){n.position.x+=i.x;n.position.y+=i.y;n.angle+=i.angle}}};\n/**\n         * Solves all constraints in a list of collisions.\n         * @private\n         * @method solveAll\n         * @param {constraint[]} constraints\n         * @param {number} timeScale\n         */i.solveAll=function(e,t){for(var n=0;n<e.length;n+=1){var o=e[n],r=!o.bodyA||o.bodyA&&o.bodyA.isStatic,a=!o.bodyB||o.bodyB&&o.bodyB.isStatic;(r||a)&&i.solve(e[n],t)}for(n=0;n<e.length;n+=1){o=e[n];r=!o.bodyA||o.bodyA&&o.bodyA.isStatic;a=!o.bodyB||o.bodyB&&o.bodyB.isStatic;r||a||i.solve(e[n],t)}};\n/**\n         * Solves a distance constraint with Gauss-Siedel method.\n         * @private\n         * @method solve\n         * @param {constraint} constraint\n         * @param {number} timeScale\n         */i.solve=function(e,t){var n=e.bodyA,o=e.bodyB,a=e.pointA,s=e.pointB;if(n||o){if(n&&!n.isStatic){r.rotate(a,n.angle-e.angleA,a);e.angleA=n.angle}if(o&&!o.isStatic){r.rotate(s,o.angle-e.angleB,s);e.angleB=o.angle}var l=a,c=s;n&&(l=r.add(n.position,a));o&&(c=r.add(o.position,s));if(l&&c){var u=r.sub(l,c),f=r.magnitude(u);f<i._minLength&&(f=i._minLength);var d,p,v,y,m,g=(f-e.length)/f,x=e.stiffness<1?e.stiffness*t:e.stiffness,h=r.mult(u,g*x),b=(n?n.inverseMass:0)+(o?o.inverseMass:0),S=(n?n.inverseInertia:0)+(o?o.inverseInertia:0),w=b+S;if(e.damping){var _=r.create();v=r.div(u,f);m=r.sub(o&&r.sub(o.position,o.positionPrev)||_,n&&r.sub(n.position,n.positionPrev)||_);y=r.dot(v,m)}if(n&&!n.isStatic){p=n.inverseMass/b;n.constraintImpulse.x-=h.x*p;n.constraintImpulse.y-=h.y*p;n.position.x-=h.x*p;n.position.y-=h.y*p;if(e.damping){n.positionPrev.x-=e.damping*v.x*y*p;n.positionPrev.y-=e.damping*v.y*y*p}d=r.cross(a,h)/w*i._torqueDampen*n.inverseInertia*(1-e.angularStiffness);n.constraintImpulse.angle-=d;n.angle-=d}if(o&&!o.isStatic){p=o.inverseMass/b;o.constraintImpulse.x+=h.x*p;o.constraintImpulse.y+=h.y*p;o.position.x+=h.x*p;o.position.y+=h.y*p;if(e.damping){o.positionPrev.x+=e.damping*v.x*y*p;o.positionPrev.y+=e.damping*v.y*y*p}d=r.cross(s,h)/w*i._torqueDampen*o.inverseInertia*(1-e.angularStiffness);o.constraintImpulse.angle+=d;o.angle+=d}}}};\n/**\n         * Performs body updates required after solving constraints.\n         * @private\n         * @method postSolveAll\n         * @param {body[]} bodies\n         */i.postSolveAll=function(e){for(var t=0;t<e.length;t++){var n=e[t],c=n.constraintImpulse;if(!(n.isStatic||0===c.x&&0===c.y&&0===c.angle)){a.set(n,false);for(var u=0;u<n.parts.length;u++){var f=n.parts[u];o.translate(f.vertices,c);if(u>0){f.position.x+=c.x;f.position.y+=c.y}if(0!==c.angle){o.rotate(f.vertices,c.angle,n.position);l.rotate(f.axes,c.angle);u>0&&r.rotateAbout(f.position,c.angle,n.position,f.position)}s.update(f.bounds,f.vertices,n.velocity)}c.angle*=i._warming;c.x*=i._warming;c.y*=i._warming}}};\n/**\n         * Returns the world-space position of `constraint.pointA`, accounting for `constraint.bodyA`.\n         * @method pointAWorld\n         * @param {constraint} constraint\n         * @returns {vector} the world-space position\n         */i.pointAWorld=function(e){return{x:(e.bodyA?e.bodyA.position.x:0)+e.pointA.x,y:(e.bodyA?e.bodyA.position.y:0)+e.pointA.y}};\n/**\n         * Returns the world-space position of `constraint.pointB`, accounting for `constraint.bodyB`.\n         * @method pointBWorld\n         * @param {constraint} constraint\n         * @returns {vector} the world-space position\n         */i.pointBWorld=function(e){return{x:(e.bodyB?e.bodyB.position.x:0)+e.pointB.x,y:(e.bodyB?e.bodyB.position.y:0)+e.pointB.y}};\n/**\n         * An integer `Number` uniquely identifying number generated in `Composite.create` by `Common.nextId`.\n         *\n         * @property id\n         * @type number\n         */\n/**\n         * A `String` denoting the type of object.\n         *\n         * @property type\n         * @type string\n         * @default \"constraint\"\n         * @readOnly\n         */\n/**\n         * An arbitrary `String` name to help the user identify and manage bodies.\n         *\n         * @property label\n         * @type string\n         * @default \"Constraint\"\n         */\n/**\n         * An `Object` that defines the rendering properties to be consumed by the module `Matter.Render`.\n         *\n         * @property render\n         * @type object\n         */\n/**\n         * A flag that indicates if the constraint should be rendered.\n         *\n         * @property render.visible\n         * @type boolean\n         * @default true\n         */\n/**\n         * A `Number` that defines the line width to use when rendering the constraint outline.\n         * A value of `0` means no outline will be rendered.\n         *\n         * @property render.lineWidth\n         * @type number\n         * @default 2\n         */\n/**\n         * A `String` that defines the stroke style to use when rendering the constraint outline.\n         * It is the same as when using a canvas, so it accepts CSS style property values.\n         *\n         * @property render.strokeStyle\n         * @type string\n         * @default a random colour\n         */\n/**\n         * A `String` that defines the constraint rendering type. \n         * The possible values are 'line', 'pin', 'spring'.\n         * An appropriate render type will be automatically chosen unless one is given in options.\n         *\n         * @property render.type\n         * @type string\n         * @default 'line'\n         */\n/**\n         * A `Boolean` that defines if the constraint's anchor points should be rendered.\n         *\n         * @property render.anchors\n         * @type boolean\n         * @default true\n         */\n/**\n         * The first possible `Body` that this constraint is attached to.\n         *\n         * @property bodyA\n         * @type body\n         * @default null\n         */\n/**\n         * The second possible `Body` that this constraint is attached to.\n         *\n         * @property bodyB\n         * @type body\n         * @default null\n         */\n/**\n         * A `Vector` that specifies the offset of the constraint from center of the `constraint.bodyA` if defined, otherwise a world-space position.\n         *\n         * @property pointA\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Vector` that specifies the offset of the constraint from center of the `constraint.bodyB` if defined, otherwise a world-space position.\n         *\n         * @property pointB\n         * @type vector\n         * @default { x: 0, y: 0 }\n         */\n/**\n         * A `Number` that specifies the stiffness of the constraint, i.e. the rate at which it returns to its resting `constraint.length`.\n         * A value of `1` means the constraint should be very stiff.\n         * A value of `0.2` means the constraint acts like a soft spring.\n         *\n         * @property stiffness\n         * @type number\n         * @default 1\n         */\n/**\n         * A `Number` that specifies the damping of the constraint, \n         * i.e. the amount of resistance applied to each body based on their velocities to limit the amount of oscillation.\n         * Damping will only be apparent when the constraint also has a very low `stiffness`.\n         * A value of `0.1` means the constraint will apply heavy damping, resulting in little to no oscillation.\n         * A value of `0` means the constraint will apply no damping.\n         *\n         * @property damping\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that specifies the target resting length of the constraint. \n         * It is calculated automatically in `Constraint.create` from initial positions of the `constraint.bodyA` and `constraint.bodyB`.\n         *\n         * @property length\n         * @type number\n         */\n/**\n         * An object reserved for storing plugin-specific properties.\n         *\n         * @property plugin\n         * @type {}\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(2);var r=n(0);(function(){\n/**\n         * Creates a new set of axes from the given vertices.\n         * @method fromVertices\n         * @param {vertices} vertices\n         * @return {axes} A new axes from the given vertices\n         */\ni.fromVertices=function(e){var t={};for(var n=0;n<e.length;n++){var i=(n+1)%e.length,a=o.normalise({x:e[i].y-e[n].y,y:e[n].x-e[i].x}),s=0===a.y?Infinity:a.x/a.y;s=s.toFixed(3).toString();t[s]=a}return r.values(t)};\n/**\n         * Rotates a set of axes by the given angle.\n         * @method rotate\n         * @param {axes} axes\n         * @param {number} angle\n         */i.rotate=function(e,t){if(0!==t){var n=Math.cos(t),i=Math.sin(t);for(var o=0;o<e.length;o++){var r,a=e[o];r=a.x*n-a.y*i;a.y=a.x*i+a.y*n;a.x=r}}}})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(0);var a=n(6);var s=n(1);var l=n(2);(function(){\n/**\n         * Creates a new rigid body model with a rectangle hull. \n         * The options parameter is an object that specifies any properties you wish to override the defaults.\n         * See the properties section of the `Matter.Body` module for detailed information on what you can pass via the `options` object.\n         * @method rectangle\n         * @param {number} x\n         * @param {number} y\n         * @param {number} width\n         * @param {number} height\n         * @param {object} [options]\n         * @return {body} A new rectangle body\n         */\ni.rectangle=function(e,t,n,i,s){s=s||{};var l={label:\"Rectangle Body\",position:{x:e,y:t},vertices:o.fromPath(\"L 0 0 L \"+n+\" 0 L \"+n+\" \"+i+\" L 0 \"+i)};if(s.chamfer){var c=s.chamfer;l.vertices=o.chamfer(l.vertices,c.radius,c.quality,c.qualityMin,c.qualityMax);delete s.chamfer}return a.create(r.extend({},l,s))};\n/**\n         * Creates a new rigid body model with a trapezoid hull. \n         * The options parameter is an object that specifies any properties you wish to override the defaults.\n         * See the properties section of the `Matter.Body` module for detailed information on what you can pass via the `options` object.\n         * @method trapezoid\n         * @param {number} x\n         * @param {number} y\n         * @param {number} width\n         * @param {number} height\n         * @param {number} slope\n         * @param {object} [options]\n         * @return {body} A new trapezoid body\n         */i.trapezoid=function(e,t,n,i,s,l){l=l||{};s*=.5;var c=(1-2*s)*n;var u,f=n*s,d=f+c,p=d+f;u=s<.5?\"L 0 0 L \"+f+\" \"+-i+\" L \"+d+\" \"+-i+\" L \"+p+\" 0\":\"L 0 0 L \"+d+\" \"+-i+\" L \"+p+\" 0\";var v={label:\"Trapezoid Body\",position:{x:e,y:t},vertices:o.fromPath(u)};if(l.chamfer){var y=l.chamfer;v.vertices=o.chamfer(v.vertices,y.radius,y.quality,y.qualityMin,y.qualityMax);delete l.chamfer}return a.create(r.extend({},v,l))};\n/**\n         * Creates a new rigid body model with a circle hull. \n         * The options parameter is an object that specifies any properties you wish to override the defaults.\n         * See the properties section of the `Matter.Body` module for detailed information on what you can pass via the `options` object.\n         * @method circle\n         * @param {number} x\n         * @param {number} y\n         * @param {number} radius\n         * @param {object} [options]\n         * @param {number} [maxSides]\n         * @return {body} A new circle body\n         */i.circle=function(e,t,n,o,a){o=o||{};var s={label:\"Circle Body\",circleRadius:n};a=a||25;var l=Math.ceil(Math.max(10,Math.min(a,n)));l%2===1&&(l+=1);return i.polygon(e,t,l,n,r.extend({},s,o))};\n/**\n         * Creates a new rigid body model with a regular polygon hull with the given number of sides. \n         * The options parameter is an object that specifies any properties you wish to override the defaults.\n         * See the properties section of the `Matter.Body` module for detailed information on what you can pass via the `options` object.\n         * @method polygon\n         * @param {number} x\n         * @param {number} y\n         * @param {number} sides\n         * @param {number} radius\n         * @param {object} [options]\n         * @return {body} A new regular polygon body\n         */i.polygon=function(e,t,n,s,l){l=l||{};if(n<3)return i.circle(e,t,s,l);var c=2*Math.PI/n,u=\"\",f=.5*c;for(var d=0;d<n;d+=1){var p=f+d*c,v=Math.cos(p)*s,y=Math.sin(p)*s;u+=\"L \"+v.toFixed(3)+\" \"+y.toFixed(3)+\" \"}var m={label:\"Polygon Body\",position:{x:e,y:t},vertices:o.fromPath(u)};if(l.chamfer){var g=l.chamfer;m.vertices=o.chamfer(m.vertices,g.radius,g.quality,g.qualityMin,g.qualityMax);delete l.chamfer}return a.create(r.extend({},m,l))};\n/**\n         * Utility to create a compound body based on set(s) of vertices.\n         * \n         * _Note:_ To optionally enable automatic concave vertices decomposition the [poly-decomp](https://github.com/schteppe/poly-decomp.js) \n         * package must be first installed and provided see `Common.setDecomp`, otherwise the convex hull of each vertex set will be used.\n         * \n         * The resulting vertices are reorientated about their centre of mass,\n         * and offset such that `body.position` corresponds to this point.\n         * \n         * The resulting offset may be found if needed by subtracting `body.bounds` from the original input bounds.\n         * To later move the centre of mass see `Body.setCentre`.\n         * \n         * Note that automatic conconcave decomposition results are not always optimal. \n         * For best results, simplify the input vertices as much as possible first.\n         * By default this function applies some addtional simplification to help.\n         * \n         * Some outputs may also require further manual processing afterwards to be robust.\n         * In particular some parts may need to be overlapped to avoid collision gaps.\n         * Thin parts and sharp points should be avoided or removed where possible.\n         *\n         * The options parameter object specifies any `Matter.Body` properties you wish to override the defaults.\n         * \n         * See the properties section of the `Matter.Body` module for detailed information on what you can pass via the `options` object.\n         * @method fromVertices\n         * @param {number} x\n         * @param {number} y\n         * @param {array} vertexSets One or more arrays of vertex points e.g. `[[{ x: 0, y: 0 }...], ...]`.\n         * @param {object} [options] The body options.\n         * @param {bool} [flagInternal=false] Optionally marks internal edges with `isInternal`.\n         * @param {number} [removeCollinear=0.01] Threshold when simplifying vertices along the same edge.\n         * @param {number} [minimumArea=10] Threshold when removing small parts.\n         * @param {number} [removeDuplicatePoints=0.01] Threshold when simplifying nearby vertices.\n         * @return {body}\n         */i.fromVertices=function(e,t,n,i,c,u,f,d){var p,v,y,m,g,x,h,b,S,w,_,A=r.getDecomp();p=Boolean(A&&A.quickDecomp);i=i||{};y=[];c=\"undefined\"!==typeof c&&c;u=\"undefined\"!==typeof u?u:.01;f=\"undefined\"!==typeof f?f:10;d=\"undefined\"!==typeof d?d:.01;r.isArray(n[0])||(n=[n]);for(w=0;w<n.length;w+=1){x=n[w];m=o.isConvex(x);g=!m;g&&!p&&r.warnOnce(\"Bodies.fromVertices: Install the 'poly-decomp' library and use Common.setDecomp or provide 'decomp' as a global to decompose concave vertices.\");if(m||!p){x=m?o.clockwiseSort(x):o.hull(x);y.push({position:{x:e,y:t},vertices:x})}else{var P=x.map((function(e){return[e.x,e.y]}));A.makeCCW(P);false!==u&&A.removeCollinearPoints(P,u);false!==d&&A.removeDuplicatePoints&&A.removeDuplicatePoints(P,d);var C=A.quickDecomp(P);for(h=0;h<C.length;h++){var k=C[h];var M=k.map((function(e){return{x:e[0],y:e[1]}}));f>0&&o.area(M)<f||y.push({position:o.centre(M),vertices:M})}}}for(h=0;h<y.length;h++)y[h]=a.create(r.extend(y[h],i));if(c){var B=5;for(h=0;h<y.length;h++){var I=y[h];for(b=h+1;b<y.length;b++){var T=y[b];if(s.overlaps(I.bounds,T.bounds)){var R=I.vertices,E=T.vertices;for(S=0;S<I.vertices.length;S++)for(_=0;_<T.vertices.length;_++){var V=l.magnitudeSquared(l.sub(R[(S+1)%R.length],E[_])),L=l.magnitudeSquared(l.sub(R[S],E[(_+1)%E.length]));if(V<B&&L<B){R[S].isInternal=true;E[_].isInternal=true}}}}}}if(y.length>1){v=a.create(r.extend({parts:y.slice(0)},i));a.setPosition(v,{x:e,y:t});return v}return y[0]}})()},function(e,t,n){var i={};e.exports=i;var o=n(0);(function(){\n/**\n         * Creates a mouse input.\n         * @method create\n         * @param {HTMLElement} element\n         * @return {mouse} A new mouse\n         */\ni.create=function(e){var t={};e||o.log(\"Mouse.create: element was undefined, defaulting to document.body\",\"warn\");t.element=e||document.body;t.absolute={x:0,y:0};t.position={x:0,y:0};t.mousedownPosition={x:0,y:0};t.mouseupPosition={x:0,y:0};t.offset={x:0,y:0};t.scale={x:1,y:1};t.wheelDelta=0;t.button=-1;t.pixelRatio=parseInt(t.element.getAttribute(\"data-pixel-ratio\"),10)||1;t.sourceEvents={mousemove:null,mousedown:null,mouseup:null,mousewheel:null};t.mousemove=function(e){var n=i._getRelativeMousePosition(e,t.element,t.pixelRatio),o=e.changedTouches;if(o){t.button=0;e.preventDefault()}t.absolute.x=n.x;t.absolute.y=n.y;t.position.x=t.absolute.x*t.scale.x+t.offset.x;t.position.y=t.absolute.y*t.scale.y+t.offset.y;t.sourceEvents.mousemove=e};t.mousedown=function(e){var n=i._getRelativeMousePosition(e,t.element,t.pixelRatio),o=e.changedTouches;if(o){t.button=0;e.preventDefault()}else t.button=e.button;t.absolute.x=n.x;t.absolute.y=n.y;t.position.x=t.absolute.x*t.scale.x+t.offset.x;t.position.y=t.absolute.y*t.scale.y+t.offset.y;t.mousedownPosition.x=t.position.x;t.mousedownPosition.y=t.position.y;t.sourceEvents.mousedown=e};t.mouseup=function(e){var n=i._getRelativeMousePosition(e,t.element,t.pixelRatio),o=e.changedTouches;o&&e.preventDefault();t.button=-1;t.absolute.x=n.x;t.absolute.y=n.y;t.position.x=t.absolute.x*t.scale.x+t.offset.x;t.position.y=t.absolute.y*t.scale.y+t.offset.y;t.mouseupPosition.x=t.position.x;t.mouseupPosition.y=t.position.y;t.sourceEvents.mouseup=e};t.mousewheel=function(e){t.wheelDelta=Math.max(-1,Math.min(1,e.wheelDelta||-e.detail));e.preventDefault()};i.setElement(t,t.element);return t};\n/**\n         * Sets the element the mouse is bound to (and relative to).\n         * @method setElement\n         * @param {mouse} mouse\n         * @param {HTMLElement} element\n         */i.setElement=function(e,t){e.element=t;t.addEventListener(\"mousemove\",e.mousemove);t.addEventListener(\"mousedown\",e.mousedown);t.addEventListener(\"mouseup\",e.mouseup);t.addEventListener(\"mousewheel\",e.mousewheel);t.addEventListener(\"DOMMouseScroll\",e.mousewheel);t.addEventListener(\"touchmove\",e.mousemove);t.addEventListener(\"touchstart\",e.mousedown);t.addEventListener(\"touchend\",e.mouseup)};\n/**\n         * Clears all captured source events.\n         * @method clearSourceEvents\n         * @param {mouse} mouse\n         */i.clearSourceEvents=function(e){e.sourceEvents.mousemove=null;e.sourceEvents.mousedown=null;e.sourceEvents.mouseup=null;e.sourceEvents.mousewheel=null;e.wheelDelta=0};\n/**\n         * Sets the mouse position offset.\n         * @method setOffset\n         * @param {mouse} mouse\n         * @param {vector} offset\n         */i.setOffset=function(e,t){e.offset.x=t.x;e.offset.y=t.y;e.position.x=e.absolute.x*e.scale.x+e.offset.x;e.position.y=e.absolute.y*e.scale.y+e.offset.y};\n/**\n         * Sets the mouse position scale.\n         * @method setScale\n         * @param {mouse} mouse\n         * @param {vector} scale\n         */i.setScale=function(e,t){e.scale.x=t.x;e.scale.y=t.y;e.position.x=e.absolute.x*e.scale.x+e.offset.x;e.position.y=e.absolute.y*e.scale.y+e.offset.y};\n/**\n         * Gets the mouse position relative to an element given a screen pixel ratio.\n         * @method _getRelativeMousePosition\n         * @private\n         * @param {} event\n         * @param {} element\n         * @param {number} pixelRatio\n         * @return {}\n         */i._getRelativeMousePosition=function(e,t,n){var i,o,r=t.getBoundingClientRect(),a=document.documentElement||document.body.parentNode||document.body,s=void 0!==window.pageXOffset?window.pageXOffset:a.scrollLeft,l=void 0!==window.pageYOffset?window.pageYOffset:a.scrollTop,c=e.changedTouches;if(c){i=c[0].pageX-r.left-s;o=c[0].pageY-r.top-l}else{i=e.pageX-r.left-s;o=e.pageY-r.top-l}return{x:i/(t.clientWidth/(t.width||t.clientWidth)*n),y:o/(t.clientHeight/(t.height||t.clientHeight)*n)}}})()},function(e,t,n){var i={};e.exports=i;var o=n(0);var r=n(8);(function(){\n/**\n         * Creates a new collision detector.\n         * @method create\n         * @param {} options\n         * @return {detector} A new collision detector\n         */\ni.create=function(e){var t={bodies:[],pairs:null};return o.extend(t,e)};\n/**\n         * Sets the list of bodies in the detector.\n         * @method setBodies\n         * @param {detector} detector\n         * @param {body[]} bodies\n         */i.setBodies=function(e,t){e.bodies=t.slice(0)};\n/**\n         * Clears the detector including its list of bodies.\n         * @method clear\n         * @param {detector} detector\n         */i.clear=function(e){e.bodies=[]};\n/**\n         * Efficiently finds all collisions among all the bodies in `detector.bodies` using a broadphase algorithm.\n         * \n         * _Note:_ The specific ordering of collisions returned is not guaranteed between releases and may change for performance reasons.\n         * If a specific ordering is required then apply a sort to the resulting array.\n         * @method collisions\n         * @param {detector} detector\n         * @return {collision[]} collisions\n         */i.collisions=function(e){var t,n,o=[],a=e.pairs,s=e.bodies,l=s.length,c=i.canCollide,u=r.collides;s.sort(i._compareBoundsX);for(t=0;t<l;t++){var f=s[t],d=f.bounds,p=f.bounds.max.x,v=f.bounds.max.y,y=f.bounds.min.y,m=f.isStatic||f.isSleeping,g=f.parts.length,x=1===g;for(n=t+1;n<l;n++){var h=s[n],b=h.bounds;if(b.min.x>p)break;if(!(v<b.min.y||y>b.max.y)&&((!m||!h.isStatic&&!h.isSleeping)&&c(f.collisionFilter,h.collisionFilter))){var S=h.parts.length;if(x&&1===S){var w=u(f,h,a);w&&o.push(w)}else{var _=g>1?1:0,A=S>1?1:0;for(var P=_;P<g;P++){var C=f.parts[P];d=C.bounds;for(var k=A;k<S;k++){var M=h.parts[k];b=M.bounds;if(!(d.min.x>b.max.x||d.max.x<b.min.x||d.max.y<b.min.y||d.min.y>b.max.y)){w=u(C,M,a);w&&o.push(w)}}}}}}}return o};\n/**\n         * Returns `true` if both supplied collision filters will allow a collision to occur.\n         * See `body.collisionFilter` for more information.\n         * @method canCollide\n         * @param {} filterA\n         * @param {} filterB\n         * @return {bool} `true` if collision can occur\n         */i.canCollide=function(e,t){return e.group===t.group&&0!==e.group?e.group>0:0!==(e.mask&t.category)&&0!==(t.mask&e.category)};\n/**\n         * The comparison function used in the broadphase algorithm.\n         * Returns the signed delta of the bodies bounds on the x-axis.\n         * @private\n         * @method _sortCompare\n         * @param {body} bodyA\n         * @param {body} bodyB\n         * @return {number} The signed delta used for sorting\n         */i._compareBoundsX=function(e,t){return e.bounds.min.x-t.bounds.min.x};\n/**\n         * The array of `Matter.Body` between which the detector finds collisions.\n         * \n         * _Note:_ The order of bodies in this array _is not fixed_ and will be continually managed by the detector.\n         * @property bodies\n         * @type body[]\n         * @default []\n         */\n/**\n         * Optional. A `Matter.Pairs` object from which previous collision objects may be reused. Intended for internal `Matter.Engine` usage.\n         * @property pairs\n         * @type {pairs|null}\n         * @default null\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(0);(function(){i._registry={};\n/**\n         * Registers a plugin object so it can be resolved later by name.\n         * @method register\n         * @param plugin {} The plugin to register.\n         * @return {object} The plugin.\n         */i.register=function(e){i.isPlugin(e)||o.warn(\"Plugin.register:\",i.toString(e),\"does not implement all required fields.\");if(e.name in i._registry){var t=i._registry[e.name],n=i.versionParse(e.version).number,r=i.versionParse(t.version).number;if(n>r){o.warn(\"Plugin.register:\",i.toString(t),\"was upgraded to\",i.toString(e));i._registry[e.name]=e}else n<r?o.warn(\"Plugin.register:\",i.toString(t),\"can not be downgraded to\",i.toString(e)):e!==t&&o.warn(\"Plugin.register:\",i.toString(e),\"is already registered to different plugin object\")}else i._registry[e.name]=e;return e};\n/**\n         * Resolves a dependency to a plugin object from the registry if it exists. \n         * The `dependency` may contain a version, but only the name matters when resolving.\n         * @method resolve\n         * @param dependency {string} The dependency.\n         * @return {object} The plugin if resolved, otherwise `undefined`.\n         */i.resolve=function(e){return i._registry[i.dependencyParse(e).name]};\n/**\n         * Returns a pretty printed plugin name and version.\n         * @method toString\n         * @param plugin {} The plugin.\n         * @return {string} Pretty printed plugin name and version.\n         */i.toString=function(e){return\"string\"===typeof e?e:(e.name||\"anonymous\")+\"@\"+(e.version||e.range||\"0.0.0\")};\n/**\n         * Returns `true` if the object meets the minimum standard to be considered a plugin.\n         * This means it must define the following properties:\n         * - `name`\n         * - `version`\n         * - `install`\n         * @method isPlugin\n         * @param obj {} The obj to test.\n         * @return {boolean} `true` if the object can be considered a plugin otherwise `false`.\n         */i.isPlugin=function(e){return e&&e.name&&e.version&&e.install};\n/**\n         * Returns `true` if a plugin with the given `name` been installed on `module`.\n         * @method isUsed\n         * @param module {} The module.\n         * @param name {string} The plugin name.\n         * @return {boolean} `true` if a plugin with the given `name` been installed on `module`, otherwise `false`.\n         */i.isUsed=function(e,t){return e.used.indexOf(t)>-1};\n/**\n         * Returns `true` if `plugin.for` is applicable to `module` by comparing against `module.name` and `module.version`.\n         * If `plugin.for` is not specified then it is assumed to be applicable.\n         * The value of `plugin.for` is a string of the format `'module-name'` or `'module-name@version'`.\n         * @method isFor\n         * @param plugin {} The plugin.\n         * @param module {} The module.\n         * @return {boolean} `true` if `plugin.for` is applicable to `module`, otherwise `false`.\n         */i.isFor=function(e,t){var n=e.for&&i.dependencyParse(e.for);return!e.for||t.name===n.name&&i.versionSatisfies(t.version,n.range)};\n/**\n         * Installs the plugins by calling `plugin.install` on each plugin specified in `plugins` if passed, otherwise `module.uses`.\n         * For installing plugins on `Matter` see the convenience function `Matter.use`.\n         * Plugins may be specified either by their name or a reference to the plugin object.\n         * Plugins themselves may specify further dependencies, but each plugin is installed only once.\n         * Order is important, a topological sort is performed to find the best resulting order of installation.\n         * This sorting attempts to satisfy every dependency's requested ordering, but may not be exact in all cases.\n         * This function logs the resulting status of each dependency in the console, along with any warnings.\n         * - A green tick ✅ indicates a dependency was resolved and installed.\n         * - An orange diamond 🔶 indicates a dependency was resolved but a warning was thrown for it or one if its dependencies.\n         * - A red cross ❌ indicates a dependency could not be resolved.\n         * Avoid calling this function multiple times on the same module unless you intend to manually control installation order.\n         * @method use\n         * @param module {} The module install plugins on.\n         * @param [plugins=module.uses] {} The plugins to install on module (optional, defaults to `module.uses`).\n         */i.use=function(e,t){e.uses=(e.uses||[]).concat(t||[]);if(0!==e.uses.length){var n=i.dependencies(e),r=o.topologicalSort(n),a=[];for(var s=0;s<r.length;s+=1)if(r[s]!==e.name){var l=i.resolve(r[s]);if(l){if(!i.isUsed(e,l.name)){if(!i.isFor(l,e)){o.warn(\"Plugin.use:\",i.toString(l),\"is for\",l.for,\"but installed on\",i.toString(e)+\".\");l._warned=true}if(l.install)l.install(e);else{o.warn(\"Plugin.use:\",i.toString(l),\"does not specify an install function.\");l._warned=true}if(l._warned){a.push(\"🔶 \"+i.toString(l));delete l._warned}else a.push(\"✅ \"+i.toString(l));e.used.push(l.name)}}else a.push(\"❌ \"+r[s])}a.length>0&&o.info(a.join(\"  \"))}else o.warn(\"Plugin.use:\",i.toString(e),\"does not specify any dependencies to install.\")};\n/**\n         * Recursively finds all of a module's dependencies and returns a flat dependency graph.\n         * @method dependencies\n         * @param module {} The module.\n         * @return {object} A dependency graph.\n         */i.dependencies=function(e,t){var n=i.dependencyParse(e),r=n.name;t=t||{};if(!(r in t)){e=i.resolve(e)||e;t[r]=o.map(e.uses||[],(function(t){i.isPlugin(t)&&i.register(t);var r=i.dependencyParse(t),a=i.resolve(t);if(a&&!i.versionSatisfies(a.version,r.range)){o.warn(\"Plugin.dependencies:\",i.toString(a),\"does not satisfy\",i.toString(r),\"used by\",i.toString(n)+\".\");a._warned=true;e._warned=true}else if(!a){o.warn(\"Plugin.dependencies:\",i.toString(t),\"used by\",i.toString(n),\"could not be resolved.\");e._warned=true}return r.name}));for(var a=0;a<t[r].length;a+=1)i.dependencies(t[r][a],t);return t}};\n/**\n         * Parses a dependency string into its components.\n         * The `dependency` is a string of the format `'module-name'` or `'module-name@version'`.\n         * See documentation for `Plugin.versionParse` for a description of the format.\n         * This function can also handle dependencies that are already resolved (e.g. a module object).\n         * @method dependencyParse\n         * @param dependency {string} The dependency of the format `'module-name'` or `'module-name@version'`.\n         * @return {object} The dependency parsed into its components.\n         */i.dependencyParse=function(e){if(o.isString(e)){var t=/^[\\w-]+(@(\\*|[\\^~]?\\d+\\.\\d+\\.\\d+(-[0-9A-Za-z-+]+)?))?$/;t.test(e)||o.warn(\"Plugin.dependencyParse:\",e,\"is not a valid dependency string.\");return{name:e.split(\"@\")[0],range:e.split(\"@\")[1]||\"*\"}}return{name:e.name,range:e.range||e.version}};\n/**\n         * Parses a version string into its components.  \n         * Versions are strictly of the format `x.y.z` (as in [semver](http://semver.org/)).\n         * Versions may optionally have a prerelease tag in the format `x.y.z-alpha`.\n         * Ranges are a strict subset of [npm ranges](https://docs.npmjs.com/misc/semver#advanced-range-syntax).\n         * Only the following range types are supported:\n         * - Tilde ranges e.g. `~1.2.3`\n         * - Caret ranges e.g. `^1.2.3`\n         * - Greater than ranges e.g. `>1.2.3`\n         * - Greater than or equal ranges e.g. `>=1.2.3`\n         * - Exact version e.g. `1.2.3`\n         * - Any version `*`\n         * @method versionParse\n         * @param range {string} The version string.\n         * @return {object} The version range parsed into its components.\n         */i.versionParse=function(e){var t=/^(\\*)|(\\^|~|>=|>)?\\s*((\\d+)\\.(\\d+)\\.(\\d+))(-[0-9A-Za-z-+]+)?$/;t.test(e)||o.warn(\"Plugin.versionParse:\",e,\"is not a valid version or range.\");var n=t.exec(e);var i=Number(n[4]);var r=Number(n[5]);var a=Number(n[6]);return{isRange:Boolean(n[1]||n[2]),version:n[3],range:e,operator:n[1]||n[2]||\"\",major:i,minor:r,patch:a,parts:[i,r,a],prerelease:n[7],number:1e8*i+1e4*r+a}};\n/**\n         * Returns `true` if `version` satisfies the given `range`.\n         * See documentation for `Plugin.versionParse` for a description of the format.\n         * If a version or range is not specified, then any version (`*`) is assumed to satisfy.\n         * @method versionSatisfies\n         * @param version {string} The version string.\n         * @param range {string} The range string.\n         * @return {boolean} `true` if `version` satisfies `range`, otherwise `false`.\n         */i.versionSatisfies=function(e,t){t=t||\"*\";var n=i.versionParse(t),o=i.versionParse(e);if(n.isRange){if(\"*\"===n.operator||\"*\"===e)return true;if(\">\"===n.operator)return o.number>n.number;if(\">=\"===n.operator)return o.number>=n.number;if(\"~\"===n.operator)return o.major===n.major&&o.minor===n.minor&&o.patch>=n.patch;if(\"^\"===n.operator)return n.major>0?o.major===n.major&&o.number>=n.number:n.minor>0?o.minor===n.minor&&o.patch>=n.patch:o.patch===n.patch}return e===t||\"*\"===e}})()},function(e,t,n){var i={};e.exports=i;var o=n(0);var r=n(5);var a=n(1);var s=n(4);var l=n(2);var c=n(13);(function(){var e,t;if(\"undefined\"!==typeof window){e=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||function(e){window.setTimeout((function(){e(o.now())}),1e3/60)};t=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame}i._goodFps=30;i._goodDelta=1e3/60;\n/**\n         * Creates a new renderer. The options parameter is an object that specifies any properties you wish to override the defaults.\n         * All properties have default values, and many are pre-calculated automatically based on other properties.\n         * See the properties section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {object} [options]\n         * @return {render} A new renderer\n         */i.create=function(e){var t={controller:i,engine:null,element:null,canvas:null,mouse:null,frameRequestId:null,timing:{historySize:60,delta:0,deltaHistory:[],lastTime:0,lastTimestamp:0,lastElapsed:0,timestampElapsed:0,timestampElapsedHistory:[],engineDeltaHistory:[],engineElapsedHistory:[],elapsedHistory:[]},options:{width:800,height:600,pixelRatio:1,background:\"#14151f\",wireframeBackground:\"#14151f\",hasBounds:!!e.bounds,enabled:true,wireframes:true,showSleeping:true,showDebug:false,showStats:false,showPerformance:false,showBounds:false,showVelocity:false,showCollisions:false,showSeparations:false,showAxes:false,showPositions:false,showAngleIndicator:false,showIds:false,showVertexNumbers:false,showConvexHulls:false,showInternalEdges:false,showMousePosition:false}};var n=o.extend(t,e);if(n.canvas){n.canvas.width=n.options.width||n.canvas.width;n.canvas.height=n.options.height||n.canvas.height}n.mouse=e.mouse;n.engine=e.engine;n.canvas=n.canvas||_createCanvas(n.options.width,n.options.height);n.context=n.canvas.getContext(\"2d\");n.textures={};n.bounds=n.bounds||{min:{x:0,y:0},max:{x:n.canvas.width,y:n.canvas.height}};n.options.showBroadphase=false;1!==n.options.pixelRatio&&i.setPixelRatio(n,n.options.pixelRatio);o.isElement(n.element)?n.element.appendChild(n.canvas):n.canvas.parentNode||o.log(\"Render.create: options.element was undefined, render.canvas was created but not appended\",\"warn\");return n};\n/**\n         * Continuously updates the render canvas on the `requestAnimationFrame` event.\n         * @method run\n         * @param {render} render\n         */i.run=function(t){(function loop(n){t.frameRequestId=e(loop);_updateTiming(t,n);i.world(t,n);(t.options.showStats||t.options.showDebug)&&i.stats(t,t.context,n);(t.options.showPerformance||t.options.showDebug)&&i.performance(t,t.context,n)})()};\n/**\n         * Ends execution of `Render.run` on the given `render`, by canceling the animation frame request event loop.\n         * @method stop\n         * @param {render} render\n         */i.stop=function(e){t(e.frameRequestId)};\n/**\n         * Sets the pixel ratio of the renderer and updates the canvas.\n         * To automatically detect the correct ratio, pass the string `'auto'` for `pixelRatio`.\n         * @method setPixelRatio\n         * @param {render} render\n         * @param {number} pixelRatio\n         */i.setPixelRatio=function(e,t){var n=e.options,i=e.canvas;\"auto\"===t&&(t=_getPixelRatio(i));n.pixelRatio=t;i.setAttribute(\"data-pixel-ratio\",t);i.width=n.width*t;i.height=n.height*t;i.style.width=n.width+\"px\";i.style.height=n.height+\"px\"};\n/**\n         * Positions and sizes the viewport around the given object bounds.\n         * Objects must have at least one of the following properties:\n         * - `object.bounds`\n         * - `object.position`\n         * - `object.min` and `object.max`\n         * - `object.x` and `object.y`\n         * @method lookAt\n         * @param {render} render\n         * @param {object[]} objects\n         * @param {vector} [padding]\n         * @param {bool} [center=true]\n         */i.lookAt=function(e,t,n,i){i=\"undefined\"===typeof i||i;t=o.isArray(t)?t:[t];n=n||{x:0,y:0};var r={min:{x:Infinity,y:Infinity},max:{x:-Infinity,y:-Infinity}};for(var a=0;a<t.length;a+=1){var s=t[a],l=s.bounds?s.bounds.min:s.min||s.position||s,u=s.bounds?s.bounds.max:s.max||s.position||s;if(l&&u){l.x<r.min.x&&(r.min.x=l.x);u.x>r.max.x&&(r.max.x=u.x);l.y<r.min.y&&(r.min.y=l.y);u.y>r.max.y&&(r.max.y=u.y)}}var f=r.max.x-r.min.x+2*n.x,d=r.max.y-r.min.y+2*n.y,p=e.canvas.height,v=e.canvas.width,y=v/p,m=f/d,g=1,x=1;m>y?x=m/y:g=y/m;e.options.hasBounds=true;e.bounds.min.x=r.min.x;e.bounds.max.x=r.min.x+f*g;e.bounds.min.y=r.min.y;e.bounds.max.y=r.min.y+d*x;if(i){e.bounds.min.x+=.5*f-f*g*.5;e.bounds.max.x+=.5*f-f*g*.5;e.bounds.min.y+=.5*d-d*x*.5;e.bounds.max.y+=.5*d-d*x*.5}e.bounds.min.x-=n.x;e.bounds.max.x-=n.x;e.bounds.min.y-=n.y;e.bounds.max.y-=n.y;if(e.mouse){c.setScale(e.mouse,{x:(e.bounds.max.x-e.bounds.min.x)/e.canvas.width,y:(e.bounds.max.y-e.bounds.min.y)/e.canvas.height});c.setOffset(e.mouse,e.bounds.min)}};\n/**\n         * Applies viewport transforms based on `render.bounds` to a render context.\n         * @method startViewTransform\n         * @param {render} render\n         */i.startViewTransform=function(e){var t=e.bounds.max.x-e.bounds.min.x,n=e.bounds.max.y-e.bounds.min.y,i=t/e.options.width,o=n/e.options.height;e.context.setTransform(e.options.pixelRatio/i,0,0,e.options.pixelRatio/o,0,0);e.context.translate(-e.bounds.min.x,-e.bounds.min.y)};\n/**\n         * Resets all transforms on the render context.\n         * @method endViewTransform\n         * @param {render} render\n         */i.endViewTransform=function(e){e.context.setTransform(e.options.pixelRatio,0,0,e.options.pixelRatio,0,0)};\n/**\n         * Renders the given `engine`'s `Matter.World` object.\n         * This is the entry point for all rendering and should be called every time the scene changes.\n         * @method world\n         * @param {render} render\n         */i.world=function(e,t){var n=o.now(),u=e.engine,f=u.world,d=e.canvas,p=e.context,v=e.options,y=e.timing;var m,g=r.allBodies(f),x=r.allConstraints(f),h=v.wireframes?v.wireframeBackground:v.background,b=[],S=[];var w={timestamp:u.timing.timestamp};s.trigger(e,\"beforeRender\",w);e.currentBackground!==h&&_applyBackground(e,h);p.globalCompositeOperation=\"source-in\";p.fillStyle=\"transparent\";p.fillRect(0,0,d.width,d.height);p.globalCompositeOperation=\"source-over\";if(v.hasBounds){for(m=0;m<g.length;m++){var _=g[m];a.overlaps(_.bounds,e.bounds)&&b.push(_)}for(m=0;m<x.length;m++){var A=x[m],P=A.bodyA,C=A.bodyB,k=A.pointA,M=A.pointB;P&&(k=l.add(P.position,A.pointA));C&&(M=l.add(C.position,A.pointB));k&&M&&((a.contains(e.bounds,k)||a.contains(e.bounds,M))&&S.push(A))}i.startViewTransform(e);if(e.mouse){c.setScale(e.mouse,{x:(e.bounds.max.x-e.bounds.min.x)/e.options.width,y:(e.bounds.max.y-e.bounds.min.y)/e.options.height});c.setOffset(e.mouse,e.bounds.min)}}else{S=x;b=g;1!==e.options.pixelRatio&&e.context.setTransform(e.options.pixelRatio,0,0,e.options.pixelRatio,0,0)}if(!v.wireframes||u.enableSleeping&&v.showSleeping)i.bodies(e,b,p);else{v.showConvexHulls&&i.bodyConvexHulls(e,b,p);i.bodyWireframes(e,b,p)}v.showBounds&&i.bodyBounds(e,b,p);(v.showAxes||v.showAngleIndicator)&&i.bodyAxes(e,b,p);v.showPositions&&i.bodyPositions(e,b,p);v.showVelocity&&i.bodyVelocity(e,b,p);v.showIds&&i.bodyIds(e,b,p);v.showSeparations&&i.separations(e,u.pairs.list,p);v.showCollisions&&i.collisions(e,u.pairs.list,p);v.showVertexNumbers&&i.vertexNumbers(e,b,p);v.showMousePosition&&i.mousePosition(e,e.mouse,p);i.constraints(S,p);v.hasBounds&&i.endViewTransform(e);s.trigger(e,\"afterRender\",w);y.lastElapsed=o.now()-n};\n/**\n         * Renders statistics about the engine and world useful for debugging.\n         * @private\n         * @method stats\n         * @param {render} render\n         * @param {RenderingContext} context\n         * @param {Number} time\n         */i.stats=function(e,t,n){var i=e.engine,o=i.world,a=r.allBodies(o),s=0,l=55,c=44,u=0,f=0;for(var d=0;d<a.length;d+=1)s+=a[d].parts.length;var p={Part:s,Body:a.length,Cons:r.allConstraints(o).length,Comp:r.allComposites(o).length,Pair:i.pairs.list.length};t.fillStyle=\"#0e0f19\";t.fillRect(u,f,5.5*l,c);t.font=\"12px Arial\";t.textBaseline=\"top\";t.textAlign=\"right\";for(var v in p){var y=p[v];t.fillStyle=\"#aaa\";t.fillText(v,u+l,f+8);t.fillStyle=\"#eee\";t.fillText(y,u+l,f+26);u+=l}};\n/**\n         * Renders engine and render performance information.\n         * @private\n         * @method performance\n         * @param {render} render\n         * @param {RenderingContext} context\n         */i.performance=function(e,t){var n=e.engine,o=e.timing,r=o.deltaHistory,a=o.elapsedHistory,s=o.timestampElapsedHistory,l=o.engineDeltaHistory,c=o.engineElapsedHistory,u=n.timing.lastDelta;var f=_mean(r),d=_mean(a),p=_mean(l),v=_mean(c),y=_mean(s),m=y/f||0,g=1e3/f||0;var x=4,h=12,b=60,S=34,w=10,_=69;t.fillStyle=\"#0e0f19\";t.fillRect(0,50,4*h+5*b+22,S);i.status(t,w,_,b,x,r.length,Math.round(g)+\" fps\",g/i._goodFps,(function(e){return r[e]/f-1}));i.status(t,w+h+b,_,b,x,l.length,u.toFixed(2)+\" dt\",i._goodDelta/u,(function(e){return l[e]/p-1}));i.status(t,w+2*(h+b),_,b,x,c.length,v.toFixed(2)+\" ut\",1-v/i._goodFps,(function(e){return c[e]/v-1}));i.status(t,w+3*(h+b),_,b,x,a.length,d.toFixed(2)+\" rt\",1-d/i._goodFps,(function(e){return a[e]/d-1}));i.status(t,w+4*(h+b),_,b,x,s.length,m.toFixed(2)+\" x\",m*m*m,(function(e){return(s[e]/r[e]/m||0)-1}))};\n/**\n         * Renders a label, indicator and a chart.\n         * @private\n         * @method status\n         * @param {RenderingContext} context\n         * @param {number} x\n         * @param {number} y\n         * @param {number} width\n         * @param {number} height\n         * @param {number} count\n         * @param {string} label\n         * @param {string} indicator\n         * @param {function} plotY\n         */i.status=function(e,t,n,i,r,a,s,l,c){e.strokeStyle=\"#888\";e.fillStyle=\"#444\";e.lineWidth=1;e.fillRect(t,n+7,i,1);e.beginPath();e.moveTo(t,n+7-r*o.clamp(.4*c(0),-2,2));for(var u=0;u<i;u+=1)e.lineTo(t+u,n+7-(u<a?r*o.clamp(.4*c(u),-2,2):0));e.stroke();e.fillStyle=\"hsl(\"+o.clamp(25+95*l,0,120)+\",100%,60%)\";e.fillRect(t,n-7,4,4);e.font=\"12px Arial\";e.textBaseline=\"middle\";e.textAlign=\"right\";e.fillStyle=\"#eee\";e.fillText(s,t+i,n-5)};\n/**\n         * Description\n         * @private\n         * @method constraints\n         * @param {constraint[]} constraints\n         * @param {RenderingContext} context\n         */i.constraints=function(e,t){var n=t;for(var i=0;i<e.length;i++){var r=e[i];if(r.render.visible&&r.pointA&&r.pointB){var a,s,c=r.bodyA,u=r.bodyB;a=c?l.add(c.position,r.pointA):r.pointA;if(\"pin\"===r.render.type){n.beginPath();n.arc(a.x,a.y,3,0,2*Math.PI);n.closePath()}else{s=u?l.add(u.position,r.pointB):r.pointB;n.beginPath();n.moveTo(a.x,a.y);if(\"spring\"===r.render.type){var f,d=l.sub(s,a),p=l.perp(l.normalise(d)),v=Math.ceil(o.clamp(r.length/5,12,20));for(var y=1;y<v;y+=1){f=y%2===0?1:-1;n.lineTo(a.x+d.x*(y/v)+p.x*f*4,a.y+d.y*(y/v)+p.y*f*4)}}n.lineTo(s.x,s.y)}if(r.render.lineWidth){n.lineWidth=r.render.lineWidth;n.strokeStyle=r.render.strokeStyle;n.stroke()}if(r.render.anchors){n.fillStyle=r.render.strokeStyle;n.beginPath();n.arc(a.x,a.y,3,0,2*Math.PI);n.arc(s.x,s.y,3,0,2*Math.PI);n.closePath();n.fill()}}}};\n/**\n         * Description\n         * @private\n         * @method bodies\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodies=function(e,t,n){var i,o,r,a,s=n,l=(e.engine,e.options),c=l.showInternalEdges||!l.wireframes;for(r=0;r<t.length;r++){i=t[r];if(i.render.visible)for(a=i.parts.length>1?1:0;a<i.parts.length;a++){o=i.parts[a];if(o.render.visible){l.showSleeping&&i.isSleeping?s.globalAlpha=.5*o.render.opacity:1!==o.render.opacity&&(s.globalAlpha=o.render.opacity);if(o.render.sprite&&o.render.sprite.texture&&!l.wireframes){var u=o.render.sprite,f=_getTexture(e,u.texture);s.translate(o.position.x,o.position.y);s.rotate(o.angle);s.drawImage(f,f.width*-u.xOffset*u.xScale,f.height*-u.yOffset*u.yScale,f.width*u.xScale,f.height*u.yScale);s.rotate(-o.angle);s.translate(-o.position.x,-o.position.y)}else{if(o.circleRadius){s.beginPath();s.arc(o.position.x,o.position.y,o.circleRadius,0,2*Math.PI)}else{s.beginPath();s.moveTo(o.vertices[0].x,o.vertices[0].y);for(var d=1;d<o.vertices.length;d++){!o.vertices[d-1].isInternal||c?s.lineTo(o.vertices[d].x,o.vertices[d].y):s.moveTo(o.vertices[d].x,o.vertices[d].y);o.vertices[d].isInternal&&!c&&s.moveTo(o.vertices[(d+1)%o.vertices.length].x,o.vertices[(d+1)%o.vertices.length].y)}s.lineTo(o.vertices[0].x,o.vertices[0].y);s.closePath()}if(l.wireframes){s.lineWidth=1;s.strokeStyle=\"#bbb\";s.stroke()}else{s.fillStyle=o.render.fillStyle;if(o.render.lineWidth){s.lineWidth=o.render.lineWidth;s.strokeStyle=o.render.strokeStyle;s.stroke()}s.fill()}}s.globalAlpha=1}}}};\n/**\n         * Optimised method for drawing body wireframes in one pass\n         * @private\n         * @method bodyWireframes\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyWireframes=function(e,t,n){var i,o,r,a,s,l=n,c=e.options.showInternalEdges;l.beginPath();for(r=0;r<t.length;r++){i=t[r];if(i.render.visible)for(s=i.parts.length>1?1:0;s<i.parts.length;s++){o=i.parts[s];l.moveTo(o.vertices[0].x,o.vertices[0].y);for(a=1;a<o.vertices.length;a++){!o.vertices[a-1].isInternal||c?l.lineTo(o.vertices[a].x,o.vertices[a].y):l.moveTo(o.vertices[a].x,o.vertices[a].y);o.vertices[a].isInternal&&!c&&l.moveTo(o.vertices[(a+1)%o.vertices.length].x,o.vertices[(a+1)%o.vertices.length].y)}l.lineTo(o.vertices[0].x,o.vertices[0].y)}}l.lineWidth=1;l.strokeStyle=\"#bbb\";l.stroke()};\n/**\n         * Optimised method for drawing body convex hull wireframes in one pass\n         * @private\n         * @method bodyConvexHulls\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyConvexHulls=function(e,t,n){var i,o,r,a=n;a.beginPath();for(o=0;o<t.length;o++){i=t[o];if(i.render.visible&&1!==i.parts.length){a.moveTo(i.vertices[0].x,i.vertices[0].y);for(r=1;r<i.vertices.length;r++)a.lineTo(i.vertices[r].x,i.vertices[r].y);a.lineTo(i.vertices[0].x,i.vertices[0].y)}}a.lineWidth=1;a.strokeStyle=\"rgba(255,255,255,0.2)\";a.stroke()};\n/**\n         * Renders body vertex numbers.\n         * @private\n         * @method vertexNumbers\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.vertexNumbers=function(e,t,n){var i,o,r,a=n;for(i=0;i<t.length;i++){var s=t[i].parts;for(r=s.length>1?1:0;r<s.length;r++){var l=s[r];for(o=0;o<l.vertices.length;o++){a.fillStyle=\"rgba(255,255,255,0.2)\";a.fillText(i+\"_\"+o,l.position.x+.8*(l.vertices[o].x-l.position.x),l.position.y+.8*(l.vertices[o].y-l.position.y))}}}};\n/**\n         * Renders mouse position.\n         * @private\n         * @method mousePosition\n         * @param {render} render\n         * @param {mouse} mouse\n         * @param {RenderingContext} context\n         */i.mousePosition=function(e,t,n){var i=n;i.fillStyle=\"rgba(255,255,255,0.8)\";i.fillText(t.position.x+\"  \"+t.position.y,t.position.x+5,t.position.y-5)};\n/**\n         * Draws body bounds\n         * @private\n         * @method bodyBounds\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyBounds=function(e,t,n){var i=n,o=(e.engine,e.options);i.beginPath();for(var r=0;r<t.length;r++){var a=t[r];if(a.render.visible){var s=t[r].parts;for(var l=s.length>1?1:0;l<s.length;l++){var c=s[l];i.rect(c.bounds.min.x,c.bounds.min.y,c.bounds.max.x-c.bounds.min.x,c.bounds.max.y-c.bounds.min.y)}}}o.wireframes?i.strokeStyle=\"rgba(255,255,255,0.08)\":i.strokeStyle=\"rgba(0,0,0,0.1)\";i.lineWidth=1;i.stroke()};\n/**\n         * Draws body angle indicators and axes\n         * @private\n         * @method bodyAxes\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyAxes=function(e,t,n){var i,o,r,a,s=n,l=(e.engine,e.options);s.beginPath();for(o=0;o<t.length;o++){var c=t[o],u=c.parts;if(c.render.visible)if(l.showAxes)for(r=u.length>1?1:0;r<u.length;r++){i=u[r];for(a=0;a<i.axes.length;a++){var f=i.axes[a];s.moveTo(i.position.x,i.position.y);s.lineTo(i.position.x+20*f.x,i.position.y+20*f.y)}}else for(r=u.length>1?1:0;r<u.length;r++){i=u[r];for(a=0;a<i.axes.length;a++){s.moveTo(i.position.x,i.position.y);s.lineTo((i.vertices[0].x+i.vertices[i.vertices.length-1].x)/2,(i.vertices[0].y+i.vertices[i.vertices.length-1].y)/2)}}}if(l.wireframes){s.strokeStyle=\"indianred\";s.lineWidth=1}else{s.strokeStyle=\"rgba(255, 255, 255, 0.4)\";s.globalCompositeOperation=\"overlay\";s.lineWidth=2}s.stroke();s.globalCompositeOperation=\"source-over\"};\n/**\n         * Draws body positions\n         * @private\n         * @method bodyPositions\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyPositions=function(e,t,n){var i,o,r,a,s=n,l=(e.engine,e.options);s.beginPath();for(r=0;r<t.length;r++){i=t[r];if(i.render.visible)for(a=0;a<i.parts.length;a++){o=i.parts[a];s.arc(o.position.x,o.position.y,3,0,2*Math.PI,false);s.closePath()}}l.wireframes?s.fillStyle=\"indianred\":s.fillStyle=\"rgba(0,0,0,0.5)\";s.fill();s.beginPath();for(r=0;r<t.length;r++){i=t[r];if(i.render.visible){s.arc(i.positionPrev.x,i.positionPrev.y,2,0,2*Math.PI,false);s.closePath()}}s.fillStyle=\"rgba(255,165,0,0.8)\";s.fill()};\n/**\n         * Draws body velocity\n         * @private\n         * @method bodyVelocity\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyVelocity=function(e,t,n){var i=n;i.beginPath();for(var o=0;o<t.length;o++){var r=t[o];if(r.render.visible){i.moveTo(r.position.x,r.position.y);i.lineTo(r.position.x+2*(r.position.x-r.positionPrev.x),r.position.y+2*(r.position.y-r.positionPrev.y))}}i.lineWidth=3;i.strokeStyle=\"cornflowerblue\";i.stroke()};\n/**\n         * Draws body ids\n         * @private\n         * @method bodyIds\n         * @param {render} render\n         * @param {body[]} bodies\n         * @param {RenderingContext} context\n         */i.bodyIds=function(e,t,n){var i,o,r=n;for(i=0;i<t.length;i++)if(t[i].render.visible){var a=t[i].parts;for(o=a.length>1?1:0;o<a.length;o++){var s=a[o];r.font=\"12px Arial\";r.fillStyle=\"rgba(255,255,255,0.5)\";r.fillText(s.id,s.position.x+10,s.position.y-10)}}};\n/**\n         * Description\n         * @private\n         * @method collisions\n         * @param {render} render\n         * @param {pair[]} pairs\n         * @param {RenderingContext} context\n         */i.collisions=function(e,t,n){var i,o,r,a,s=n,l=e.options;s.beginPath();for(r=0;r<t.length;r++){i=t[r];if(i.isActive){o=i.collision;for(a=0;a<i.activeContacts.length;a++){var c=i.activeContacts[a],u=c.vertex;s.rect(u.x-1.5,u.y-1.5,3.5,3.5)}}}l.wireframes?s.fillStyle=\"rgba(255,255,255,0.7)\":s.fillStyle=\"orange\";s.fill();s.beginPath();for(r=0;r<t.length;r++){i=t[r];if(i.isActive){o=i.collision;if(i.activeContacts.length>0){var f=i.activeContacts[0].vertex.x,d=i.activeContacts[0].vertex.y;if(2===i.activeContacts.length){f=(i.activeContacts[0].vertex.x+i.activeContacts[1].vertex.x)/2;d=(i.activeContacts[0].vertex.y+i.activeContacts[1].vertex.y)/2}o.bodyB===o.supports[0].body||true===o.bodyA.isStatic?s.moveTo(f-8*o.normal.x,d-8*o.normal.y):s.moveTo(f+8*o.normal.x,d+8*o.normal.y);s.lineTo(f,d)}}}l.wireframes?s.strokeStyle=\"rgba(255,165,0,0.7)\":s.strokeStyle=\"orange\";s.lineWidth=1;s.stroke()};\n/**\n         * Description\n         * @private\n         * @method separations\n         * @param {render} render\n         * @param {pair[]} pairs\n         * @param {RenderingContext} context\n         */i.separations=function(e,t,n){var i,o,r,a,s,l=n,c=e.options;l.beginPath();for(s=0;s<t.length;s++){i=t[s];if(i.isActive){o=i.collision;r=o.bodyA;a=o.bodyB;var u=1;a.isStatic||r.isStatic||(u=.5);a.isStatic&&(u=0);l.moveTo(a.position.x,a.position.y);l.lineTo(a.position.x-o.penetration.x*u,a.position.y-o.penetration.y*u);u=1;a.isStatic||r.isStatic||(u=.5);r.isStatic&&(u=0);l.moveTo(r.position.x,r.position.y);l.lineTo(r.position.x+o.penetration.x*u,r.position.y+o.penetration.y*u)}}c.wireframes?l.strokeStyle=\"rgba(255,165,0,0.5)\":l.strokeStyle=\"orange\";l.stroke()};\n/**\n         * Description\n         * @private\n         * @method inspector\n         * @param {inspector} inspector\n         * @param {RenderingContext} context\n         */i.inspector=function(e,t){e.engine;var n,i=e.selected,o=e.render,r=o.options;if(r.hasBounds){var a=o.bounds.max.x-o.bounds.min.x,s=o.bounds.max.y-o.bounds.min.y,l=a/o.options.width,c=s/o.options.height;t.scale(1/l,1/c);t.translate(-o.bounds.min.x,-o.bounds.min.y)}for(var u=0;u<i.length;u++){var f=i[u].data;t.translate(.5,.5);t.lineWidth=1;t.strokeStyle=\"rgba(255,165,0,0.9)\";t.setLineDash([1,2]);switch(f.type){case\"body\":n=f.bounds;t.beginPath();t.rect(Math.floor(n.min.x-3),Math.floor(n.min.y-3),Math.floor(n.max.x-n.min.x+6),Math.floor(n.max.y-n.min.y+6));t.closePath();t.stroke();break;case\"constraint\":var d=f.pointA;f.bodyA&&(d=f.pointB);t.beginPath();t.arc(d.x,d.y,10,0,2*Math.PI);t.closePath();t.stroke();break}t.setLineDash([]);t.translate(-.5,-.5)}if(null!==e.selectStart){t.translate(.5,.5);t.lineWidth=1;t.strokeStyle=\"rgba(255,165,0,0.6)\";t.fillStyle=\"rgba(255,165,0,0.1)\";n=e.selectBounds;t.beginPath();t.rect(Math.floor(n.min.x),Math.floor(n.min.y),Math.floor(n.max.x-n.min.x),Math.floor(n.max.y-n.min.y));t.closePath();t.stroke();t.fill();t.translate(-.5,-.5)}r.hasBounds&&t.setTransform(1,0,0,1,0,0)};\n/**\n         * Updates render timing.\n         * @method _updateTiming\n         * @private\n         * @param {render} render\n         * @param {number} time\n         */var _updateTiming=function(e,t){var n=e.engine,o=e.timing,r=o.historySize,a=n.timing.timestamp;o.delta=t-o.lastTime||i._goodDelta;o.lastTime=t;o.timestampElapsed=a-o.lastTimestamp||0;o.lastTimestamp=a;o.deltaHistory.unshift(o.delta);o.deltaHistory.length=Math.min(o.deltaHistory.length,r);o.engineDeltaHistory.unshift(n.timing.lastDelta);o.engineDeltaHistory.length=Math.min(o.engineDeltaHistory.length,r);o.timestampElapsedHistory.unshift(o.timestampElapsed);o.timestampElapsedHistory.length=Math.min(o.timestampElapsedHistory.length,r);o.engineElapsedHistory.unshift(n.timing.lastElapsed);o.engineElapsedHistory.length=Math.min(o.engineElapsedHistory.length,r);o.elapsedHistory.unshift(o.lastElapsed);o.elapsedHistory.length=Math.min(o.elapsedHistory.length,r)};\n/**\n         * Returns the mean value of the given numbers.\n         * @method _mean\n         * @private\n         * @param {Number[]} values\n         * @return {Number} the mean of given values\n         */var _mean=function(e){var t=0;for(var n=0;n<e.length;n+=1)t+=e[n];return t/e.length||0};\n/**\n         * @method _createCanvas\n         * @private\n         * @param {} width\n         * @param {} height\n         * @return canvas\n         */var _createCanvas=function(e,t){var n=document.createElement(\"canvas\");n.width=e;n.height=t;n.oncontextmenu=function(){return false};n.onselectstart=function(){return false};return n};\n/**\n         * Gets the pixel ratio of the canvas.\n         * @method _getPixelRatio\n         * @private\n         * @param {HTMLElement} canvas\n         * @return {Number} pixel ratio\n         */var _getPixelRatio=function(e){var t=e.getContext(\"2d\"),n=window.devicePixelRatio||1,i=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/i};\n/**\n         * Gets the requested texture (an Image) via its path\n         * @method _getTexture\n         * @private\n         * @param {render} render\n         * @param {string} imagePath\n         * @return {Image} texture\n         */var _getTexture=function(e,t){var n=e.textures[t];if(n)return n;n=e.textures[t]=new Image;n.src=t;return n};\n/**\n         * Applies the background to the canvas using CSS.\n         * @method applyBackground\n         * @private\n         * @param {render} render\n         * @param {string} background\n         */var _applyBackground=function(e,t){var n=t;/(jpg|gif|png)$/.test(t)&&(n=\"url(\"+t+\")\");e.canvas.style.background=n;e.canvas.style.backgroundSize=\"contain\";e.currentBackground=t};\n/**\n        * Fired before rendering\n        *\n        * @event beforeRender\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired after rendering\n        *\n        * @event afterRender\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n         * A back-reference to the `Matter.Render` module.\n         *\n         * @property controller\n         * @type render\n         */\n/**\n         * A reference to the `Matter.Engine` instance to be used.\n         *\n         * @property engine\n         * @type engine\n         */\n/**\n         * A reference to the element where the canvas is to be inserted (if `render.canvas` has not been specified)\n         *\n         * @property element\n         * @type HTMLElement\n         * @default null\n         */\n/**\n         * The canvas element to render to. If not specified, one will be created if `render.element` has been specified.\n         *\n         * @property canvas\n         * @type HTMLCanvasElement\n         * @default null\n         */\n/**\n         * A `Bounds` object that specifies the drawing view region.\n         * Rendering will be automatically transformed and scaled to fit within the canvas size (`render.options.width` and `render.options.height`).\n         * This allows for creating views that can pan or zoom around the scene.\n         * You must also set `render.options.hasBounds` to `true` to enable bounded rendering.\n         *\n         * @property bounds\n         * @type bounds\n         */\n/**\n         * The 2d rendering context from the `render.canvas` element.\n         *\n         * @property context\n         * @type CanvasRenderingContext2D\n         */\n/**\n         * The sprite texture cache.\n         *\n         * @property textures\n         * @type {}\n         */\n/**\n         * The mouse to render if `render.options.showMousePosition` is enabled.\n         *\n         * @property mouse\n         * @type mouse\n         * @default null\n         */\n/**\n         * The configuration options of the renderer.\n         *\n         * @property options\n         * @type {}\n         */\n/**\n         * The target width in pixels of the `render.canvas` to be created.\n         * See also the `options.pixelRatio` property to change render quality.\n         *\n         * @property options.width\n         * @type number\n         * @default 800\n         */\n/**\n         * The target height in pixels of the `render.canvas` to be created.\n         * See also the `options.pixelRatio` property to change render quality.\n         *\n         * @property options.height\n         * @type number\n         * @default 600\n         */\n/**\n         * The [pixel ratio](https://developer.mozilla.org/en-US/docs/Web/API/Window/devicePixelRatio) to use when rendering.\n         *\n         * @property options.pixelRatio\n         * @type number\n         * @default 1\n         */\n/**\n         * A CSS background color string to use when `render.options.wireframes` is disabled.\n         * This may be also set to `'transparent'` or equivalent.\n         *\n         * @property options.background\n         * @type string\n         * @default '#14151f'\n         */\n/**\n         * A CSS background color string to use when `render.options.wireframes` is enabled.\n         * This may be also set to `'transparent'` or equivalent.\n         *\n         * @property options.wireframeBackground\n         * @type string\n         * @default '#14151f'\n         */\n/**\n         * A flag that specifies if `render.bounds` should be used when rendering.\n         *\n         * @property options.hasBounds\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable all debug information overlays together.  \n         * This includes and has priority over the values of:\n         *\n         * - `render.options.showStats`\n         * - `render.options.showPerformance`\n         *\n         * @property options.showDebug\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the engine stats info overlay.  \n         * From left to right, the values shown are:\n         *\n         * - body parts total\n         * - body total\n         * - constraints total\n         * - composites total\n         * - collision pairs total\n         *\n         * @property options.showStats\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable performance charts.  \n         * From left to right, the values shown are:\n         *\n         * - average render frequency (e.g. 60 fps)\n         * - exact engine delta time used for last update (e.g. 16.66ms)\n         * - average engine execution duration (e.g. 5.00ms)\n         * - average render execution duration (e.g. 0.40ms)\n         * - average effective play speed (e.g. '1.00x' is 'real-time')\n         *\n         * Each value is recorded over a fixed sample of past frames (60 frames).\n         *\n         * A chart shown below each value indicates the variance from the average over the sample.\n         * The more stable or fixed the value is the flatter the chart will appear.\n         *\n         * @property options.showPerformance\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable rendering entirely.\n         *\n         * @property options.enabled\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to toggle wireframe rendering otherwise solid fill rendering is used.\n         *\n         * @property options.wireframes\n         * @type boolean\n         * @default true\n         */\n/**\n         * A flag to enable or disable sleeping bodies indicators.\n         *\n         * @property options.showSleeping\n         * @type boolean\n         * @default true\n         */\n/**\n         * A flag to enable or disable the debug information overlay.\n         *\n         * @property options.showDebug\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the collision broadphase debug overlay.\n         *\n         * @deprecated no longer implemented\n         * @property options.showBroadphase\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body bounds debug overlay.\n         *\n         * @property options.showBounds\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body velocity debug overlay.\n         *\n         * @property options.showVelocity\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body collisions debug overlay.\n         *\n         * @property options.showCollisions\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the collision resolver separations debug overlay.\n         *\n         * @property options.showSeparations\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body axes debug overlay.\n         *\n         * @property options.showAxes\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body positions debug overlay.\n         *\n         * @property options.showPositions\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body angle debug overlay.\n         *\n         * @property options.showAngleIndicator\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body and part ids debug overlay.\n         *\n         * @property options.showIds\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body vertex numbers debug overlay.\n         *\n         * @property options.showVertexNumbers\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body convex hulls debug overlay.\n         *\n         * @property options.showConvexHulls\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the body internal edges debug overlay.\n         *\n         * @property options.showInternalEdges\n         * @type boolean\n         * @default false\n         */\n/**\n         * A flag to enable or disable the mouse position debug overlay.\n         *\n         * @property options.showMousePosition\n         * @type boolean\n         * @default false\n         */})()},function(e,t){var n={};e.exports=n;(function(){\n/**\n         * Creates a new contact.\n         * @method create\n         * @param {vertex} vertex\n         * @return {contact} A new contact\n         */\nn.create=function(e){return{vertex:e,normalImpulse:0,tangentImpulse:0}}})()},function(e,t,n){var i={};e.exports=i;var o=n(7);var r=n(19);var a=n(14);var s=n(20);var l=n(4);var c=n(5);var u=n(10);var f=n(0);var d=n(6);(function(){\n/**\n         * Creates a new engine. The options parameter is an object that specifies any properties you wish to override the defaults.\n         * All properties have default values, and many are pre-calculated automatically based on other properties.\n         * See the properties section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {object} [options]\n         * @return {engine} engine\n         */\ni.create=function(e){e=e||{};var t={positionIterations:6,velocityIterations:4,constraintIterations:2,enableSleeping:false,events:[],plugin:{},gravity:{x:0,y:1,scale:.001},timing:{timestamp:0,timeScale:1,lastDelta:0,lastElapsed:0}};var n=f.extend(t,e);n.world=e.world||c.create({label:\"World\"});n.pairs=e.pairs||s.create();n.detector=e.detector||a.create();n.grid={buckets:[]};n.world.gravity=n.gravity;n.broadphase=n.grid;n.metrics={};return n};\n/**\n         * Moves the simulation forward in time by `delta` ms.\n         * The `correction` argument is an optional `Number` that specifies the time correction factor to apply to the update.\n         * This can help improve the accuracy of the simulation in cases where `delta` is changing between updates.\n         * The value of `correction` is defined as `delta / lastDelta`, i.e. the percentage change of `delta` over the last step.\n         * Therefore the value is always `1` (no correction) when `delta` constant (or when no correction is desired, which is the default).\n         * See the paper on <a href=\"http://lonesock.net/article/verlet.html\">Time Corrected Verlet</a> for more information.\n         *\n         * Triggers `beforeUpdate` and `afterUpdate` events.\n         * Triggers `collisionStart`, `collisionActive` and `collisionEnd` events.\n         * @method update\n         * @param {engine} engine\n         * @param {number} [delta=16.666]\n         * @param {number} [correction=1]\n         */i.update=function(e,t,n){var d=f.now();t=t||1e3/60;n=n||1;var p,v=e.world,y=e.detector,m=e.pairs,g=e.timing,x=g.timestamp;g.timestamp+=t*g.timeScale;g.lastDelta=t*g.timeScale;var h={timestamp:g.timestamp};l.trigger(e,\"beforeUpdate\",h);var b=c.allBodies(v),S=c.allConstraints(v);v.isModified&&a.setBodies(y,b);v.isModified&&c.setModified(v,false,false,true);e.enableSleeping&&o.update(b,g.timeScale);i._bodiesApplyGravity(b,e.gravity);i._bodiesUpdate(b,t,g.timeScale,n,v.bounds);u.preSolveAll(b);for(p=0;p<e.constraintIterations;p++)u.solveAll(S,g.timeScale);u.postSolveAll(b);y.pairs=e.pairs;var w=a.collisions(y);s.update(m,w,x);e.enableSleeping&&o.afterCollisions(m.list,g.timeScale);m.collisionStart.length>0&&l.trigger(e,\"collisionStart\",{pairs:m.collisionStart});r.preSolvePosition(m.list);for(p=0;p<e.positionIterations;p++)r.solvePosition(m.list,g.timeScale);r.postSolvePosition(b);u.preSolveAll(b);for(p=0;p<e.constraintIterations;p++)u.solveAll(S,g.timeScale);u.postSolveAll(b);r.preSolveVelocity(m.list);for(p=0;p<e.velocityIterations;p++)r.solveVelocity(m.list,g.timeScale);m.collisionActive.length>0&&l.trigger(e,\"collisionActive\",{pairs:m.collisionActive});m.collisionEnd.length>0&&l.trigger(e,\"collisionEnd\",{pairs:m.collisionEnd});i._bodiesClearForces(b);l.trigger(e,\"afterUpdate\",h);e.timing.lastElapsed=f.now()-d;return e};\n/**\n         * Merges two engines by keeping the configuration of `engineA` but replacing the world with the one from `engineB`.\n         * @method merge\n         * @param {engine} engineA\n         * @param {engine} engineB\n         */i.merge=function(e,t){f.extend(e,t);if(t.world){e.world=t.world;i.clear(e);var n=c.allBodies(e.world);for(var r=0;r<n.length;r++){var a=n[r];o.set(a,false);a.id=f.nextId()}}};\n/**\n         * Clears the engine pairs and detector.\n         * @method clear\n         * @param {engine} engine\n         */i.clear=function(e){s.clear(e.pairs);a.clear(e.detector)};\n/**\n         * Zeroes the `body.force` and `body.torque` force buffers.\n         * @method _bodiesClearForces\n         * @private\n         * @param {body[]} bodies\n         */i._bodiesClearForces=function(e){for(var t=0;t<e.length;t++){var n=e[t];n.force.x=0;n.force.y=0;n.torque=0}};\n/**\n         * Applys a mass dependant force to all given bodies.\n         * @method _bodiesApplyGravity\n         * @private\n         * @param {body[]} bodies\n         * @param {vector} gravity\n         */i._bodiesApplyGravity=function(e,t){var n=\"undefined\"!==typeof t.scale?t.scale:.001;if((0!==t.x||0!==t.y)&&0!==n)for(var i=0;i<e.length;i++){var o=e[i];if(!o.isStatic&&!o.isSleeping){o.force.y+=o.mass*t.y*n;o.force.x+=o.mass*t.x*n}}};\n/**\n         * Applys `Body.update` to all given `bodies`.\n         * @method _bodiesUpdate\n         * @private\n         * @param {body[]} bodies\n         * @param {number} deltaTime \n         * The amount of time elapsed between updates\n         * @param {number} timeScale\n         * @param {number} correction \n         * The Verlet correction factor (deltaTime / lastDeltaTime)\n         * @param {bounds} worldBounds\n         */i._bodiesUpdate=function(e,t,n,i,o){for(var r=0;r<e.length;r++){var a=e[r];a.isStatic||a.isSleeping||d.update(a,t,n,i)}};\n/**\n         * A deprecated alias for `Runner.run`, use `Matter.Runner.run(engine)` instead and see `Matter.Runner` for more information.\n         * @deprecated use Matter.Runner.run(engine) instead\n         * @method run\n         * @param {engine} engine\n         */\n/**\n        * Fired just before an update\n        *\n        * @event beforeUpdate\n        * @param {object} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {engine} event.source The source object of the event\n        * @param {string} event.name The name of the event\n        */\n/**\n        * Fired after engine update and all collision events\n        *\n        * @event afterUpdate\n        * @param {object} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {engine} event.source The source object of the event\n        * @param {string} event.name The name of the event\n        */\n/**\n        * Fired after engine update, provides a list of all pairs that have started to collide in the current tick (if any)\n        *\n        * @event collisionStart\n        * @param {object} event An event object\n        * @param {pair[]} event.pairs List of affected pairs\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {engine} event.source The source object of the event\n        * @param {string} event.name The name of the event\n        */\n/**\n        * Fired after engine update, provides a list of all pairs that are colliding in the current tick (if any)\n        *\n        * @event collisionActive\n        * @param {object} event An event object\n        * @param {pair[]} event.pairs List of affected pairs\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {engine} event.source The source object of the event\n        * @param {string} event.name The name of the event\n        */\n/**\n        * Fired after engine update, provides a list of all pairs that have ended collision in the current tick (if any)\n        *\n        * @event collisionEnd\n        * @param {object} event An event object\n        * @param {pair[]} event.pairs List of affected pairs\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {engine} event.source The source object of the event\n        * @param {string} event.name The name of the event\n        */\n/**\n         * An integer `Number` that specifies the number of position iterations to perform each update.\n         * The higher the value, the higher quality the simulation will be at the expense of performance.\n         *\n         * @property positionIterations\n         * @type number\n         * @default 6\n         */\n/**\n         * An integer `Number` that specifies the number of velocity iterations to perform each update.\n         * The higher the value, the higher quality the simulation will be at the expense of performance.\n         *\n         * @property velocityIterations\n         * @type number\n         * @default 4\n         */\n/**\n         * An integer `Number` that specifies the number of constraint iterations to perform each update.\n         * The higher the value, the higher quality the simulation will be at the expense of performance.\n         * The default value of `2` is usually very adequate.\n         *\n         * @property constraintIterations\n         * @type number\n         * @default 2\n         */\n/**\n         * A flag that specifies whether the engine should allow sleeping via the `Matter.Sleeping` module.\n         * Sleeping can improve stability and performance, but often at the expense of accuracy.\n         *\n         * @property enableSleeping\n         * @type boolean\n         * @default false\n         */\n/**\n         * An `Object` containing properties regarding the timing systems of the engine. \n         *\n         * @property timing\n         * @type object\n         */\n/**\n         * A `Number` that specifies the global scaling factor of time for all bodies.\n         * A value of `0` freezes the simulation.\n         * A value of `0.1` gives a slow-motion effect.\n         * A value of `1.2` gives a speed-up effect.\n         *\n         * @property timing.timeScale\n         * @type number\n         * @default 1\n         */\n/**\n         * A `Number` that specifies the current simulation-time in milliseconds starting from `0`. \n         * It is incremented on every `Engine.update` by the given `delta` argument. \n         *\n         * @property timing.timestamp\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that represents the total execution time elapsed during the last `Engine.update` in milliseconds.\n         * It is updated by timing from the start of the last `Engine.update` call until it ends.\n         *\n         * This value will also include the total execution time of all event handlers directly or indirectly triggered by the engine update.\n         *\n         * @property timing.lastElapsed\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Number` that represents the `delta` value used in the last engine update.\n         *\n         * @property timing.lastDelta\n         * @type number\n         * @default 0\n         */\n/**\n         * A `Matter.Detector` instance.\n         *\n         * @property detector\n         * @type detector\n         * @default a Matter.Detector instance\n         */\n/**\n         * A `Matter.Grid` instance.\n         *\n         * @deprecated replaced by `engine.detector`\n         * @property grid\n         * @type grid\n         * @default a Matter.Grid instance\n         */\n/**\n         * Replaced by and now alias for `engine.grid`.\n         *\n         * @deprecated replaced by `engine.detector`\n         * @property broadphase\n         * @type grid\n         * @default a Matter.Grid instance\n         */\n/**\n         * The root `Matter.Composite` instance that will contain all bodies, constraints and other composites to be simulated by this engine.\n         *\n         * @property world\n         * @type composite\n         * @default a Matter.Composite instance\n         */\n/**\n         * An object reserved for storing plugin-specific properties.\n         *\n         * @property plugin\n         * @type {}\n         */\n/**\n         * The gravity to apply on all bodies in `engine.world`.\n         *\n         * @property gravity\n         * @type object\n         */\n/**\n         * The gravity x component.\n         *\n         * @property gravity.x\n         * @type object\n         * @default 0\n         */\n/**\n         * The gravity y component.\n         *\n         * @property gravity.y\n         * @type object\n         * @default 1\n         */\n/**\n         * The gravity scale factor.\n         *\n         * @property gravity.scale\n         * @type object\n         * @default 0.001\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(1);(function(){i._restingThresh=4;i._restingThreshTangent=6;i._positionDampen=.9;i._positionWarming=.8;i._frictionNormalMultiplier=5;\n/**\n         * Prepare pairs for position solving.\n         * @method preSolvePosition\n         * @param {pair[]} pairs\n         */i.preSolvePosition=function(e){var t,n,i,o=e.length;for(t=0;t<o;t++){n=e[t];if(n.isActive){i=n.activeContacts.length;n.collision.parentA.totalContacts+=i;n.collision.parentB.totalContacts+=i}}};\n/**\n         * Find a solution for pair positions.\n         * @method solvePosition\n         * @param {pair[]} pairs\n         * @param {number} timeScale\n         */i.solvePosition=function(e,t){var n,o,r,a,s,l,c,u,f=i._positionDampen,d=e.length;for(n=0;n<d;n++){o=e[n];if(o.isActive&&!o.isSensor){r=o.collision;a=r.parentA;s=r.parentB;l=r.normal;o.separation=l.x*(s.positionImpulse.x+r.penetration.x-a.positionImpulse.x)+l.y*(s.positionImpulse.y+r.penetration.y-a.positionImpulse.y)}}for(n=0;n<d;n++){o=e[n];if(o.isActive&&!o.isSensor){r=o.collision;a=r.parentA;s=r.parentB;l=r.normal;u=(o.separation-o.slop)*t;(a.isStatic||s.isStatic)&&(u*=2);if(!(a.isStatic||a.isSleeping)){c=f/a.totalContacts;a.positionImpulse.x+=l.x*u*c;a.positionImpulse.y+=l.y*u*c}if(!(s.isStatic||s.isSleeping)){c=f/s.totalContacts;s.positionImpulse.x-=l.x*u*c;s.positionImpulse.y-=l.y*u*c}}}};\n/**\n         * Apply position resolution.\n         * @method postSolvePosition\n         * @param {body[]} bodies\n         */i.postSolvePosition=function(e){var t=i._positionWarming,n=e.length,a=o.translate,s=r.update;for(var l=0;l<n;l++){var c=e[l],u=c.positionImpulse,f=u.x,d=u.y,p=c.velocity;c.totalContacts=0;if(0!==f||0!==d){for(var v=0;v<c.parts.length;v++){var y=c.parts[v];a(y.vertices,u);s(y.bounds,y.vertices,p);y.position.x+=f;y.position.y+=d}c.positionPrev.x+=f;c.positionPrev.y+=d;if(f*p.x+d*p.y<0){u.x=0;u.y=0}else{u.x*=t;u.y*=t}}}};\n/**\n         * Prepare pairs for velocity solving.\n         * @method preSolveVelocity\n         * @param {pair[]} pairs\n         */i.preSolveVelocity=function(e){var t,n,i=e.length;for(t=0;t<i;t++){var o=e[t];if(o.isActive&&!o.isSensor){var r=o.activeContacts,a=r.length,s=o.collision,l=s.parentA,c=s.parentB,u=s.normal,f=s.tangent;for(n=0;n<a;n++){var d=r[n],p=d.vertex,v=d.normalImpulse,y=d.tangentImpulse;if(0!==v||0!==y){var m=u.x*v+f.x*y,g=u.y*v+f.y*y;if(!(l.isStatic||l.isSleeping)){l.positionPrev.x+=m*l.inverseMass;l.positionPrev.y+=g*l.inverseMass;l.anglePrev+=l.inverseInertia*((p.x-l.position.x)*g-(p.y-l.position.y)*m)}if(!(c.isStatic||c.isSleeping)){c.positionPrev.x-=m*c.inverseMass;c.positionPrev.y-=g*c.inverseMass;c.anglePrev-=c.inverseInertia*((p.x-c.position.x)*g-(p.y-c.position.y)*m)}}}}}};\n/**\n         * Find a solution for pair velocities.\n         * @method solveVelocity\n         * @param {pair[]} pairs\n         * @param {number} timeScale\n         */i.solveVelocity=function(e,t){var n,o,r,a,s=t*t,l=i._restingThresh*s,c=i._frictionNormalMultiplier,u=i._restingThreshTangent*s,f=Number.MAX_VALUE,d=e.length;for(r=0;r<d;r++){var p=e[r];if(p.isActive&&!p.isSensor){var v=p.collision,y=v.parentA,m=v.parentB,g=y.velocity,x=m.velocity,h=v.normal.x,b=v.normal.y,S=v.tangent.x,w=v.tangent.y,_=p.activeContacts,A=_.length,P=1/A,C=y.inverseMass+m.inverseMass,k=p.friction*p.frictionStatic*c*s;g.x=y.position.x-y.positionPrev.x;g.y=y.position.y-y.positionPrev.y;x.x=m.position.x-m.positionPrev.x;x.y=m.position.y-m.positionPrev.y;y.angularVelocity=y.angle-y.anglePrev;m.angularVelocity=m.angle-m.anglePrev;for(a=0;a<A;a++){var M=_[a],B=M.vertex;var I=B.x-y.position.x,T=B.y-y.position.y,R=B.x-m.position.x,E=B.y-m.position.y;var V=g.x-T*y.angularVelocity,L=g.y+I*y.angularVelocity,q=x.x-E*m.angularVelocity,O=x.y+R*m.angularVelocity;var D=V-q,F=L-O;var H=h*D+b*F,j=S*D+w*F;var W=p.separation+H;var G=Math.min(W,1);G=W<0?0:G;var N=G*k;if(j>N||-j>N){o=j>0?j:-j;n=p.friction*(j>0?1:-1)*s;n<-o?n=-o:n>o&&(n=o)}else{n=j;o=f}var U=I*b-T*h,z=R*b-E*h,X=P/(C+y.inverseInertia*U*U+m.inverseInertia*z*z);var Q=(1+p.restitution)*H*X;n*=X;if(H*H>l&&H<0)M.normalImpulse=0;else{var Y=M.normalImpulse;M.normalImpulse+=Q;M.normalImpulse=Math.min(M.normalImpulse,0);Q=M.normalImpulse-Y}if(j*j>u)M.tangentImpulse=0;else{var Z=M.tangentImpulse;M.tangentImpulse+=n;M.tangentImpulse<-o&&(M.tangentImpulse=-o);M.tangentImpulse>o&&(M.tangentImpulse=o);n=M.tangentImpulse-Z}var $=h*Q+S*n,J=b*Q+w*n;if(!(y.isStatic||y.isSleeping)){y.positionPrev.x+=$*y.inverseMass;y.positionPrev.y+=J*y.inverseMass;y.anglePrev+=(I*J-T*$)*y.inverseInertia}if(!(m.isStatic||m.isSleeping)){m.positionPrev.x-=$*m.inverseMass;m.positionPrev.y-=J*m.inverseMass;m.anglePrev-=(R*J-E*$)*m.inverseInertia}}}}}})()},function(e,t,n){var i={};e.exports=i;var o=n(9);var r=n(0);(function(){\n/**\n         * Creates a new pairs structure.\n         * @method create\n         * @param {object} options\n         * @return {pairs} A new pairs structure\n         */\ni.create=function(e){return r.extend({table:{},list:[],collisionStart:[],collisionActive:[],collisionEnd:[]},e)};\n/**\n         * Updates pairs given a list of collisions.\n         * @method update\n         * @param {object} pairs\n         * @param {collision[]} collisions\n         * @param {number} timestamp\n         */i.update=function(e,t,n){var i,r,a,s,l=e.list,c=l.length,u=e.table,f=t.length,d=e.collisionStart,p=e.collisionEnd,v=e.collisionActive;d.length=0;p.length=0;v.length=0;for(s=0;s<c;s++)l[s].confirmedActive=false;for(s=0;s<f;s++){i=t[s];a=i.pair;if(a){a.isActive?v.push(a):d.push(a);o.update(a,i,n);a.confirmedActive=true}else{a=o.create(i,n);u[a.id]=a;d.push(a);l.push(a)}}var y=[];c=l.length;for(s=0;s<c;s++){a=l[s];if(!a.confirmedActive){o.setActive(a,false,n);p.push(a);a.collision.bodyA.isSleeping||a.collision.bodyB.isSleeping||y.push(s)}}for(s=0;s<y.length;s++){r=y[s]-s;a=l[r];l.splice(r,1);delete u[a.id]}};\n/**\n         * Clears the given pairs structure.\n         * @method clear\n         * @param {pairs} pairs\n         * @return {pairs} pairs\n         */i.clear=function(e){e.table={};e.list.length=0;e.collisionStart.length=0;e.collisionActive.length=0;e.collisionEnd.length=0;return e}})()},function(e,t,n){var i=e.exports=n(22);i.Axes=n(11);i.Bodies=n(12);i.Body=n(6);i.Bounds=n(1);i.Collision=n(8);i.Common=n(0);i.Composite=n(5);i.Composites=n(23);i.Constraint=n(10);i.Contact=n(17);i.Detector=n(14);i.Engine=n(18);i.Events=n(4);i.Grid=n(24);i.Mouse=n(13);i.MouseConstraint=n(25);i.Pair=n(9);i.Pairs=n(20);i.Plugin=n(15);i.Query=n(26);i.Render=n(16);i.Resolver=n(19);i.Runner=n(27);i.SAT=n(28);i.Sleeping=n(7);i.Svg=n(29);i.Vector=n(2);i.Vertices=n(3);i.World=n(30);i.Engine.run=i.Runner.run;i.Common.deprecated(i.Engine,\"run\",\"Engine.run ➤ use Matter.Runner.run(engine) instead\")},function(e,t,n){var i={};e.exports=i;var o=n(15);var r=n(0);(function(){\n/**\n         * The library name.\n         * @property name\n         * @readOnly\n         * @type {String}\n         */\ni.name=\"matter-js\";\n/**\n         * The library version.\n         * @property version\n         * @readOnly\n         * @type {String}\n         */i.version=\"0.18.0\";\n/**\n         * A list of plugin dependencies to be installed. These are normally set and installed through `Matter.use`.\n         * Alternatively you may set `Matter.uses` manually and install them by calling `Plugin.use(Matter)`.\n         * @property uses\n         * @type {Array}\n         */i.uses=[];\n/**\n         * The plugins that have been installed through `Matter.Plugin.install`. Read only.\n         * @property used\n         * @readOnly\n         * @type {Array}\n         */i.used=[];\n/**\n         * Installs the given plugins on the `Matter` namespace.\n         * This is a short-hand for `Plugin.use`, see it for more information.\n         * Call this function once at the start of your code, with all of the plugins you wish to install as arguments.\n         * Avoid calling this function multiple times unless you intend to manually control installation order.\n         * @method use\n         * @param ...plugin {Function} The plugin(s) to install on `base` (multi-argument).\n         */i.use=function(){o.use(i,Array.prototype.slice.call(arguments))};\n/**\n         * Chains a function to excute before the original function on the given `path` relative to `Matter`.\n         * See also docs for `Common.chain`.\n         * @method before\n         * @param {string} path The path relative to `Matter`\n         * @param {function} func The function to chain before the original\n         * @return {function} The chained function that replaced the original\n         */i.before=function(e,t){e=e.replace(/^Matter./,\"\");return r.chainPathBefore(i,e,t)};\n/**\n         * Chains a function to excute after the original function on the given `path` relative to `Matter`.\n         * See also docs for `Common.chain`.\n         * @method after\n         * @param {string} path The path relative to `Matter`\n         * @param {function} func The function to chain after the original\n         * @return {function} The chained function that replaced the original\n         */i.after=function(e,t){e=e.replace(/^Matter./,\"\");return r.chainPathAfter(i,e,t)}})()},function(e,t,n){var i={};e.exports=i;var o=n(5);var r=n(10);var a=n(0);var s=n(6);var l=n(12);var c=a.deprecated;(function(){\n/**\n         * Create a new composite containing bodies created in the callback in a grid arrangement.\n         * This function uses the body's bounds to prevent overlaps.\n         * @method stack\n         * @param {number} xx\n         * @param {number} yy\n         * @param {number} columns\n         * @param {number} rows\n         * @param {number} columnGap\n         * @param {number} rowGap\n         * @param {function} callback\n         * @return {composite} A new composite containing objects created in the callback\n         */\ni.stack=function(e,t,n,i,r,a,l){var c,u=o.create({label:\"Stack\"}),f=e,d=t,p=0;for(var v=0;v<i;v++){var y=0;for(var m=0;m<n;m++){var g=l(f,d,m,v,c,p);if(g){var x=g.bounds.max.y-g.bounds.min.y,h=g.bounds.max.x-g.bounds.min.x;x>y&&(y=x);s.translate(g,{x:.5*h,y:.5*x});f=g.bounds.max.x+r;o.addBody(u,g);c=g;p+=1}else f+=r}d+=y+a;f=e}return u};\n/**\n         * Chains all bodies in the given composite together using constraints.\n         * @method chain\n         * @param {composite} composite\n         * @param {number} xOffsetA\n         * @param {number} yOffsetA\n         * @param {number} xOffsetB\n         * @param {number} yOffsetB\n         * @param {object} options\n         * @return {composite} A new composite containing objects chained together with constraints\n         */i.chain=function(e,t,n,i,s,l){var c=e.bodies;for(var u=1;u<c.length;u++){var f=c[u-1],d=c[u],p=f.bounds.max.y-f.bounds.min.y,v=f.bounds.max.x-f.bounds.min.x,y=d.bounds.max.y-d.bounds.min.y,m=d.bounds.max.x-d.bounds.min.x;var g={bodyA:f,pointA:{x:v*t,y:p*n},bodyB:d,pointB:{x:m*i,y:y*s}};var x=a.extend(g,l);o.addConstraint(e,r.create(x))}e.label+=\" Chain\";return e};\n/**\n         * Connects bodies in the composite with constraints in a grid pattern, with optional cross braces.\n         * @method mesh\n         * @param {composite} composite\n         * @param {number} columns\n         * @param {number} rows\n         * @param {boolean} crossBrace\n         * @param {object} options\n         * @return {composite} The composite containing objects meshed together with constraints\n         */i.mesh=function(e,t,n,i,s){var l,c,u,f,d,p=e.bodies;for(l=0;l<n;l++){for(c=1;c<t;c++){u=p[c-1+l*t];f=p[c+l*t];o.addConstraint(e,r.create(a.extend({bodyA:u,bodyB:f},s)))}if(l>0)for(c=0;c<t;c++){u=p[c+(l-1)*t];f=p[c+l*t];o.addConstraint(e,r.create(a.extend({bodyA:u,bodyB:f},s)));if(i&&c>0){d=p[c-1+(l-1)*t];o.addConstraint(e,r.create(a.extend({bodyA:d,bodyB:f},s)))}if(i&&c<t-1){d=p[c+1+(l-1)*t];o.addConstraint(e,r.create(a.extend({bodyA:d,bodyB:f},s)))}}}e.label+=\" Mesh\";return e};\n/**\n         * Create a new composite containing bodies created in the callback in a pyramid arrangement.\n         * This function uses the body's bounds to prevent overlaps.\n         * @method pyramid\n         * @param {number} xx\n         * @param {number} yy\n         * @param {number} columns\n         * @param {number} rows\n         * @param {number} columnGap\n         * @param {number} rowGap\n         * @param {function} callback\n         * @return {composite} A new composite containing objects created in the callback\n         */i.pyramid=function(e,t,n,o,r,a,l){return i.stack(e,t,n,o,r,a,(function(t,i,a,c,u,f){var d=Math.min(o,Math.ceil(n/2)),p=u?u.bounds.max.x-u.bounds.min.x:0;if(!(c>d)){c=d-c;var v=c,y=n-1-c;if(!(a<v||a>y)){1===f&&s.translate(u,{x:(a+(n%2===1?1:-1))*p,y:0});var m=u?a*p:0;return l(e+m+a*r,i,a,c,u,f)}}}))};\n/**\n         * This has now moved to the [newtonsCradle example](https://github.com/liabru/matter-js/blob/master/examples/newtonsCradle.js), follow that instead as this function is deprecated here.\n         * @deprecated moved to newtonsCradle example\n         * @method newtonsCradle\n         * @param {number} xx\n         * @param {number} yy\n         * @param {number} number\n         * @param {number} size\n         * @param {number} length\n         * @return {composite} A new composite newtonsCradle body\n         */i.newtonsCradle=function(e,t,n,i,a){var s=o.create({label:\"Newtons Cradle\"});for(var c=0;c<n;c++){var u=1.9,f=l.circle(e+c*(i*u),t+a,i,{inertia:Infinity,restitution:1,friction:0,frictionAir:1e-4,slop:1}),d=r.create({pointA:{x:e+c*(i*u),y:t},bodyB:f});o.addBody(s,f);o.addConstraint(s,d)}return s};c(i,\"newtonsCradle\",\"Composites.newtonsCradle ➤ moved to newtonsCradle example\");\n/**\n         * This has now moved to the [car example](https://github.com/liabru/matter-js/blob/master/examples/car.js), follow that instead as this function is deprecated here.\n         * @deprecated moved to car example\n         * @method car\n         * @param {number} xx\n         * @param {number} yy\n         * @param {number} width\n         * @param {number} height\n         * @param {number} wheelSize\n         * @return {composite} A new composite car body\n         */i.car=function(e,t,n,i,a){var c=s.nextGroup(true),u=20,f=.5*-n+u,d=.5*n-u,p=0;var v=o.create({label:\"Car\"}),y=l.rectangle(e,t,n,i,{collisionFilter:{group:c},chamfer:{radius:.5*i},density:2e-4});var m=l.circle(e+f,t+p,a,{collisionFilter:{group:c},friction:.8});var g=l.circle(e+d,t+p,a,{collisionFilter:{group:c},friction:.8});var x=r.create({bodyB:y,pointB:{x:f,y:p},bodyA:m,stiffness:1,length:0});var h=r.create({bodyB:y,pointB:{x:d,y:p},bodyA:g,stiffness:1,length:0});o.addBody(v,y);o.addBody(v,m);o.addBody(v,g);o.addConstraint(v,x);o.addConstraint(v,h);return v};c(i,\"car\",\"Composites.car ➤ moved to car example\");\n/**\n         * This has now moved to the [softBody example](https://github.com/liabru/matter-js/blob/master/examples/softBody.js)\n         * and the [cloth example](https://github.com/liabru/matter-js/blob/master/examples/cloth.js), follow those instead as this function is deprecated here.\n         * @deprecated moved to softBody and cloth examples\n         * @method softBody\n         * @param {number} xx\n         * @param {number} yy\n         * @param {number} columns\n         * @param {number} rows\n         * @param {number} columnGap\n         * @param {number} rowGap\n         * @param {boolean} crossBrace\n         * @param {number} particleRadius\n         * @param {} particleOptions\n         * @param {} constraintOptions\n         * @return {composite} A new composite softBody\n         */i.softBody=function(e,t,n,o,r,s,c,u,f,d){f=a.extend({inertia:Infinity},f);d=a.extend({stiffness:.2,render:{type:\"line\",anchors:false}},d);var p=i.stack(e,t,n,o,r,s,(function(e,t){return l.circle(e,t,u,f)}));i.mesh(p,n,o,c,d);p.label=\"Soft Body\";return p};c(i,\"softBody\",\"Composites.softBody ➤ moved to softBody and cloth examples\")})()},function(e,t,n){\n/**\n      * This module has now been replaced by `Matter.Detector`.\n      *\n      * All usage should be migrated to `Matter.Detector` or another alternative.\n      * For back-compatibility purposes this module will remain for a short term and then later removed in a future release.\n      *\n      * The `Matter.Grid` module contains methods for creating and manipulating collision broadphase grid structures.\n      *\n      * @class Grid\n      * @deprecated\n      */\nvar i={};e.exports=i;var o=n(9);var r=n(0);var a=r.deprecated;(function(){\n/**\n         * Creates a new grid.\n         * @deprecated replaced by Matter.Detector\n         * @method create\n         * @param {} options\n         * @return {grid} A new grid\n         */\ni.create=function(e){var t={buckets:{},pairs:{},pairsList:[],bucketWidth:48,bucketHeight:48};return r.extend(t,e)};\n/**\n         * The width of a single grid bucket.\n         *\n         * @property bucketWidth\n         * @type number\n         * @default 48\n         */\n/**\n         * The height of a single grid bucket.\n         *\n         * @property bucketHeight\n         * @type number\n         * @default 48\n         */\n/**\n         * Updates the grid.\n         * @deprecated replaced by Matter.Detector\n         * @method update\n         * @param {grid} grid\n         * @param {body[]} bodies\n         * @param {engine} engine\n         * @param {boolean} forceUpdate\n         */i.update=function(e,t,n,o){var r,a,s,l,c,u=n.world,f=e.buckets,d=false;for(r=0;r<t.length;r++){var p=t[r];if((!p.isSleeping||o)&&(!u.bounds||!(p.bounds.max.x<u.bounds.min.x||p.bounds.min.x>u.bounds.max.x||p.bounds.max.y<u.bounds.min.y||p.bounds.min.y>u.bounds.max.y))){var v=i._getRegion(e,p);if(!p.region||v.id!==p.region.id||o){p.region&&!o||(p.region=v);var y=i._regionUnion(v,p.region);for(a=y.startCol;a<=y.endCol;a++)for(s=y.startRow;s<=y.endRow;s++){c=i._getBucketId(a,s);l=f[c];var m=a>=v.startCol&&a<=v.endCol&&s>=v.startRow&&s<=v.endRow;var g=a>=p.region.startCol&&a<=p.region.endCol&&s>=p.region.startRow&&s<=p.region.endRow;!m&&g&&g&&l&&i._bucketRemoveBody(e,l,p);if(p.region===v||m&&!g||o){l||(l=i._createBucket(f,c));i._bucketAddBody(e,l,p)}}p.region=v;d=true}}}d&&(e.pairsList=i._createActivePairsList(e))};a(i,\"update\",\"Grid.update ➤ replaced by Matter.Detector\");\n/**\n         * Clears the grid.\n         * @deprecated replaced by Matter.Detector\n         * @method clear\n         * @param {grid} grid\n         */i.clear=function(e){e.buckets={};e.pairs={};e.pairsList=[]};a(i,\"clear\",\"Grid.clear ➤ replaced by Matter.Detector\");\n/**\n         * Finds the union of two regions.\n         * @method _regionUnion\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} regionA\n         * @param {} regionB\n         * @return {} region\n         */i._regionUnion=function(e,t){var n=Math.min(e.startCol,t.startCol),o=Math.max(e.endCol,t.endCol),r=Math.min(e.startRow,t.startRow),a=Math.max(e.endRow,t.endRow);return i._createRegion(n,o,r,a)};\n/**\n         * Gets the region a given body falls in for a given grid.\n         * @method _getRegion\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} grid\n         * @param {} body\n         * @return {} region\n         */i._getRegion=function(e,t){var n=t.bounds,o=Math.floor(n.min.x/e.bucketWidth),r=Math.floor(n.max.x/e.bucketWidth),a=Math.floor(n.min.y/e.bucketHeight),s=Math.floor(n.max.y/e.bucketHeight);return i._createRegion(o,r,a,s)};\n/**\n         * Creates a region.\n         * @method _createRegion\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} startCol\n         * @param {} endCol\n         * @param {} startRow\n         * @param {} endRow\n         * @return {} region\n         */i._createRegion=function(e,t,n,i){return{id:e+\",\"+t+\",\"+n+\",\"+i,startCol:e,endCol:t,startRow:n,endRow:i}};\n/**\n         * Gets the bucket id at the given position.\n         * @method _getBucketId\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} column\n         * @param {} row\n         * @return {string} bucket id\n         */i._getBucketId=function(e,t){return\"C\"+e+\"R\"+t};\n/**\n         * Creates a bucket.\n         * @method _createBucket\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} buckets\n         * @param {} bucketId\n         * @return {} bucket\n         */i._createBucket=function(e,t){var n=e[t]=[];return n};\n/**\n         * Adds a body to a bucket.\n         * @method _bucketAddBody\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} grid\n         * @param {} bucket\n         * @param {} body\n         */i._bucketAddBody=function(e,t,n){var i,r=e.pairs,a=o.id,s=t.length;for(i=0;i<s;i++){var l=t[i];if(!(n.id===l.id||n.isStatic&&l.isStatic)){var c=a(n,l),u=r[c];u?u[2]+=1:r[c]=[n,l,1]}}t.push(n)};\n/**\n         * Removes a body from a bucket.\n         * @method _bucketRemoveBody\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} grid\n         * @param {} bucket\n         * @param {} body\n         */i._bucketRemoveBody=function(e,t,n){var i,a=e.pairs,s=o.id;t.splice(r.indexOf(t,n),1);var l=t.length;for(i=0;i<l;i++){var c=a[s(n,t[i])];c&&(c[2]-=1)}};\n/**\n         * Generates a list of the active pairs in the grid.\n         * @method _createActivePairsList\n         * @deprecated replaced by Matter.Detector\n         * @private\n         * @param {} grid\n         * @return [] pairs\n         */i._createActivePairsList=function(e){var t,n,i=e.pairs,o=r.keys(i),a=o.length,s=[];for(n=0;n<a;n++){t=i[o[n]];t[2]>0?s.push(t):delete i[o[n]]}return s}})()},function(e,t,n){var i={};e.exports=i;var o=n(3);var r=n(7);var a=n(13);var s=n(4);var l=n(14);var c=n(10);var u=n(5);var f=n(0);var d=n(1);(function(){\n/**\n         * Creates a new mouse constraint.\n         * All properties have default values, and many are pre-calculated automatically based on other properties.\n         * See the properties section below for detailed information on what you can pass via the `options` object.\n         * @method create\n         * @param {engine} engine\n         * @param {} options\n         * @return {MouseConstraint} A new MouseConstraint\n         */\ni.create=function(e,t){var n=(e?e.mouse:null)||(t?t.mouse:null);if(!n)if(e&&e.render&&e.render.canvas)n=a.create(e.render.canvas);else if(t&&t.element)n=a.create(t.element);else{n=a.create();f.warn(\"MouseConstraint.create: options.mouse was undefined, options.element was undefined, may not function as expected\")}var o=c.create({label:\"Mouse Constraint\",pointA:n.position,pointB:{x:0,y:0},length:.01,stiffness:.1,angularStiffness:1,render:{strokeStyle:\"#90EE90\",lineWidth:3}});var r={type:\"mouseConstraint\",mouse:n,element:null,body:null,constraint:o,collisionFilter:{category:1,mask:4294967295,group:0}};var l=f.extend(r,t);s.on(e,\"beforeUpdate\",(function(){var t=u.allBodies(e.world);i.update(l,t);i._triggerEvents(l)}));return l};\n/**\n         * Updates the given mouse constraint.\n         * @private\n         * @method update\n         * @param {MouseConstraint} mouseConstraint\n         * @param {body[]} bodies\n         */i.update=function(e,t){var n=e.mouse,i=e.constraint,a=e.body;if(0===n.button)if(i.bodyB){r.set(i.bodyB,false);i.pointA=n.position}else for(var c=0;c<t.length;c++){a=t[c];if(d.contains(a.bounds,n.position)&&l.canCollide(a.collisionFilter,e.collisionFilter))for(var u=a.parts.length>1?1:0;u<a.parts.length;u++){var f=a.parts[u];if(o.contains(f.vertices,n.position)){i.pointA=n.position;i.bodyB=e.body=a;i.pointB={x:n.position.x-a.position.x,y:n.position.y-a.position.y};i.angleB=a.angle;r.set(a,false);s.trigger(e,\"startdrag\",{mouse:n,body:a});break}}}else{i.bodyB=e.body=null;i.pointB=null;a&&s.trigger(e,\"enddrag\",{mouse:n,body:a})}};\n/**\n         * Triggers mouse constraint events.\n         * @method _triggerEvents\n         * @private\n         * @param {mouse} mouseConstraint\n         */i._triggerEvents=function(e){var t=e.mouse,n=t.sourceEvents;n.mousemove&&s.trigger(e,\"mousemove\",{mouse:t});n.mousedown&&s.trigger(e,\"mousedown\",{mouse:t});n.mouseup&&s.trigger(e,\"mouseup\",{mouse:t});a.clearSourceEvents(t)};\n/**\n        * Fired when the mouse has moved (or a touch moves) during the last step\n        *\n        * @event mousemove\n        * @param {} event An event object\n        * @param {mouse} event.mouse The engine's mouse instance\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when the mouse is down (or a touch has started) during the last step\n        *\n        * @event mousedown\n        * @param {} event An event object\n        * @param {mouse} event.mouse The engine's mouse instance\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when the mouse is up (or a touch has ended) during the last step\n        *\n        * @event mouseup\n        * @param {} event An event object\n        * @param {mouse} event.mouse The engine's mouse instance\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when the user starts dragging a body\n        *\n        * @event startdrag\n        * @param {} event An event object\n        * @param {mouse} event.mouse The engine's mouse instance\n        * @param {body} event.body The body being dragged\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired when the user ends dragging a body\n        *\n        * @event enddrag\n        * @param {} event An event object\n        * @param {mouse} event.mouse The engine's mouse instance\n        * @param {body} event.body The body that has stopped being dragged\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n         * A `String` denoting the type of object.\n         *\n         * @property type\n         * @type string\n         * @default \"constraint\"\n         * @readOnly\n         */\n/**\n         * The `Mouse` instance in use. If not supplied in `MouseConstraint.create`, one will be created.\n         *\n         * @property mouse\n         * @type mouse\n         * @default mouse\n         */\n/**\n         * The `Body` that is currently being moved by the user, or `null` if no body.\n         *\n         * @property body\n         * @type body\n         * @default null\n         */\n/**\n         * The `Constraint` object that is used to move the body during interaction.\n         *\n         * @property constraint\n         * @type constraint\n         */\n/**\n         * An `Object` that specifies the collision filter properties.\n         * The collision filter allows the user to define which types of body this mouse constraint can interact with.\n         * See `body.collisionFilter` for more information.\n         *\n         * @property collisionFilter\n         * @type object\n         */})()},function(e,t,n){var i={};e.exports=i;var o=n(2);var r=n(8);var a=n(1);var s=n(12);var l=n(3);(function(){\n/**\n         * Returns a list of collisions between `body` and `bodies`.\n         * @method collides\n         * @param {body} body\n         * @param {body[]} bodies\n         * @return {collision[]} Collisions\n         */\ni.collides=function(e,t){var n=[],i=t.length,o=e.bounds,s=r.collides,l=a.overlaps;for(var c=0;c<i;c++){var u=t[c],f=u.parts.length,d=1===f?0:1;if(l(u.bounds,o))for(var p=d;p<f;p++){var v=u.parts[p];if(l(v.bounds,o)){var y=s(v,e);if(y){n.push(y);break}}}}return n};\n/**\n         * Casts a ray segment against a set of bodies and returns all collisions, ray width is optional. Intersection points are not provided.\n         * @method ray\n         * @param {body[]} bodies\n         * @param {vector} startPoint\n         * @param {vector} endPoint\n         * @param {number} [rayWidth]\n         * @return {collision[]} Collisions\n         */i.ray=function(e,t,n,r){r=r||1e-100;var a=o.angle(t,n),l=o.magnitude(o.sub(t,n)),c=.5*(n.x+t.x),u=.5*(n.y+t.y),f=s.rectangle(c,u,l,r,{angle:a}),d=i.collides(f,e);for(var p=0;p<d.length;p+=1){var v=d[p];v.body=v.bodyB=v.bodyA}return d};\n/**\n         * Returns all bodies whose bounds are inside (or outside if set) the given set of bounds, from the given set of bodies.\n         * @method region\n         * @param {body[]} bodies\n         * @param {bounds} bounds\n         * @param {bool} [outside=false]\n         * @return {body[]} The bodies matching the query\n         */i.region=function(e,t,n){var i=[];for(var o=0;o<e.length;o++){var r=e[o],s=a.overlaps(r.bounds,t);(s&&!n||!s&&n)&&i.push(r)}return i};\n/**\n         * Returns all bodies whose vertices contain the given point, from the given set of bodies.\n         * @method point\n         * @param {body[]} bodies\n         * @param {vector} point\n         * @return {body[]} The bodies matching the query\n         */i.point=function(e,t){var n=[];for(var i=0;i<e.length;i++){var o=e[i];if(a.contains(o.bounds,t))for(var r=1===o.parts.length?0:1;r<o.parts.length;r++){var s=o.parts[r];if(a.contains(s.bounds,t)&&l.contains(s.vertices,t)){n.push(o);break}}}return n}})()},function(e,t,n){var i={};e.exports=i;var o=n(4);var r=n(18);var a=n(0);(function(){var e,t;if(\"undefined\"!==typeof window){e=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame;t=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.msCancelAnimationFrame}if(!e){var n;e=function(e){n=setTimeout((function(){e(a.now())}),1e3/60)};t=function(){clearTimeout(n)}}\n/**\n         * Creates a new Runner. The options parameter is an object that specifies any properties you wish to override the defaults.\n         * @method create\n         * @param {} options\n         */i.create=function(e){var t={fps:60,correction:1,deltaSampleSize:60,counterTimestamp:0,frameCounter:0,deltaHistory:[],timePrev:null,timeScalePrev:1,frameRequestId:null,isFixed:false,enabled:true};var n=a.extend(t,e);n.delta=n.delta||1e3/n.fps;n.deltaMin=n.deltaMin||1e3/n.fps;n.deltaMax=n.deltaMax||1e3/(.5*n.fps);n.fps=1e3/n.delta;return n};\n/**\n         * Continuously ticks a `Matter.Engine` by calling `Runner.tick` on the `requestAnimationFrame` event.\n         * @method run\n         * @param {engine} engine\n         */i.run=function(t,n){if(\"undefined\"!==typeof t.positionIterations){n=t;t=i.create()}(function render(o){t.frameRequestId=e(render);o&&t.enabled&&i.tick(t,n,o)})();return t};\n/**\n         * A game loop utility that updates the engine and renderer by one step (a 'tick').\n         * Features delta smoothing, time correction and fixed or dynamic timing.\n         * Consider just `Engine.update(engine, delta)` if you're using your own loop.\n         * @method tick\n         * @param {runner} runner\n         * @param {engine} engine\n         * @param {number} time\n         */i.tick=function(e,t,n){var i,a=t.timing,s=1;var l={timestamp:a.timestamp};o.trigger(e,\"beforeTick\",l);if(e.isFixed)i=e.delta;else{i=n-e.timePrev||e.delta;e.timePrev=n;e.deltaHistory.push(i);e.deltaHistory=e.deltaHistory.slice(-e.deltaSampleSize);i=Math.min.apply(null,e.deltaHistory);i=i<e.deltaMin?e.deltaMin:i;i=i>e.deltaMax?e.deltaMax:i;s=i/e.delta;e.delta=i}0!==e.timeScalePrev&&(s*=a.timeScale/e.timeScalePrev);0===a.timeScale&&(s=0);e.timeScalePrev=a.timeScale;e.correction=s;e.frameCounter+=1;if(n-e.counterTimestamp>=1e3){e.fps=e.frameCounter*((n-e.counterTimestamp)/1e3);e.counterTimestamp=n;e.frameCounter=0}o.trigger(e,\"tick\",l);o.trigger(e,\"beforeUpdate\",l);r.update(t,i,s);o.trigger(e,\"afterUpdate\",l);o.trigger(e,\"afterTick\",l)};\n/**\n         * Ends execution of `Runner.run` on the given `runner`, by canceling the animation frame request event loop.\n         * If you wish to only temporarily pause the engine, see `engine.enabled` instead.\n         * @method stop\n         * @param {runner} runner\n         */i.stop=function(e){t(e.frameRequestId)};\n/**\n         * Alias for `Runner.run`.\n         * @method start\n         * @param {runner} runner\n         * @param {engine} engine\n         */i.start=function(e,t){i.run(e,t)};\n/**\n        * Fired at the start of a tick, before any updates to the engine or timing\n        *\n        * @event beforeTick\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired after engine timing updated, but just before update\n        *\n        * @event tick\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired at the end of a tick, after engine update and after rendering\n        *\n        * @event afterTick\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired before update\n        *\n        * @event beforeUpdate\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n        * Fired after update\n        *\n        * @event afterUpdate\n        * @param {} event An event object\n        * @param {number} event.timestamp The engine.timing.timestamp of the event\n        * @param {} event.source The source object of the event\n        * @param {} event.name The name of the event\n        */\n/**\n         * A flag that specifies whether the runner is running or not.\n         *\n         * @property enabled\n         * @type boolean\n         * @default true\n         */\n/**\n         * A `Boolean` that specifies if the runner should use a fixed timestep (otherwise it is variable).\n         * If timing is fixed, then the apparent simulation speed will change depending on the frame rate (but behaviour will be deterministic).\n         * If the timing is variable, then the apparent simulation speed will be constant (approximately, but at the cost of determininism).\n         *\n         * @property isFixed\n         * @type boolean\n         * @default false\n         */\n/**\n         * A `Number` that specifies the time step between updates in milliseconds.\n         * If `engine.timing.isFixed` is set to `true`, then `delta` is fixed.\n         * If it is `false`, then `delta` can dynamically change to maintain the correct apparent simulation speed.\n         *\n         * @property delta\n         * @type number\n         * @default 1000 / 60\n         */})()},function(e,t,n){\n/**\n      * This module has now been replaced by `Matter.Collision`.\n      *\n      * All usage should be migrated to `Matter.Collision`.\n      * For back-compatibility purposes this module will remain for a short term and then later removed in a future release.\n      *\n      * The `Matter.SAT` module contains methods for detecting collisions using the Separating Axis Theorem.\n      *\n      * @class SAT\n      * @deprecated\n      */\nvar i={};e.exports=i;var o=n(8);var r=n(0);var a=r.deprecated;(function(){\n/**\n         * Detect collision between two bodies using the Separating Axis Theorem.\n         * @deprecated replaced by Collision.collides\n         * @method collides\n         * @param {body} bodyA\n         * @param {body} bodyB\n         * @return {collision} collision\n         */\ni.collides=function(e,t){return o.collides(e,t)};a(i,\"collides\",\"SAT.collides ➤ replaced by Collision.collides\")})()},function(e,t,n){var i={};e.exports=i;n(1);var o=n(0);(function(){\n/**\n         * Converts an SVG path into an array of vector points.\n         * If the input path forms a concave shape, you must decompose the result into convex parts before use.\n         * See `Bodies.fromVertices` which provides support for this.\n         * Note that this function is not guaranteed to support complex paths (such as those with holes).\n         * You must load the `pathseg.js` polyfill on newer browsers.\n         * @method pathToVertices\n         * @param {SVGPathElement} path\n         * @param {Number} [sampleLength=15]\n         * @return {Vector[]} points\n         */\ni.pathToVertices=function(e,t){\"undefined\"===typeof window||\"SVGPathSeg\"in window||o.warn(\"Svg.pathToVertices: SVGPathSeg not defined, a polyfill is required.\");var n,r,a,s,l,c,u,f,d,p,v,y,m=[],g=0,x=0,h=0;t=t||15;var addPoint=function(e,t,n){var i=n%2===1&&n>1;if(!d||e!=d.x||t!=d.y){if(d&&i){v=d.x;y=d.y}else{v=0;y=0}var o={x:v+e,y:y+t};!i&&d||(d=o);m.push(o);x=v+e;h=y+t}};var addSegmentPoint=function(e){var t=e.pathSegTypeAsLetter.toUpperCase();if(\"Z\"!==t){switch(t){case\"M\":case\"L\":case\"T\":case\"C\":case\"S\":case\"Q\":x=e.x;h=e.y;break;case\"H\":x=e.x;break;case\"V\":h=e.y;break}addPoint(x,h,e.pathSegType)}};i._svgPathToAbsolute(e);a=e.getTotalLength();c=[];for(n=0;n<e.pathSegList.numberOfItems;n+=1)c.push(e.pathSegList.getItem(n));u=c.concat();while(g<a){p=e.getPathSegAtLength(g);l=c[p];if(l!=f){while(u.length&&u[0]!=l)addSegmentPoint(u.shift());f=l}switch(l.pathSegTypeAsLetter.toUpperCase()){case\"C\":case\"T\":case\"S\":case\"Q\":case\"A\":s=e.getPointAtLength(g);addPoint(s.x,s.y,0);break}g+=t}for(n=0,r=u.length;n<r;++n)addSegmentPoint(u[n]);return m};i._svgPathToAbsolute=function(e){var t,n,i,o,r,a,s=e.pathSegList,l=0,c=0,u=s.numberOfItems;for(var f=0;f<u;++f){var d=s.getItem(f),p=d.pathSegTypeAsLetter;if(/[MLHVCSQTA]/.test(p)){\"x\"in d&&(l=d.x);\"y\"in d&&(c=d.y)}else{\"x1\"in d&&(i=l+d.x1);\"x2\"in d&&(r=l+d.x2);\"y1\"in d&&(o=c+d.y1);\"y2\"in d&&(a=c+d.y2);\"x\"in d&&(l+=d.x);\"y\"in d&&(c+=d.y);switch(p){case\"m\":s.replaceItem(e.createSVGPathSegMovetoAbs(l,c),f);break;case\"l\":s.replaceItem(e.createSVGPathSegLinetoAbs(l,c),f);break;case\"h\":s.replaceItem(e.createSVGPathSegLinetoHorizontalAbs(l),f);break;case\"v\":s.replaceItem(e.createSVGPathSegLinetoVerticalAbs(c),f);break;case\"c\":s.replaceItem(e.createSVGPathSegCurvetoCubicAbs(l,c,i,o,r,a),f);break;case\"s\":s.replaceItem(e.createSVGPathSegCurvetoCubicSmoothAbs(l,c,r,a),f);break;case\"q\":s.replaceItem(e.createSVGPathSegCurvetoQuadraticAbs(l,c,i,o),f);break;case\"t\":s.replaceItem(e.createSVGPathSegCurvetoQuadraticSmoothAbs(l,c),f);break;case\"a\":s.replaceItem(e.createSVGPathSegArcAbs(l,c,d.r1,d.r2,d.angle,d.largeArcFlag,d.sweepFlag),f);break;case\"z\":case\"Z\":l=t;c=n;break}}if(\"M\"==p||\"m\"==p){t=l;n=c}}}})()},function(e,t,n){var i={};e.exports=i;var o=n(5);n(0);(function(){i.create=o.create;i.add=o.add;i.remove=o.remove;i.clear=o.clear;i.addComposite=o.addComposite;i.addBody=o.addBody;i.addConstraint=o.addConstraint})()}])}));var n=t;const i=t.Matter,o=t.__esModule;export{i as Matter,o as __esModule,n as default};\n\n//# sourceMappingURL=matter.js.map","import Matter from\"matter-js\";const opts={isStatic:true,friction:2};export function makeWalls(conainerBounding,engine,wallOptions){var Bodies=Matter.Bodies;let bottom,top,wLeft,wRight;if(wallOptions.bottom){bottom=Bodies.rectangle(conainerBounding.width/2,conainerBounding.height+50,conainerBounding.width+100,100,opts);Matter.World.add(engine,bottom);}if(wallOptions.top){top=Bodies.rectangle(conainerBounding.width/2,-50,conainerBounding.width+100,100,opts);Matter.World.add(engine,top);}if(wallOptions.right){wRight=Bodies.rectangle(conainerBounding.width+50,conainerBounding.height/2,100,conainerBounding.height,opts);Matter.World.add(engine,wRight);}if(wallOptions.bottom){wLeft=Bodies.rectangle(-50,conainerBounding.height/2,100,conainerBounding.height,opts);Matter.World.add(engine,wLeft);}}\nexport const __FramerMetadata__ = {\"exports\":{\"makeWalls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MakeWalls.map","import Matter from\"matter-js\";export function makeBodies(container,world,elements,frictionOpts,densityOpts){const conainerBounding=container.getBoundingClientRect();let stack=Matter.Composites.stack(0,0,elements.length,1,0,0,(xx,yy,i)=>{const{x,y,width,height}=elements[i].getBoundingClientRect();var maxLeft=conainerBounding.width-width;var maxTop=conainerBounding.height-height;// Places the elements at random locations\n// Could be expanded to allow control of body placement from property controls\nvar tLeft=Math.floor(Math.random()*maxLeft),tTop=Math.floor(Math.random()*maxTop);return Matter.Bodies.rectangle(tLeft,tTop,width,height,{isStatic:false,density:densityOpts.enable?densityOpts.density:0,friction:frictionOpts.friction,frictionAir:frictionOpts.frictionAir});});Matter.World.add(world,stack);return stack;}\nexport const __FramerMetadata__ = {\"exports\":{\"makeBodies\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MakeBodies.map","import{jsx as _jsx}from\"react/jsx-runtime\";import React from\"react\";import Matter from\"matter-js\";import{addPropertyControls,ControlType}from\"framer\";import{makeWalls}from\"https://framerusercontent.com/modules/KYVdEKqNHqMXAKLjSKCy/Ok6wam0uM9G4VUuXWgpR/MakeWalls.js\";import{makeBodies}from\"https://framerusercontent.com/modules/6UgWtAa26OCy0CE59gub/LTuIQWugGJr30ZUS1CV9/MakeBodies.js\";/**\n * These annotations control how your component sizes\n * Learn more: https://www.framer.com/docs/guides/auto-sizing\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */ export default function Physics(props){var ref;let engine;React.useEffect(()=>{if(!engine){engine=Matter.Engine.create({enableSleeping:props.sleeping,gravity:{y:props.gravY,x:props.gravX}});const containerBounding=containerRef.current.getBoundingClientRect();makeWalls(containerBounding,engine.world,props.wallOptions);if(props.debug){var render=Matter.Render.create({element:containerRef.current,engine:engine,options:{height:containerBounding.height,width:containerBounding.width,showAngleIndicator:true,showVelocity:true}});Matter.Render.run(render);}let mouseConstraint=null;if(props.mouseOptions.enable){let mouse=Matter.Mouse.create(containerRef.current);mouseConstraint=Matter.MouseConstraint.create(engine,{mouse:mouse,constraint:{angularStiffness:props.mouseOptions.angularStiffness,stiffness:props.mouseOptions.stiffness}});Matter.Composite.add(engine.world,mouseConstraint);// Remove the many event listeners preventing scroll/drag\nmouseConstraint.mouse.element.removeEventListener(\"mousewheel\",mouseConstraint.mouse.mousewheel);mouseConstraint.mouse.element.removeEventListener(\"DOMMouseScroll\",mouseConstraint.mouse.mousewheel);mouseConstraint.mouse.element.removeEventListener(\"touchstart\",mouseConstraint.mouse.mousedown);mouseConstraint.mouse.element.removeEventListener(\"touchmove\",mouseConstraint.mouse.mousemove);mouseConstraint.mouse.element.removeEventListener(\"touchend\",mouseConstraint.mouse.mouseup);mouseConstraint.mouse.element.addEventListener(\"touchstart\",mouseConstraint.mouse.mousedown,{passive:true});mouseConstraint.mouse.element.addEventListener(\"touchmove\",e=>{if(mouseConstraint.body){mouseConstraint.mouse.mousemove(e);}});mouseConstraint.mouse.element.addEventListener(\"touchend\",e=>{if(mouseConstraint.body){mouseConstraint.mouse.mouseup(e);}});containerRef.current.addEventListener(\"mouseleave\",()=>{mouseConstraint.mouse.mouseup(event);});}let stack=makeBodies(containerRef.current,engine.world,containerRef.current.children,props.frictionOptions,props.densityOptions);(function update(){requestAnimationFrame(update);stack.bodies.forEach((block,i)=>{let el=containerRef.current.children[i];let{x,y}=block.vertices[0];el.style.visibility=\"visible\";el.style.top=`${y}px`;el.style.left=`${x}px`;el.style.transform=`\n                          translate(-50%, -50%)\n                          rotate(${block.angle}rad) \n                          translate(50%, 50%)\n                          `;});//\nMatter.Engine.update(engine);})();}},[]);const containerRef=React.useRef(null);return /*#__PURE__*/ _jsx(\"div\",{style:containerStyle,ref:containerRef,draggable:\"false\",onDragStart:e=>{e.preventDefault();},children:((ref=props.children)===null||ref===void 0?void 0:ref.length)>0?props.children.map((el,i)=>{return /*#__PURE__*/ _jsx(\"div\",{style:bodyStyle,id:\"physics-body\",draggable:\"false\",children:el});}):/*#__PURE__*/ _jsx(\"div\",{style:bodyStyle,id:\"physics-body\",draggable:\"false\",children:props.children})});};// Styles are written in object syntax\n// Learn more: https://reactjs.org/docs/dom-elements.html#style\nconst containerStyle={height:\"100%\",width:\"100%\",overflow:\"hidden\"};const bodyStyle={position:\"absolute\",visibility:\"hidden\"};Physics.defaultProps={gravX:0,gravY:1,children:{},wallOptions:{top:true,bottom:true,right:true,left:true},frictionOptions:{friction:.1,frictionAir:.01},mouseOptions:{angularStiffnes:0,stiffness:.2,enable:true},densityOptions:{enable:true,density:.001},sleeping:false};addPropertyControls(Physics,{children:{type:ControlType.Array,control:{type:ControlType.ComponentInstance}},gravY:{type:ControlType.Number,defaultValue:1,max:5,min:-5,step:.25,title:\"Gravity Y\"},gravX:{type:ControlType.Number,defaultValue:0,max:5,min:-5,step:.25,title:\"Gravity X\"},wallOptions:{title:\"Walls\",type:ControlType.Object,controls:{top:{type:ControlType.Boolean,defaultValue:true},bottom:{type:ControlType.Boolean,defaultValue:true},right:{type:ControlType.Boolean,defaultValue:true},left:{type:ControlType.Boolean,defaultValue:true}}},mouseOptions:{title:\"Mouse\",type:ControlType.Object,controls:{enable:{title:\"Enable\",type:ControlType.Boolean,defaultValue:true},angularStiffness:{title:\"Angular stiffness\",description:\"A value of 0 allows objects to swing when held by the mouse\",type:ControlType.Number,defaultValue:0,min:0,max:1,step:.01},stiffness:{title:\"Stiffness\",description:\"Click + drag creates a moving constraint (spring) that follows the mouse. This describes the stiffness of that spring\",type:ControlType.Number,defaultValue:.2,min:.001,max:1,step:.01}}},friction:{type:ControlType.Object,controls:{friction:{title:\"Body friction\",type:ControlType.Number,min:0,max:1,defaultValue:.1,step:.01},frictionAir:{title:\"Air friction\",type:ControlType.Number,min:0,max:1,defaultValue:.01,step:.01}}},densityOptions:{title:\"Density\",type:ControlType.Object,controls:{enable:{type:ControlType.Boolean,defaultValue:true,description:\"Enabling density will cause mass to be calculated based on width and height\"},density:{type:ControlType.Number,defaultValue:.001,min:.001,max:1,step:.01}}},sleeping:{title:\"Sleeping\",description:\"Improves performance at the cost of simulation accuracy\",type:ControlType.Boolean,defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Physics\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Physics.map","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Plus Jakarta Sans-regular\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/TX2N2Q6ZO2LBO34H72H5RVJTBQFGU4GV/ZICVNTLTT4V7CCIJPWNY363N6LIP2AET/OUUAK2X2MEGEKC6ULA4CFSBY4PE5EGPV.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-z64CT .framer-styles-preset-8mnip:not(.rich-text-wrapper), .framer-z64CT .framer-styles-preset-8mnip.rich-text-wrapper p { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 24px; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-a2f8307b-d402-4954-9869-46d1b461f125, #4f5d5f); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-z64CT\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Plus Jakarta Sans-regular\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/TX2N2Q6ZO2LBO34H72H5RVJTBQFGU4GV/ZICVNTLTT4V7CCIJPWNY363N6LIP2AET/OUUAK2X2MEGEKC6ULA4CFSBY4PE5EGPV.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-qaP8B .framer-styles-preset-5zserd:not(.rich-text-wrapper), .framer-qaP8B .framer-styles-preset-5zserd.rich-text-wrapper p { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 20px; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-a2f8307b-d402-4954-9869-46d1b461f125, #4f5d5f); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-qaP8B\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-uDsW9 .framer-styles-preset-1dnol2h:not(.rich-text-wrapper), .framer-uDsW9 .framer-styles-preset-1dnol2h.rich-text-wrapper a { --framer-link-text-color: var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, #0c1212); --framer-link-text-decoration: none; }\"];export const className=\"framer-uDsW9\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Plus Jakarta Sans-bold\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/AJVGEOXGB2ALQKAZEK2LDOLCVBCMCOIT/LDEP4R7SNNABDEG433DCQGM2A7YCBHLU/OWABOLGBAKFVLPZ756IYS6EKYKU54K3I.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-MMLkA .framer-styles-preset-urh9gj:not(.rich-text-wrapper), .framer-MMLkA .framer-styles-preset-urh9gj.rich-text-wrapper p { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 24px; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-a2f8307b-d402-4954-9869-46d1b461f125, #4f5d5f); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-MMLkA\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (cd22f02)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,Link,RichText,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/PeiVYPgciNXXVJofgnsI/2gvSfuPU1YdhIDNT2hYn/lxVs8hvW6.js\";const cycleOrder=[\"T8a8D0QEN\",\"ZJxG6yk8G\",\"gjaEXm3aK\",\"BOGf1vP8Y\",\"VZZe9rNmo\"];const serializationHash=\"framer-Uc4ZE\";const variantClassNames={BOGf1vP8Y:\"framer-v-1o1d1t8\",gjaEXm3aK:\"framer-v-mumtws\",T8a8D0QEN:\"framer-v-17qqlyp\",VZZe9rNmo:\"framer-v-1hiehek\",ZJxG6yk8G:\"framer-v-1xd0i00\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"primary - icon\":\"gjaEXm3aK\",\"primary - no icon\":\"T8a8D0QEN\",\"Sec - impact\":\"VZZe9rNmo\",\"secondary - icon\":\"BOGf1vP8Y\",\"Secondary - no icon\":\"ZJxG6yk8G\"};const getProps=({height,id,link,text,width,...props})=>{return{...props,IrYHluiW_:link??props.IrYHluiW_,variant:humanReadableVariantMap[props.variant]??props.variant??\"T8a8D0QEN\",ZC4eZScnX:text??props.ZC4eZScnX??\"Input text\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,ZC4eZScnX,IrYHluiW_,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"T8a8D0QEN\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"BOGf1vP8Y\",\"VZZe9rNmo\"].includes(baseVariant))return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"gjaEXm3aK\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:IrYHluiW_,motionChild:true,nodeId:\"T8a8D0QEN\",openInNewTab:true,scopeId:\"GJb69dTML\",...addPropertyOverrides({VZZe9rNmo:{openInNewTab:false,smoothScroll:true}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-17qqlyp\",className,classNames)} framer-5qffho`,\"data-framer-name\":\"primary - no icon\",layoutDependency:layoutDependency,layoutId:\"T8a8D0QEN\",ref:refBinding,style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(0, 0, 0, 0)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"rgb(56, 92, 140)\",borderBottomLeftRadius:300,borderBottomRightRadius:300,borderTopLeftRadius:300,borderTopRightRadius:300,...style},variants:{BOGf1vP8Y:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0)\"},gjaEXm3aK:{\"--border-bottom-width\":\"0px\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-top-width\":\"0px\"},VZZe9rNmo:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0)\"},ZJxG6yk8G:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(0, 0, 0, 0)\"}},...addPropertyOverrides({BOGf1vP8Y:{\"data-border\":true,\"data-framer-name\":\"secondary - icon\"},gjaEXm3aK:{\"data-framer-name\":\"primary - icon\"},VZZe9rNmo:{\"data-border\":true,\"data-framer-name\":\"Sec - impact\"},ZJxG6yk8G:{\"data-border\":true,\"data-framer-name\":\"Secondary - no icon\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"See more @Dribble\"})}),className:\"framer-1wq2d7p\",\"data-framer-name\":\"See more @Dribble\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Uy_XFBU_D\",style:{\"--extracted-r6o4lv\":\"var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},text:ZC4eZScnX,variants:{BOGf1vP8Y:{\"--extracted-r6o4lv\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\"},VZZe9rNmo:{\"--extracted-r6o4lv\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\"},ZJxG6yk8G:{\"--extracted-r6o4lv\":\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({BOGf1vP8Y:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140)))\"},children:\"Input text\"})})},VZZe9rNmo:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140)))\"},children:\"Input text\"})})},ZJxG6yk8G:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140)))\"},children:\"Input text\"})})}},baseVariant,gestureVariant)}),isDisplayed()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1kzoe4r\",\"data-framer-name\":\"icon_left\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"FfYSGIcA0\",style:{rotate:0},svg:'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M17.6569 17.2428C18.2092 17.2428 18.6569 16.7951 18.6569 16.2428L18.6569 6.34332C18.6569 5.79104 18.2092 5.34333 17.6569 5.34333L7.75743 5.34333C7.20515 5.34333 6.75743 5.79104 6.75743 6.34333C6.75743 6.89561 7.20515 7.34333 7.75743 7.34333L15.2427 7.34333L5.63611 16.9499C5.24559 17.3405 5.24559 17.9736 5.63611 18.3641C6.02664 18.7547 6.6598 18.7547 7.05033 18.3641L16.6569 8.75754L16.6569 16.2428C16.6569 16.7951 17.1046 17.2428 17.6569 17.2428Z\" fill=\"#385C8C\"/>\\n</svg>\\n',variants:{VZZe9rNmo:{rotate:135}},withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-ajl2j5\",\"data-framer-name\":\"icon_left\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"rh9rww0tR\",svg:'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M17.6569 17.2428C18.2092 17.2428 18.6569 16.7951 18.6569 16.2428L18.6569 6.34332C18.6569 5.79104 18.2092 5.34333 17.6569 5.34333L7.75743 5.34333C7.20515 5.34333 6.75743 5.79104 6.75743 6.34333C6.75743 6.89561 7.20515 7.34333 7.75743 7.34333L15.2427 7.34333L5.63611 16.9499C5.24559 17.3405 5.24559 17.9736 5.63611 18.3641C6.02664 18.7547 6.6598 18.7547 7.05033 18.3641L16.6569 8.75754L16.6569 16.2428C16.6569 16.7951 17.1046 17.2428 17.6569 17.2428Z\" fill=\"white\"/>\\n</svg>\\n',withExternalLayout:true})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Uc4ZE.framer-5qffho, .framer-Uc4ZE .framer-5qffho { display: block; }\",\".framer-Uc4ZE.framer-17qqlyp { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 12px 24px 12px 24px; position: relative; text-decoration: none; width: min-content; }\",\".framer-Uc4ZE .framer-1wq2d7p { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-Uc4ZE .framer-1kzoe4r, .framer-Uc4ZE .framer-ajl2j5 { flex: none; height: 24px; position: relative; width: 24px; }\",\".framer-Uc4ZE.framer-v-mumtws.framer-17qqlyp, .framer-Uc4ZE.framer-v-1o1d1t8.framer-17qqlyp, .framer-Uc4ZE.framer-v-1hiehek.framer-17qqlyp { padding: 12px 16px 12px 24px; }\",...sharedStyle.css,'.framer-Uc4ZE[data-border=\"true\"]::after, .framer-Uc4ZE [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 48\n * @framerIntrinsicWidth 123.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"ZJxG6yk8G\":{\"layout\":[\"auto\",\"auto\"]},\"gjaEXm3aK\":{\"layout\":[\"auto\",\"auto\"]},\"BOGf1vP8Y\":{\"layout\":[\"auto\",\"auto\"]},\"VZZe9rNmo\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"ZC4eZScnX\":\"text\",\"IrYHluiW_\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerGJb69dTML=withCSS(Component,css,\"framer-Uc4ZE\");export default FramerGJb69dTML;FramerGJb69dTML.displayName=\"Button\";FramerGJb69dTML.defaultProps={height:48,width:123.5};addPropertyControls(FramerGJb69dTML,{variant:{options:[\"T8a8D0QEN\",\"ZJxG6yk8G\",\"gjaEXm3aK\",\"BOGf1vP8Y\",\"VZZe9rNmo\"],optionTitles:[\"primary - no icon\",\"Secondary - no icon\",\"primary - icon\",\"secondary - icon\",\"Sec - impact\"],title:\"Variant\",type:ControlType.Enum},ZC4eZScnX:{defaultValue:\"Input text\",displayTextArea:false,title:\"Text\",type:ControlType.String},IrYHluiW_:{title:\"Link\",type:ControlType.Link}});addFonts(FramerGJb69dTML,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerGJb69dTML\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"ZC4eZScnX\\\":\\\"text\\\",\\\"IrYHluiW_\\\":\\\"link\\\"}\",\"framerIntrinsicHeight\":\"48\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"123.5\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"ZJxG6yk8G\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"gjaEXm3aK\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"BOGf1vP8Y\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"VZZe9rNmo\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GJb69dTML.map","// Generated by Framer (f32bfea)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Link,RichText,SmartComponentScopedContainer,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/WkMjDow2UwQmUok1WXbX/sllzVk5KDcmdKbVYbDgB/L9LmQxkAg.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/DnNcTctZH5N2scd5uOzL/7FiwYnJCX1faRGoMF3hV/ypSgpIBhr.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/RkaHM0QHvagnt2w7vZeb/bUIuA67Ug9eCl5XiJW3z/ztIGYheUJ.js\";import Button from\"https://framerusercontent.com/modules/QUvqPCvtJjqh2Y5j9oe3/8smCNpKmXh2NSzjKm34i/GJb69dTML.js\";const ButtonFonts=getFonts(Button);const cycleOrder=[\"FnVPbXmtv\",\"tLafak3Jl\",\"s0h1cf0u8\",\"GYN07kDjp\"];const serializationHash=\"framer-m9JLW\";const variantClassNames={FnVPbXmtv:\"framer-v-14wss7g\",GYN07kDjp:\"framer-v-1co0rxk\",s0h1cf0u8:\"framer-v-1twwa8o\",tLafak3Jl:\"framer-v-nnwdr\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"FnVPbXmtv\",Phone:\"GYN07kDjp\",Tablet:\"tLafak3Jl\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"FnVPbXmtv\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"FnVPbXmtv\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap4a0jzh=activeVariantCallback(async(...args)=>{setVariant(\"GYN07kDjp\");});const onTap15lu3v1=activeVariantCallback(async(...args)=>{setVariant(\"s0h1cf0u8\");});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"s0h1cf0u8\",\"GYN07kDjp\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if([\"s0h1cf0u8\",\"GYN07kDjp\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if(baseVariant===\"GYN07kDjp\")return false;return true;};const isDisplayed3=()=>{if(baseVariant===\"GYN07kDjp\")return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-14wss7g\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"FnVPbXmtv\",ref:refBinding,style:{backdropFilter:\"blur(6px)\",background:\"linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%)\",backgroundColor:\"rgba(0, 0, 0, 0)\",WebkitBackdropFilter:\"blur(6px)\",...style},variants:{GYN07kDjp:{background:\"linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 100%)\",backgroundColor:\"rgb(255, 255, 255)\"}},...addPropertyOverrides({GYN07kDjp:{\"data-framer-name\":\"Phone\"},s0h1cf0u8:{\"data-framer-name\":\"Phone\"},tLafak3Jl:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1f3y7vf\",layoutDependency:layoutDependency,layoutId:\"CIznPw8Qp\",children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"AiY007X9s\",openInNewTab:false,scopeId:\"bLI_1F8qc\",children:/*#__PURE__*/_jsx(SVG,{as:\"a\",className:\"framer-12t3dzk framer-um94k4\",\"data-framer-name\":\"Skorcard Logo\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:32,intrinsicWidth:51,layoutDependency:layoutDependency,layoutId:\"AiY007X9s\",svg:'<svg width=\"51\" height=\"32\" viewBox=\"0 0 51 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<g clip-path=\"url(#clip0_1633_467)\">\\n<path d=\"M13.7815 2H25L24.7689 2.74694C23.3263 2.76039 22.3109 3.0161 21.7227 3.51406C21.1345 3.99856 20.5182 5.31074 19.874 7.45061L16.2605 19.5025C15.5742 21.777 14.881 23.5131 14.1807 24.7109C13.2423 26.3259 11.9748 27.6112 10.3782 28.5667C8.79552 29.5222 7.01681 30 5.04202 30C3.41737 30 2.17087 29.6434 1.30252 28.9301C0.434174 28.2033 0 27.3285 0 26.3057C0 25.4982 0.266106 24.8253 0.798319 24.287C1.31653 23.7486 1.93978 23.4795 2.66807 23.4795C3.29832 23.4795 3.80952 23.6611 4.20168 24.0245C4.60784 24.3879 4.81092 24.832 4.81092 25.3569C4.81092 25.7876 4.62885 26.2048 4.26471 26.6085C3.80252 27.1199 3.57143 27.4698 3.57143 27.6583C3.57143 27.9409 3.70448 28.1966 3.97059 28.4254C4.23669 28.6542 4.59384 28.7686 5.04202 28.7686C5.68628 28.7686 6.35154 28.6205 7.03782 28.3244C7.7381 28.0284 8.38936 27.5775 8.9916 26.9719C9.60784 26.3663 10.1401 25.6395 10.5882 24.7916C11.0504 23.9438 11.5196 22.7864 11.9958 21.3194L13.0252 17.827L16.1555 7.45061C16.6176 5.92982 16.8487 4.98101 16.8487 4.60418C16.8487 4.09277 16.6387 3.67556 16.2185 3.35256C15.7983 3.02956 14.909 2.82769 13.5504 2.74694L13.7815 2Z\" fill=\"#385C8C\"/>\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M35 16C35 16 36.875 10.979 36.875 7.42856C36.875 3.87817 36.0356 1 35 1C33.9645 1 33.125 3.87817 33.125 7.42856C33.125 10.979 35 16 35 16ZM35 16C35 16 37.2246 20.8762 39.7351 23.3867C42.2456 25.8973 44.8743 27.3388 45.6066 26.6066C46.3388 25.8743 44.8973 23.2456 42.3867 20.7351C39.8762 18.2246 35 16 35 16ZM35 16C35 16 40.0211 14.125 43.5714 14.125C47.1218 14.125 50 14.9645 50 16C50 17.0356 47.1218 17.875 43.5714 17.875C40.0211 17.875 35 16 35 16ZM35 16C35 16 30.1238 18.2246 27.6133 20.7351C25.1027 23.2456 23.6612 25.8743 24.3934 26.6066C25.1256 27.3388 27.7544 25.8973 30.2649 23.3867C32.7754 20.8762 35 16 35 16ZM35 16C35.0042 16.0111 36.875 21.025 36.875 24.5714C36.875 28.1218 36.0356 31 35 31C33.9645 31 33.125 28.1218 33.125 24.5714C33.125 21.0211 35 16 35 16ZM35 16C35 16 29.979 14.125 26.4286 14.125C22.8782 14.125 20 14.9645 20 16C20 17.0356 22.8782 17.875 26.4286 17.875C29.979 17.875 35 16 35 16ZM35 16C35 16 39.8762 13.7754 42.3867 11.2649C44.8973 8.75438 46.3388 6.12562 45.6066 5.39339C44.8743 4.66116 42.2456 6.10275 39.7351 8.61325C37.2246 11.1238 35 16 35 16ZM30.2649 8.61325C32.7754 11.1238 35 16 35 16C35 16 30.1238 13.7754 27.6133 11.2649C25.1027 8.7544 23.6612 6.12564 24.3934 5.39339C25.1256 4.66117 27.7544 6.10275 30.2649 8.61325Z\" fill=\"url(#paint0_radial_1633_467)\"/>\\n</g>\\n<defs>\\n<radialGradient id=\"paint0_radial_1633_467\" cx=\"0\" cy=\"0\" r=\"1\" gradientUnits=\"userSpaceOnUse\" gradientTransform=\"translate(35 17.6031) rotate(90) scale(13.3969)\">\\n<stop stop-color=\"white\"/>\\n<stop offset=\"0.591538\" stop-color=\"#66A8FF\"/>\\n<stop offset=\"1\" stop-color=\"#B9D7FF\"/>\\n</radialGradient>\\n<clipPath id=\"clip0_1633_467\">\\n<rect width=\"51\" height=\"32\" fill=\"white\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n',withExternalLayout:true})}),isDisplayed()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1guy5y2\",\"data-framer-name\":\"Frame 48096313\",layoutDependency:layoutDependency,layoutId:\"KHI9dtWhI\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7UGx1cyBKYWthcnRhIFNhbnMtcmVndWxhcg==\",\"--framer-font-family\":'\"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif',\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(12, 18, 18))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://drive.google.com/file/d/1E9cRv0A_hM1orZv6eVif5EjUW7wWL0Of/view?usp=sharing\",motionChild:true,nodeId:\"iXb3Irg6Y\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Resume\"})})})}),className:\"framer-3ne9gt\",\"data-framer-name\":\"Resume\",fonts:[\"GF;Plus Jakarta Sans-regular\"],layoutDependency:layoutDependency,layoutId:\"iXb3Irg6Y\",style:{\"--extracted-r6o4lv\":\"rgb(12, 18, 18)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5zserd\",\"data-styles-preset\":\"ypSgpIBhr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-449e3824-0690-491e-be20-71a54b8cbd84, rgb(102, 120, 122)))\"},children:\"/\"})}),className:\"framer-1l0bmh0\",\"data-framer-name\":\"/\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"cc8yB0eFt\",style:{\"--extracted-r6o4lv\":\"var(--token-449e3824-0690-491e-be20-71a54b8cbd84, rgb(102, 120, 122))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7UGx1cyBKYWthcnRhIFNhbnMtcmVndWxhcg==\",\"--framer-font-family\":'\"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif',\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"20px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(12, 18, 18))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.linkedin.com/in/jesslyn-ivanda-2a992b20b/\",motionChild:true,nodeId:\"xr1whTO02\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Linkedin\"})})})}),className:\"framer-1mnyxux\",\"data-framer-name\":\"Linkedin\",fonts:[\"GF;Plus Jakarta Sans-regular\"],layoutDependency:layoutDependency,layoutId:\"xr1whTO02\",style:{\"--extracted-r6o4lv\":\"rgb(12, 18, 18)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true})]}),isDisplayed1()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1yrs3st\",\"data-framer-name\":\"icon menu\",layoutDependency:layoutDependency,layoutId:\"Q9RQSgOfK\",...addPropertyOverrides({GYN07kDjp:{\"data-highlight\":true,onTap:onTap15lu3v1},s0h1cf0u8:{\"data-highlight\":true,onTap:onTap4a0jzh}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1rkl8en\",layoutDependency:layoutDependency,layoutId:\"pJBIOxpIL\",style:{backgroundColor:\"var(--token-d5c49696-b6e6-4d0a-b891-af08ea853efa, rgb(111, 111, 115))\",borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,rotate:0},variants:{GYN07kDjp:{rotate:45}}}),isDisplayed2()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-2xs9ql\",layoutDependency:layoutDependency,layoutId:\"NNT3vJmvi\",style:{backgroundColor:\"var(--token-d5c49696-b6e6-4d0a-b891-af08ea853efa, rgb(111, 111, 115))\",borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1u01tvp\",layoutDependency:layoutDependency,layoutId:\"RAJuo7Grm\",style:{backgroundColor:\"var(--token-d5c49696-b6e6-4d0a-b891-af08ea853efa, rgb(111, 111, 115))\",borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,rotate:0},variants:{GYN07kDjp:{rotate:-45}}})]})]}),isDisplayed3()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-jfl7d9\",layoutDependency:layoutDependency,layoutId:\"kkSmnS3gU\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":KCeqcEhXC\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"HcY6jUyEC\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Intro\"})})})}),className:\"framer-1k24zww\",\"data-framer-name\":\"ABOUT\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"HcY6jUyEC\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":ZQTwG_BJN\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"eQMF6OOAf\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Works\"})})})}),className:\"framer-1kkq11v\",\"data-framer-name\":\"WORKS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"eQMF6OOAf\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":WP0XbXDlq\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"SqiTzQOJn\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Playground\"})})})}),className:\"framer-1gzpenz\",\"data-framer-name\":\"CONTACTS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"SqiTzQOJn\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":jR1aCCBY7\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"bi6LEdtVb\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Values\"})})})}),className:\"framer-bf7mgm\",\"data-framer-name\":\"CONTACTS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"bi6LEdtVb\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":LGAVfJ8p7\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"NqqpA2GJ5\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"About\"})})})}),className:\"framer-1lgil92\",\"data-framer-name\":\"CONTACTS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"NqqpA2GJ5\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-8mnip\",\"data-styles-preset\":\"L9LmQxkAg\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18)))\"},children:/*#__PURE__*/_jsx(Link,{href:{hash:\":ENZ0LYVGR\",webPageId:\"meJIraHBx\"},motionChild:true,nodeId:\"kNgB91xeF\",openInNewTab:true,relValues:[],scopeId:\"bLI_1F8qc\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1dnol2h\",\"data-styles-preset\":\"ztIGYheUJ\",children:\"Contact\"})})})}),className:\"framer-ynlizo\",\"data-framer-name\":\"CONTACTS\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"kNgB91xeF\",style:{\"--extracted-r6o4lv\":\"var(--token-c53a2243-77f7-4ea4-8e88-25f1895b18ce, rgb(12, 18, 18))\"},verticalAlignment:\"top\",withExternalLayout:true})]}),isDisplayed3()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8asbzt\",layoutDependency:layoutDependency,layoutId:\"JyBceUdOq\",children:[isDisplayed3()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{...addPropertyOverrides({GYN07kDjp:{height:48,width:`calc(${componentViewport?.width||\"100vw\"} - 32px)`,y:(componentViewport?.y||0)+16+908+0+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-j6890h-container\",layoutDependency:layoutDependency,layoutId:\"cqb3ftPGk-container\",nodeId:\"cqb3ftPGk\",rendersWithMotion:true,scopeId:\"bLI_1F8qc\",children:/*#__PURE__*/_jsx(Button,{height:\"100%\",id:\"cqb3ftPGk\",IrYHluiW_:\"https://drive.google.com/file/d/1E9cRv0A_hM1orZv6eVif5EjUW7wWL0Of/view?usp=sharing\",layoutId:\"cqb3ftPGk\",style:{width:\"100%\"},variant:matchVariant(\"T8a8D0QEN\"),width:\"100%\",ZC4eZScnX:\"Resume\"})})}),isDisplayed3()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{...addPropertyOverrides({GYN07kDjp:{height:48,width:`calc(${componentViewport?.width||\"100vw\"} - 32px)`,y:(componentViewport?.y||0)+16+908+0+60}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-2s82p9-container\",layoutDependency:layoutDependency,layoutId:\"POIO8D2Za-container\",nodeId:\"POIO8D2Za\",rendersWithMotion:true,scopeId:\"bLI_1F8qc\",children:/*#__PURE__*/_jsx(Button,{height:\"100%\",id:\"POIO8D2Za\",IrYHluiW_:\"https://www.linkedin.com/in/jesslyn-ivanda-2a992b20b/\",layoutId:\"POIO8D2Za\",style:{width:\"100%\"},variant:matchVariant(\"ZJxG6yk8G\"),width:\"100%\",ZC4eZScnX:\"Linkedin\"})})})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-m9JLW.framer-um94k4, .framer-m9JLW .framer-um94k4 { display: block; }\",\".framer-m9JLW.framer-14wss7g { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; height: 80px; justify-content: space-between; overflow: visible; padding: 24px 60px 24px 60px; position: relative; width: 1200px; }\",\".framer-m9JLW .framer-1f3y7vf { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-m9JLW .framer-12t3dzk { flex: none; height: 32px; position: relative; text-decoration: none; width: 51px; }\",\".framer-m9JLW .framer-1guy5y2 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-m9JLW .framer-3ne9gt, .framer-m9JLW .framer-1l0bmh0, .framer-m9JLW .framer-1mnyxux { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-m9JLW .framer-1yrs3st { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); overflow: hidden; position: relative; width: 32px; }\",\".framer-m9JLW .framer-1rkl8en { flex: none; height: 2px; left: calc(50.00000000000002% - 24px / 2); overflow: visible; position: absolute; top: 7px; width: 24px; }\",\".framer-m9JLW .framer-2xs9ql { flex: none; height: 2px; left: calc(50.00000000000002% - 24px / 2); overflow: visible; position: absolute; top: calc(50.00000000000002% - 2px / 2); width: 24px; }\",\".framer-m9JLW .framer-1u01tvp { bottom: 7px; flex: none; height: 2px; left: calc(50.00000000000002% - 24px / 2); overflow: visible; position: absolute; width: 24px; }\",\".framer-m9JLW .framer-jfl7d9 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-m9JLW .framer-1k24zww, .framer-m9JLW .framer-1kkq11v, .framer-m9JLW .framer-1gzpenz, .framer-m9JLW .framer-bf7mgm, .framer-m9JLW .framer-1lgil92, .framer-m9JLW .framer-ynlizo { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-m9JLW .framer-8asbzt { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; min-height: 200px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-m9JLW .framer-j6890h-container, .framer-m9JLW .framer-2s82p9-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-m9JLW.framer-v-nnwdr.framer-14wss7g { padding: 24px 32px 24px 32px; width: 768px; }\",\".framer-m9JLW.framer-v-1twwa8o.framer-14wss7g { height: min-content; padding: 16px; width: 360px; }\",\".framer-m9JLW.framer-v-1twwa8o .framer-12t3dzk, .framer-m9JLW.framer-v-1co0rxk .framer-12t3dzk { aspect-ratio: 1.59375 / 1; height: var(--framer-aspect-ratio-supported, 24px); width: 38px; }\",\".framer-m9JLW.framer-v-1twwa8o .framer-1yrs3st, .framer-m9JLW.framer-v-1co0rxk .framer-1yrs3st { cursor: pointer; }\",\".framer-m9JLW.framer-v-1co0rxk.framer-14wss7g { flex-direction: column; gap: 28px; height: 800px; justify-content: flex-start; padding: 16px 16px 24px 16px; width: 360px; }\",\".framer-m9JLW.framer-v-1co0rxk .framer-1f3y7vf, .framer-m9JLW.framer-v-1co0rxk .framer-jfl7d9 { flex: none; width: 100%; }\",\".framer-m9JLW.framer-v-1co0rxk .framer-1rkl8en { top: calc(50.00000000000002% - 2px / 2); }\",\".framer-m9JLW.framer-v-1co0rxk .framer-1u01tvp { bottom: unset; top: calc(50.00000000000002% - 2px / 2); }\",\".framer-m9JLW.framer-v-1co0rxk .framer-8asbzt { flex: none; min-height: unset; width: 100%; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 80\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"tLafak3Jl\":{\"layout\":[\"fixed\",\"fixed\"]},\"s0h1cf0u8\":{\"layout\":[\"fixed\",\"auto\"]},\"GYN07kDjp\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerbLI_1F8qc=withCSS(Component,css,\"framer-m9JLW\");export default FramerbLI_1F8qc;FramerbLI_1F8qc.displayName=\"Nav bar\";FramerbLI_1F8qc.defaultProps={height:80,width:1200};addPropertyControls(FramerbLI_1F8qc,{variant:{options:[\"FnVPbXmtv\",\"tLafak3Jl\",\"s0h1cf0u8\",\"GYN07kDjp\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerbLI_1F8qc,[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NTxXUEKi4Rw.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...ButtonFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});FramerbLI_1F8qc.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Button,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerbLI_1F8qc\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"tLafak3Jl\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"s0h1cf0u8\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"GYN07kDjp\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"80\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./bLI_1F8qc.map","// Generated by Framer (9805f18)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/PeiVYPgciNXXVJofgnsI/2gvSfuPU1YdhIDNT2hYn/lxVs8hvW6.js\";const enabledGestures={LJns__181:{pressed:true}};const cycleOrder=[\"LJns__181\",\"F93KasLel\",\"VDZ1UuumN\",\"jshQmO73Q\",\"y_buGswcx\",\"IPlTymCO9\"];const serializationHash=\"framer-7cl8S\";const variantClassNames={F93KasLel:\"framer-v-4glf5k\",IPlTymCO9:\"framer-v-ekr40q\",jshQmO73Q:\"framer-v-zkfwuf\",LJns__181:\"framer-v-12d43jc\",VDZ1UuumN:\"framer-v-bkii6i\",y_buGswcx:\"framer-v-9axedo\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Variant 1\":\"LJns__181\",\"view more\":\"F93KasLel\",details:\"y_buGswcx\",Drag:\"IPlTymCO9\",dribble:\"jshQmO73Q\",WIP:\"VDZ1UuumN\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"LJns__181\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"LJns__181\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"F93KasLel\",\"VDZ1UuumN\",\"jshQmO73Q\",\"y_buGswcx\",\"IPlTymCO9\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if([\"F93KasLel\",\"VDZ1UuumN\",\"jshQmO73Q\",\"y_buGswcx\",\"IPlTymCO9\"].includes(baseVariant))return true;return false;};const isDisplayed2=()=>{if(baseVariant===\"y_buGswcx\")return true;return false;};const isDisplayed3=()=>{if([\"VDZ1UuumN\",\"y_buGswcx\",\"IPlTymCO9\"].includes(baseVariant))return false;return true;};const isDisplayed4=()=>{if([\"F93KasLel\",\"VDZ1UuumN\",\"jshQmO73Q\",\"y_buGswcx\"].includes(baseVariant))return false;return true;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-12d43jc\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"LJns__181\",ref:refBinding,style:{...style},...addPropertyOverrides({\"LJns__181-pressed\":{\"data-framer-name\":undefined},F93KasLel:{\"data-framer-name\":\"view more\"},IPlTymCO9:{\"data-framer-name\":\"Drag\"},jshQmO73Q:{\"data-framer-name\":\"dribble\"},VDZ1UuumN:{\"data-framer-name\":\"WIP\"},y_buGswcx:{\"data-framer-name\":\"details\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsxs(SVG,{className:\"framer-hyswjk\",layoutDependency:layoutDependency,layoutId:\"ypcopVNCI\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 28 28\" overflow=\"visible\"><g><path d=\"M 28 0 L 28 28 L 0 28 L 0 0 Z\" fill=\"transparent\"></path><g><defs><radialGradient id=\"idsypcopVNCI_3g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 28 21 C 28 24.866 24.866 28 21 28 C 17.134 28 14 24.866 14 21 C 14 24.866 10.866 28 7 28 C 3.134 28 0 24.866 0 21 C 0 17.134 3.134 14 7 14 C 3.134 14 0 10.866 0 7 C 0 3.134 3.134 0 7 0 C 10.866 0 14 3.134 14 7 C 14 3.134 17.134 0 21 0 C 24.866 0 28 3.134 28 7 C 28 10.866 24.866 14 21 14 C 24.866 14 28 17.134 28 21 Z M 17.063 14 C 17.063 12.309 15.691 10.938 14 10.938 C 12.309 10.938 10.938 12.309 10.938 14 C 10.938 15.691 12.309 17.063 14 17.063 C 15.691 17.063 17.063 15.691 17.063 14 Z\" fill=\"url(#idsypcopVNCI_3g-1645963955)\"></path></g></g></svg>',withExternalLayout:true,...addPropertyOverrides({\"LJns__181-pressed\":{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><path d=\"M 20 0 L 20 20 L 0 20 L 0 0 Z\" fill=\"transparent\"></path><g><defs><radialGradient id=\"idsczn5g_bByypcopVNCI_3g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idsczn5g_bByypcopVNCI_3g-1645963955)\"></path></g></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-xqs2az\",layoutDependency:layoutDependency,layoutId:\"AifWPrv9l\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 28 28\" overflow=\"visible\"><path d=\"M 28 0 L 28 28 L 0 28 L 0 0 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({\"LJns__181-pressed\":{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><path d=\"M 20 0 L 20 20 L 0 20 L 0 0 Z\" fill=\"transparent\"></path></svg>'}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-x28k7l\",layoutDependency:layoutDependency,layoutId:\"h6PqM3zuy\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 28 28\" overflow=\"visible\"><g><defs><radialGradient id=\"idsh6PqM3zuy_1g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 28 21 C 28 24.866 24.866 28 21 28 C 17.134 28 14 24.866 14 21 C 14 24.866 10.866 28 7 28 C 3.134 28 0 24.866 0 21 C 0 17.134 3.134 14 7 14 C 3.134 14 0 10.866 0 7 C 0 3.134 3.134 0 7 0 C 10.866 0 14 3.134 14 7 C 14 3.134 17.134 0 21 0 C 24.866 0 28 3.134 28 7 C 28 10.866 24.866 14 21 14 C 24.866 14 28 17.134 28 21 Z M 17.063 14 C 17.063 12.309 15.691 10.938 14 10.938 C 12.309 10.938 10.938 12.309 10.938 14 C 10.938 15.691 12.309 17.063 14 17.063 C 15.691 17.063 17.063 15.691 17.063 14 Z\" fill=\"url(#idsh6PqM3zuy_1g-1645963955)\"></path></g></svg>',withExternalLayout:true,...addPropertyOverrides({\"LJns__181-pressed\":{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><defs><radialGradient id=\"idsczn5g_bByh6PqM3zuy_1g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idsczn5g_bByh6PqM3zuy_1g-1645963955)\"></path></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-u0o9ib\",layoutDependency:layoutDependency,layoutId:\"gt_9Mkfpn\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 28 28\" overflow=\"visible\"><path d=\"M 28 21 C 28 24.866 24.866 28 21 28 C 17.134 28 14 24.866 14 21 C 14 24.866 10.866 28 7 28 C 3.134 28 0 24.866 0 21 C 0 17.134 3.134 14 7 14 C 3.134 14 0 10.866 0 7 C 0 3.134 3.134 0 7 0 C 10.866 0 14 3.134 14 7 C 14 3.134 17.134 0 21 0 C 24.866 0 28 3.134 28 7 C 28 10.866 24.866 14 21 14 C 24.866 14 28 17.134 28 21 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({\"LJns__181-pressed\":{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z\" fill=\"transparent\"></path></svg>'}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(SVG,{className:\"framer-2rnax0\",layoutDependency:layoutDependency,layoutId:\"QtlCsWzXD\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 6.125 6.125\" overflow=\"visible\"><path d=\"M 6.125 3.063 C 6.125 1.371 4.754 0 3.063 0 C 1.371 0 0 1.371 0 3.063 C 0 4.754 1.371 6.125 3.063 6.125 C 4.754 6.125 6.125 4.754 6.125 3.063 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({\"LJns__181-pressed\":{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.375 4.375\" overflow=\"visible\"><path d=\"M 4.375 2.188 C 4.375 0.979 3.396 0 2.188 0 C 0.979 0 0 0.979 0 2.188 C 0 3.396 0.979 4.375 2.188 4.375 C 3.396 4.375 4.375 3.396 4.375 2.188 Z\" fill=\"transparent\"></path></svg>'}},baseVariant,gestureVariant)})]})]}),isDisplayed1()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-r53b64\",layoutDependency:layoutDependency,layoutId:\"xzI1FgeGt\",style:{backgroundColor:\"var(--token-00d331d4-e24e-44d2-b288-224f06ff02b0, rgb(56, 92, 140))\",borderBottomLeftRadius:80,borderBottomRightRadius:80,borderTopLeftRadius:80,borderTopRightRadius:80},variants:{VDZ1UuumN:{backgroundColor:\"var(--token-2e119ece-456c-42ee-b86d-b7fa87122c57, rgb(56, 65, 67))\"}},children:[isDisplayed1()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"View more\"})}),className:\"framer-eiwnwn\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"S45ERfIDu\",style:{\"--extracted-r6o4lv\":\"var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({IPlTymCO9:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"Drag me\"})})},jshQmO73Q:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"See @dribble\"})})},VDZ1UuumN:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"Coming soon\"})})},y_buGswcx:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-urh9gj\",\"data-styles-preset\":\"lxVs8hvW6\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-03e1f6e6-2d1e-49e7-bba7-46d53eef9391, rgb(255, 255, 255)))\"},children:\"See details\"})})}},baseVariant,gestureVariant)}),isDisplayed2()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-1wtuudt\",\"data-framer-name\":\"stars-01\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"irg394bTR\",svg:'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path d=\"M6.5 12C6.87877 12 7.22514 12.214 7.39453 12.5527L8.17871 14.1221C8.46111 14.6869 8.54776 14.8497 8.65234 14.9854C8.75708 15.1212 8.87885 15.2429 9.01465 15.3477C9.15032 15.4522 9.31314 15.5389 9.87793 15.8213L11.4473 16.6055C11.786 16.7749 12 17.1212 12 17.5C12 17.8788 11.786 18.2251 11.4473 18.3945L9.87793 19.1787C9.31314 19.4611 9.15032 19.5478 9.01465 19.6523C8.87884 19.7571 8.75708 19.8788 8.65234 20.0146C8.54776 20.1503 8.46111 20.3131 8.17871 20.8779L7.39453 22.4473C7.22514 22.786 6.87877 23 6.5 23C6.12123 23 5.77486 22.786 5.60547 22.4473L4.82129 20.8779C4.53889 20.3131 4.45224 20.1503 4.34766 20.0146C4.24292 19.8788 4.12115 19.7571 3.98535 19.6523C3.84968 19.5478 3.68686 19.4611 3.12207 19.1787L1.55273 18.3945C1.21395 18.2251 1 17.8788 1 17.5C1 17.1212 1.21395 16.7749 1.55273 16.6055L3.12207 15.8213C3.68686 15.5389 3.84968 15.4522 3.98535 15.3477C4.12115 15.2429 4.24292 15.1212 4.34766 14.9854C4.45224 14.8497 4.53889 14.6869 4.82129 14.1221L5.60547 12.5527C5.77486 12.214 6.12123 12 6.5 12ZM6.5 15.2305C6.30377 15.6216 6.14417 15.9303 5.93164 16.2061C5.72192 16.4781 5.47808 16.7219 5.20605 16.9316C4.93033 17.1442 4.62164 17.3038 4.23047 17.5C4.62164 17.6962 4.93033 17.8558 5.20605 18.0684C5.47808 18.2781 5.72192 18.5219 5.93164 18.7939C6.14403 19.0695 6.30395 19.3778 6.5 19.7686C6.69605 19.3778 6.85597 19.0695 7.06836 18.7939C7.27808 18.5219 7.52192 18.2781 7.79395 18.0684C8.06948 17.856 8.37776 17.6961 8.76855 17.5C8.37776 17.3039 8.06948 17.144 7.79395 16.9316C7.52192 16.7219 7.27807 16.4781 7.06836 16.2061C6.85583 15.9303 6.69623 15.6216 6.5 15.2305ZM15 1C15.4137 1 15.785 1.25458 15.9336 1.64062L17.1123 4.70508C17.4127 5.48612 17.5066 5.71196 17.6357 5.89355C17.7652 6.07561 17.9244 6.23477 18.1064 6.36426C18.288 6.49338 18.5139 6.58729 19.2949 6.8877L22.3594 8.06641C22.7454 8.21501 23 8.58632 23 9C23 9.41368 22.7454 9.78499 22.3594 9.93359L19.2949 11.1123C18.5139 11.4127 18.288 11.5066 18.1064 11.6357C17.9244 11.7652 17.7652 11.9244 17.6357 12.1064C17.5066 12.288 17.4127 12.5139 17.1123 13.2949L15.9336 16.3594C15.785 16.7454 15.4137 17 15 17C14.5863 17 14.215 16.7454 14.0664 16.3594L12.8877 13.2949C12.5873 12.5139 12.4934 12.288 12.3643 12.1064C12.2348 11.9244 12.0756 11.7652 11.8936 11.6357C11.712 11.5066 11.4861 11.4127 10.7051 11.1123L7.64062 9.93359C7.25458 9.78499 7 9.41368 7 9C7 8.58632 7.25458 8.21501 7.64062 8.06641L10.7051 6.8877C11.4861 6.58729 11.712 6.49338 11.8936 6.36426C12.0756 6.23477 12.2348 6.07561 12.3643 5.89355C12.4934 5.71196 12.5873 5.48612 12.8877 4.70508L14.0664 1.64062L14.1328 1.50293C14.309 1.19539 14.6379 1 15 1ZM14.7549 5.42383C14.4914 6.10893 14.3034 6.61673 13.9941 7.05176C13.735 7.41617 13.4162 7.73502 13.0518 7.99414C12.6167 8.3034 12.1089 8.49138 11.4238 8.75488L10.7861 9L11.4238 9.24512C12.1089 9.50862 12.6167 9.6966 13.0518 10.0059C13.4162 10.265 13.735 10.5838 13.9941 10.9482C14.3034 11.3833 14.4914 11.8911 14.7549 12.5762L15 13.2129L15.2451 12.5762C15.5086 11.8911 15.6966 11.3833 16.0059 10.9482C16.265 10.5838 16.5838 10.265 16.9482 10.0059C17.3833 9.6966 17.8911 9.50861 18.5762 9.24512L19.2129 9L18.5762 8.75488C17.8911 8.49138 17.3833 8.3034 16.9482 7.99414C16.5838 7.73502 16.265 7.41617 16.0059 7.05176C15.6966 6.61673 15.5086 6.10893 15.2451 5.42383L15 4.78613L14.7549 5.42383Z\" fill=\"white\"/>\\n</svg>\\n',withExternalLayout:true}),isDisplayed3()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-152fooi\",\"data-framer-name\":\"icon_left\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"Ar59Oimb1\",svg:'<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M17.6569 17.2433C18.2092 17.2433 18.6569 16.7956 18.6569 16.2433L18.6569 6.34381C18.6569 5.79153 18.2092 5.34381 17.6569 5.34381L7.75743 5.34382C7.20515 5.34382 6.75743 5.79153 6.75743 6.34382C6.75743 6.8961 7.20515 7.34382 7.75743 7.34382L15.2427 7.34381L5.63611 16.9504C5.24559 17.3409 5.24559 17.9741 5.63611 18.3646C6.02664 18.7552 6.6598 18.7552 7.05033 18.3646L16.6569 8.75803L16.6569 16.2433C16.6569 16.7956 17.1046 17.2433 17.6569 17.2433Z\" fill=\"white\"/>\\n</svg>\\n',withExternalLayout:true}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1m0i0of\",\"data-framer-name\":\"Icon/32/Solid/lock-01\",layoutDependency:layoutDependency,layoutId:\"C1fzEoJ9E\",children:/*#__PURE__*/_jsx(SVG,{className:\"framer-e4ezk4\",\"data-framer-name\":\"Solid\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:19,intrinsicWidth:17,layoutDependency:layoutDependency,layoutId:\"I1949:10462;2641:10365\",svg:'<svg width=\"17\" height=\"19\" viewBox=\"-1 -1 17 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.49476 4.98952C2.49476 2.23389 4.72865 0 7.48429 0C10.2399 0 12.4738 2.23389 12.4738 4.98952V5.94612C12.7088 5.99762 12.9344 6.07261 13.1524 6.18366C13.7782 6.50257 14.2871 7.01144 14.606 7.63733C14.8117 8.04093 14.8936 8.47061 14.9318 8.93805C14.9686 9.38809 14.9686 9.94056 14.9686 10.61V11.8429C14.9686 12.5123 14.9686 13.0648 14.9318 13.5148C14.8936 13.9822 14.8117 14.4119 14.606 14.8155C14.2871 15.4414 13.7782 15.9503 13.1524 16.2692C12.7488 16.4748 12.3191 16.5568 11.8516 16.595C11.4016 16.6318 10.8491 16.6318 10.1797 16.6317H4.78888C4.11947 16.6318 3.56699 16.6318 3.11694 16.595C2.6495 16.5568 2.21982 16.4748 1.81622 16.2692C1.19033 15.9503 0.68146 15.4414 0.362552 14.8155C0.156908 14.4119 0.074943 13.9822 0.0367522 13.5148C-1.79121e-05 13.0648 -9.66418e-06 12.5123 3.2799e-07 11.8429V10.61C-9.66418e-06 9.94057 -1.79121e-05 9.38809 0.0367522 8.93805C0.074943 8.47061 0.156908 8.04093 0.362552 7.63733C0.68146 7.01144 1.19033 6.50257 1.81622 6.18366C2.03418 6.07261 2.25975 5.99762 2.49476 5.94612V4.98952ZM10.8106 4.98952V5.82246H4.15794V4.98952C4.15794 3.15243 5.64719 1.66317 7.48429 1.66317C9.32138 1.66317 10.8106 3.15243 10.8106 4.98952ZM8.31587 10.3948C8.31587 9.93557 7.94356 9.56326 7.48429 9.56326C7.02501 9.56326 6.6527 9.93557 6.6527 10.3948V12.058C6.6527 12.5173 7.02501 12.8896 7.48429 12.8896C7.94356 12.8896 8.31587 12.5173 8.31587 12.058V10.3948Z\" fill=\"white\"/>\\n</svg>\\n',withExternalLayout:true})}),isDisplayed4()&&/*#__PURE__*/_jsxs(SVG,{className:\"framer-b1eg6n\",layoutDependency:layoutDependency,layoutId:\"v2DTDyPP_\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><path d=\"M 20 0 L 20 20 L 0 20 L 0 0 Z\" fill=\"transparent\"></path><g><defs><radialGradient id=\"idsv2DTDyPP__3g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idsv2DTDyPP__3g-1645963955)\"></path></g></g></svg>',withExternalLayout:true,...addPropertyOverrides({IPlTymCO9:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><path d=\"M 20 0 L 20 20 L 0 20 L 0 0 Z\" fill=\"transparent\"></path><g><defs><radialGradient id=\"idsIPlTymCO9v2DTDyPP__3g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idsIPlTymCO9v2DTDyPP__3g-1645963955)\"></path></g></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-a3apes\",layoutDependency:layoutDependency,layoutId:\"eTay6YgSR\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><path d=\"M 20 0 L 20 20 L 0 20 L 0 0 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-15ouukp\",layoutDependency:layoutDependency,layoutId:\"kAt0HV8AD\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><defs><radialGradient id=\"idskAt0HV8AD_1g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idskAt0HV8AD_1g-1645963955)\"></path></g></svg>',withExternalLayout:true,...addPropertyOverrides({IPlTymCO9:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><g><defs><radialGradient id=\"idsIPlTymCO9kAt0HV8AD_1g-1645963955\" cy=\"0.5\" cx=\"0.5\" r=\"0.5\" gradientTransform=\"translate(0.5, 0.5) scale(1 1) translate(-0.5, -0.5)\"><stop offset=\"0\" stop-color=\"rgb(240,246,255)\" stop-opacity=\"1\"></stop><stop offset=\"1\" stop-color=\"rgb(102,168,255)\" stop-opacity=\"1\"></stop></radialGradient></defs><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z M 12.188 10 C 12.188 8.792 11.208 7.813 10 7.813 C 8.792 7.813 7.813 8.792 7.813 10 C 7.813 11.208 8.792 12.188 10 12.188 C 11.208 12.188 12.188 11.208 12.188 10 Z\" fill=\"url(#idsIPlTymCO9kAt0HV8AD_1g-1645963955)\"></path></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-151qgfm\",layoutDependency:layoutDependency,layoutId:\"D4E24EDYE\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 20 20\" overflow=\"visible\"><path d=\"M 20 15 C 20 17.761 17.761 20 15 20 C 12.239 20 10 17.761 10 15 C 10 17.761 7.761 20 5 20 C 2.239 20 0 17.761 0 15 C 0 12.239 2.239 10 5 10 C 2.239 10 0 7.761 0 5 C 0 2.239 2.239 0 5 0 C 7.761 0 10 2.239 10 5 C 10 2.239 12.239 0 15 0 C 17.761 0 20 2.239 20 5 C 20 7.761 17.761 10 15 10 C 17.761 10 20 12.239 20 15 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-169j989\",layoutDependency:layoutDependency,layoutId:\"rpzkpFhMM\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.375 4.375\" overflow=\"visible\"><path d=\"M 4.375 2.188 C 4.375 0.979 3.396 0 2.188 0 C 0.979 0 0 0.979 0 2.188 C 0 3.396 0.979 4.375 2.188 4.375 C 3.396 4.375 4.375 3.396 4.375 2.188 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-7cl8S.framer-1y7srva, .framer-7cl8S .framer-1y7srva { display: block; }\",\".framer-7cl8S.framer-12d43jc { cursor: pointer; height: 28px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 28px; }\",\".framer-7cl8S .framer-hyswjk, .framer-7cl8S .framer-xqs2az, .framer-7cl8S .framer-x28k7l, .framer-7cl8S .framer-u0o9ib { height: 28px; left: 0px; position: absolute; top: 0px; width: 28px; }\",\".framer-7cl8S .framer-2rnax0 { height: 6px; left: 11px; position: absolute; top: 11px; width: 6px; }\",\".framer-7cl8S .framer-r53b64 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; left: 0px; overflow: visible; padding: 8px 12px 8px 16px; position: absolute; top: 0px; width: min-content; }\",\".framer-7cl8S .framer-eiwnwn { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-7cl8S .framer-1wtuudt, .framer-7cl8S .framer-152fooi { flex: none; height: 24px; position: relative; width: 24px; }\",\".framer-7cl8S .framer-1m0i0of { flex: none; gap: 0px; height: 24px; overflow: visible; position: relative; width: 24px; }\",\".framer-7cl8S .framer-e4ezk4 { bottom: 5px; flex: none; left: 3px; position: absolute; right: 6px; top: 2px; }\",\".framer-7cl8S .framer-b1eg6n { height: 20px; position: relative; width: 20px; }\",\".framer-7cl8S .framer-a3apes, .framer-7cl8S .framer-15ouukp, .framer-7cl8S .framer-151qgfm { height: 20px; left: 0px; position: absolute; top: 0px; width: 20px; }\",\".framer-7cl8S .framer-169j989 { height: 5px; left: 8px; position: absolute; top: 8px; width: 5px; }\",\".framer-7cl8S.framer-v-4glf5k.framer-12d43jc, .framer-7cl8S.framer-v-bkii6i.framer-12d43jc, .framer-7cl8S.framer-v-zkfwuf.framer-12d43jc, .framer-7cl8S.framer-v-9axedo.framer-12d43jc, .framer-7cl8S.framer-v-ekr40q.framer-12d43jc { align-content: center; align-items: center; cursor: unset; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; padding: 0px; width: min-content; }\",\".framer-7cl8S.framer-v-4glf5k .framer-r53b64, .framer-7cl8S.framer-v-zkfwuf .framer-r53b64 { left: unset; position: relative; top: unset; }\",\".framer-7cl8S.framer-v-bkii6i .framer-r53b64 { left: unset; padding: 8px 16px 8px 16px; position: relative; top: unset; }\",\".framer-7cl8S.framer-v-9axedo .framer-r53b64, .framer-7cl8S.framer-v-ekr40q .framer-r53b64 { gap: 8px; left: unset; order: 0; position: relative; top: unset; }\",\".framer-7cl8S.framer-v-12d43jc.pressed.framer-12d43jc { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 20px); width: 20px; }\",\".framer-7cl8S.framer-v-12d43jc.pressed .framer-hyswjk, .framer-7cl8S.framer-v-12d43jc.pressed .framer-xqs2az, .framer-7cl8S.framer-v-12d43jc.pressed .framer-x28k7l, .framer-7cl8S.framer-v-12d43jc.pressed .framer-u0o9ib { height: 20px; width: 20px; }\",\".framer-7cl8S.framer-v-12d43jc.pressed .framer-2rnax0 { height: 5px; left: 8px; top: 8px; width: 5px; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 28\n * @framerIntrinsicWidth 28\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"F93KasLel\":{\"layout\":[\"auto\",\"auto\"]},\"VDZ1UuumN\":{\"layout\":[\"auto\",\"auto\"]},\"jshQmO73Q\":{\"layout\":[\"auto\",\"auto\"]},\"y_buGswcx\":{\"layout\":[\"auto\",\"auto\"]},\"IPlTymCO9\":{\"layout\":[\"auto\",\"auto\"]},\"czn5g_bBy\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerPClsg5Sbq=withCSS(Component,css,\"framer-7cl8S\");export default FramerPClsg5Sbq;FramerPClsg5Sbq.displayName=\"Flower Cursor\";FramerPClsg5Sbq.defaultProps={height:28,width:28};addPropertyControls(FramerPClsg5Sbq,{variant:{options:[\"LJns__181\",\"F93KasLel\",\"VDZ1UuumN\",\"jshQmO73Q\",\"y_buGswcx\",\"IPlTymCO9\"],optionTitles:[\"Variant 1\",\"view more\",\"WIP\",\"dribble\",\"details\",\"Drag\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerPClsg5Sbq,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerPClsg5Sbq\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"28\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"28\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"F93KasLel\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"VDZ1UuumN\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"jshQmO73Q\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"y_buGswcx\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"IPlTymCO9\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"czn5g_bBy\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PClsg5Sbq.map","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Plus Jakarta Sans-bold\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/AJVGEOXGB2ALQKAZEK2LDOLCVBCMCOIT/LDEP4R7SNNABDEG433DCQGM2A7YCBHLU/OWABOLGBAKFVLPZ756IYS6EKYKU54K3I.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-pj2Ex .framer-styles-preset-1b308hg:not(.rich-text-wrapper), .framer-pj2Ex .framer-styles-preset-1b308hg.rich-text-wrapper p { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 20px; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-a2f8307b-d402-4954-9869-46d1b461f125, #4f5d5f); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-pj2Ex\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;Times New Roman MT Std Bold Italic\",\"CUSTOMV2;Times New Roman MT Std Bold Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Times New Roman MT Std Bold Italic\",source:\"custom\",style:\"italic\",uiFamilyName:\"Times New Roman MT Std\",url:\"https://framerusercontent.com/assets/IwjPK4VhJnN9DDgzHFeOsW9as.woff2\",weight:\"700\"}]}];export const css=[\".framer-dumSY .framer-styles-preset-18ug911:not(.rich-text-wrapper), .framer-dumSY .framer-styles-preset-18ug911.rich-text-wrapper h3 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 40px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 52px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\",\"@media (max-width: 1199px) and (min-width: 768px) { .framer-dumSY .framer-styles-preset-18ug911:not(.rich-text-wrapper), .framer-dumSY .framer-styles-preset-18ug911.rich-text-wrapper h3 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 40px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 52px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\",\"@media (max-width: 767px) and (min-width: 0px) { .framer-dumSY .framer-styles-preset-18ug911:not(.rich-text-wrapper), .framer-dumSY .framer-styles-preset-18ug911.rich-text-wrapper h3 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 32px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 44px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\"];export const className=\"framer-dumSY\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-xIigM .framer-styles-preset-4q6rpu:not(.rich-text-wrapper), .framer-xIigM .framer-styles-preset-4q6rpu.rich-text-wrapper a { --framer-link-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-link-text-decoration: underline; --framer-link-text-decoration-style: solid; }\"];export const className=\"framer-xIigM\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Plus Jakarta Sans-bold\",\"FS;Plus Jakarta Sans-extrabold\",\"FS;Plus Jakarta Sans-extrabold italic\",\"FS;Plus Jakarta Sans-bold italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/AJVGEOXGB2ALQKAZEK2LDOLCVBCMCOIT/LDEP4R7SNNABDEG433DCQGM2A7YCBHLU/OWABOLGBAKFVLPZ756IYS6EKYKU54K3I.woff2\",weight:\"700\"},{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XYQDC7JAGGEKCBFTJWJFLWLJYO67C7XN/RVU7P55XKD46CPRWMPRMGQG2XS5IZ3EH/RJHIBK2KTTRF4HQSD33LZE5P3HZAYGJ2.woff2\",weight:\"800\"},{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XU3SIPSTILVUEE57N33LI57RHN4LESB2/NYZOFSLOXP2NLUPPPC3HSJFYFAYFD5WF/MRD5H7VGACV27ZK3D773YPWKUWZ5UTUZ.woff2\",weight:\"800\"},{cssFamilyName:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Plus Jakarta Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/57U2OK2BISA74Z4RT4CRD5GR4O3PNVPY/K4TDAPUNBYK24HOCNW4JIOTEXSAE2BEF/GV5XODI2YD2DJA5RVTMJOSDHYESL7IYT.woff2\",weight:\"700\"}]}];export const css=['.framer-kSsmk .framer-styles-preset-1jareo1:not(.rich-text-wrapper), .framer-kSsmk .framer-styles-preset-1jareo1.rich-text-wrapper h5 { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 800; --framer-font-weight-bold-italic: 800; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 32px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-2e119ece-456c-42ee-b86d-b7fa87122c57, #384143); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 768px) { .framer-kSsmk .framer-styles-preset-1jareo1:not(.rich-text-wrapper), .framer-kSsmk .framer-styles-preset-1jareo1.rich-text-wrapper h5 { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 800; --framer-font-weight-bold-italic: 800; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 32px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-2e119ece-456c-42ee-b86d-b7fa87122c57, #384143); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 767px) and (min-width: 0px) { .framer-kSsmk .framer-styles-preset-1jareo1:not(.rich-text-wrapper), .framer-kSsmk .framer-styles-preset-1jareo1.rich-text-wrapper h5 { --framer-font-family: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-family-italic: \"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-bold: 800; --framer-font-weight-bold-italic: 800; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 24px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-2e119ece-456c-42ee-b86d-b7fa87122c57, #384143); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-kSsmk\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/jzZDl4ya1deUfyQhjiGQ/kJaeROXux1RYkzBEMHVf/MZqeNI4y9.js\";const serializationHash=\"framer-uhxoL\";const variantClassNames={WHPxmMZMO:\"framer-v-nylzg2\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({fill,height,id,title,width,...props})=>{return{...props,Gt625j9v6:title??props.Gt625j9v6??\"Input text\",XtGCRJyNJ:fill??props.XtGCRJyNJ??\"rgb(75, 194, 119)\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,Gt625j9v6,XtGCRJyNJ,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"WHPxmMZMO\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-nylzg2\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"WHPxmMZMO\",ref:refBinding,style:{backgroundColor:\"rgb(255, 255, 255)\",borderBottomLeftRadius:200,borderBottomRightRadius:200,borderTopLeftRadius:200,borderTopRightRadius:200,...style},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1jg9bi0\",\"data-framer-name\":\"Ellipse 856\",layoutDependency:layoutDependency,layoutId:\"eMKUZklpG\",style:{backgroundColor:XtGCRJyNJ,borderBottomLeftRadius:\"100%\",borderBottomRightRadius:\"100%\",borderTopLeftRadius:\"100%\",borderTopRightRadius:\"100%\"}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1b308hg\",\"data-styles-preset\":\"MZqeNI4y9\",children:\"Website\"})}),className:\"framer-iozp3c\",\"data-framer-name\":\"Website\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"pxhS67Krx\",style:{\"--framer-paragraph-spacing\":\"0px\"},text:Gt625j9v6,verticalAlignment:\"top\",withExternalLayout:true})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-uhxoL.framer-1tdx6nz, .framer-uhxoL .framer-1tdx6nz { display: block; }\",\".framer-uhxoL.framer-nylzg2 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: hidden; padding: 4px 8px 4px 8px; position: relative; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-uhxoL .framer-1jg9bi0 { flex: none; height: 8px; position: relative; width: 8px; }\",\".framer-uhxoL .framer-iozp3c { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 28\n * @framerIntrinsicWidth 98\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"Gt625j9v6\":\"title\",\"XtGCRJyNJ\":\"fill\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerHSHPnGczp=withCSS(Component,css,\"framer-uhxoL\");export default FramerHSHPnGczp;FramerHSHPnGczp.displayName=\"Label\";FramerHSHPnGczp.defaultProps={height:28,width:98};addPropertyControls(FramerHSHPnGczp,{Gt625j9v6:{defaultValue:\"Input text\",displayTextArea:false,title:\"Title\",type:ControlType.String},XtGCRJyNJ:{defaultValue:\"rgb(75, 194, 119)\",title:\"Fill\",type:ControlType.Color}});addFonts(FramerHSHPnGczp,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerHSHPnGczp\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"28\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"Gt625j9v6\\\":\\\"title\\\",\\\"XtGCRJyNJ\\\":\\\"fill\\\"}\",\"framerIntrinsicWidth\":\"98\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HSHPnGczp.map","// Generated by Framer (9805f18)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/oRoaagFl4AdwUygnd8xZ/p4yApyBID3O9o5tI4ghp/DcAQlMI1P.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/jzZDl4ya1deUfyQhjiGQ/kJaeROXux1RYkzBEMHVf/MZqeNI4y9.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/DnNcTctZH5N2scd5uOzL/7FiwYnJCX1faRGoMF3hV/ypSgpIBhr.js\";import Label from\"https://framerusercontent.com/modules/o8936yJKSbVvUV01zN8m/PmoxoniqdfVtSqbph5Kp/HSHPnGczp.js\";const LabelFonts=getFonts(Label);const serializationHash=\"framer-7ipww\";const variantClassNames={TWGVR30Cu:\"framer-v-1qtmll5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({company,companyColor,dotColor,fill,height,id,image,label,link,text,titleColor,width,year,yearColor,...props})=>{return{...props,AJHs3Bqib:titleColor??props.AJHs3Bqib??\"var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, rgb(56, 92, 140))\",aTyTm8i9T:fill??props.aTyTm8i9T??\"rgb(75, 194, 119)\",dm55iLilL:company??props.dm55iLilL??\"Company\",EEt37gu4p:companyColor??props.EEt37gu4p??\"var(--token-a2f8307b-d402-4954-9869-46d1b461f125, rgb(79, 93, 95))\",ElKSPcSlx:yearColor??props.ElKSPcSlx??\"var(--token-a2f8307b-d402-4954-9869-46d1b461f125, rgb(79, 93, 95))\",Fy4UdWnfk:year??props.Fy4UdWnfk??\"Year\",GtHjpmZAP:text??props.GtHjpmZAP??\"Title\",MZ7i_duqn:link??props.MZ7i_duqn,OPBYg3duM:image??props.OPBYg3duM,oROyuMB0t:label??props.oROyuMB0t??\"Input text\",sIS4Yh8az:dotColor??props.sIS4Yh8az??\"var(--token-449e3824-0690-491e-be20-71a54b8cbd84, rgb(102, 120, 122))\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,OPBYg3duM,GtHjpmZAP,dm55iLilL,Fy4UdWnfk,oROyuMB0t,aTyTm8i9T,AJHs3Bqib,EEt37gu4p,sIS4Yh8az,ElKSPcSlx,MZ7i_duqn,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"TWGVR30Cu\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:MZ7i_duqn,motionChild:true,nodeId:\"TWGVR30Cu\",openInNewTab:true,scopeId:\"VyknP3_qk\",children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-1qtmll5\",className,classNames)} framer-g2pslz`,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"TWGVR30Cu\",ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fit\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0),sizes:componentViewport?.width||\"100vw\",...toResponsiveImage(OPBYg3duM),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-1t9ujoq\",\"data-framer-name\":\"Frame 1321318376\",fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"VPmYEip9z\",style:{borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,y:(componentViewport?.y||0)+0+0+12,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-n7wj7t-container\",layoutDependency:layoutDependency,layoutId:\"zc9M7yMW0-container\",nodeId:\"zc9M7yMW0\",rendersWithMotion:true,scopeId:\"VyknP3_qk\",children:/*#__PURE__*/_jsx(Label,{Gt625j9v6:oROyuMB0t,height:\"100%\",id:\"zc9M7yMW0\",layoutId:\"zc9M7yMW0\",width:\"100%\",XtGCRJyNJ:aTyTm8i9T})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1q59vk9\",\"data-framer-name\":\"Frame 1321318288\",layoutDependency:layoutDependency,layoutId:\"KgmgQ9sLY\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h5,{className:\"framer-styles-preset-1jareo1\",\"data-styles-preset\":\"DcAQlMI1P\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-1lwpl3i, var(--variable-reference-AJHs3Bqib-VyknP3_qk))\"},children:\"Title\"})}),className:\"framer-t31z3g\",\"data-framer-name\":\"Revamping Skorcard’s website to clarify value and drive conversion\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"LBnuyUC23\",style:{\"--extracted-1lwpl3i\":\"var(--variable-reference-AJHs3Bqib-VyknP3_qk)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-AJHs3Bqib-VyknP3_qk\":AJHs3Bqib},text:GtHjpmZAP,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1794ziv\",\"data-framer-name\":\"Frame 1321318287\",layoutDependency:layoutDependency,layoutId:\"fnBBeQpXd\",style:{borderBottomLeftRadius:4,borderBottomRightRadius:4,borderTopLeftRadius:4,borderTopRightRadius:4},children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1b308hg\",\"data-styles-preset\":\"MZqeNI4y9\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-EEt37gu4p-VyknP3_qk))\"},children:\"Company\"})}),className:\"framer-1mwwxe8\",\"data-framer-name\":\"Skorcard\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"uYJqBFuSm\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-EEt37gu4p-VyknP3_qk)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-EEt37gu4p-VyknP3_qk\":EEt37gu4p},text:dm55iLilL,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5zserd\",\"data-styles-preset\":\"ypSgpIBhr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-sIS4Yh8az-VyknP3_qk))\"},children:\"•\"})}),className:\"framer-1w81udr\",\"data-framer-name\":\"•\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"OqzEl1kcE\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-sIS4Yh8az-VyknP3_qk)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-sIS4Yh8az-VyknP3_qk\":sIS4Yh8az},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-5zserd\",\"data-styles-preset\":\"ypSgpIBhr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-ElKSPcSlx-VyknP3_qk))\"},children:\"Year\"})}),className:\"framer-1fi0nwj\",\"data-framer-name\":\"2025\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"futMIeYeY\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-ElKSPcSlx-VyknP3_qk)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-ElKSPcSlx-VyknP3_qk\":ElKSPcSlx},text:Fy4UdWnfk,verticalAlignment:\"top\",withExternalLayout:true})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-7ipww.framer-g2pslz, .framer-7ipww .framer-g2pslz { display: block; }\",\".framer-7ipww.framer-1qtmll5 { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: 480px; }\",\".framer-7ipww .framer-1t9ujoq { flex: none; gap: 0px; height: auto; overflow: hidden; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-7ipww .framer-n7wj7t-container { flex: none; height: auto; left: 12px; position: absolute; top: 12px; width: auto; }\",\".framer-7ipww .framer-1q59vk9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 20px 0px 20px 0px; position: relative; width: 100%; }\",\".framer-7ipww .framer-t31z3g { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-7ipww .framer-1794ziv { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; will-change: var(--framer-will-change-override, transform); }\",\".framer-7ipww .framer-1mwwxe8, .framer-7ipww .framer-1w81udr, .framer-7ipww .framer-1fi0nwj { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 580\n * @framerIntrinsicWidth 480\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"OPBYg3duM\":\"image\",\"GtHjpmZAP\":\"text\",\"dm55iLilL\":\"company\",\"Fy4UdWnfk\":\"year\",\"oROyuMB0t\":\"label\",\"aTyTm8i9T\":\"fill\",\"AJHs3Bqib\":\"titleColor\",\"EEt37gu4p\":\"companyColor\",\"sIS4Yh8az\":\"dotColor\",\"ElKSPcSlx\":\"yearColor\",\"MZ7i_duqn\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerVyknP3_qk=withCSS(Component,css,\"framer-7ipww\");export default FramerVyknP3_qk;FramerVyknP3_qk.displayName=\"card projects\";FramerVyknP3_qk.defaultProps={height:580,width:480};addPropertyControls(FramerVyknP3_qk,{OPBYg3duM:{title:\"Image\",type:ControlType.ResponsiveImage},GtHjpmZAP:{defaultValue:\"Title\",displayTextArea:false,title:\"Text\",type:ControlType.String},dm55iLilL:{defaultValue:\"Company\",displayTextArea:false,title:\"company\",type:ControlType.String},Fy4UdWnfk:{defaultValue:\"Year\",displayTextArea:false,title:\"Year\",type:ControlType.String},oROyuMB0t:{defaultValue:\"Input text\",displayTextArea:false,title:\"label\",type:ControlType.String},aTyTm8i9T:{defaultValue:\"rgb(75, 194, 119)\",title:\"Fill\",type:ControlType.Color},AJHs3Bqib:{defaultValue:\"var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, rgb(56, 92, 140))\",title:\"title Color\",type:ControlType.Color},EEt37gu4p:{defaultValue:'var(--token-a2f8307b-d402-4954-9869-46d1b461f125, rgb(79, 93, 95)) /* {\"name\":\"Body\"} */',title:\"company Color\",type:ControlType.Color},sIS4Yh8az:{defaultValue:\"var(--token-449e3824-0690-491e-be20-71a54b8cbd84, rgb(102, 120, 122))\",title:\"dot Color\",type:ControlType.Color},ElKSPcSlx:{defaultValue:'var(--token-a2f8307b-d402-4954-9869-46d1b461f125, rgb(79, 93, 95)) /* {\"name\":\"Body\"} */',title:\"year Color\",type:ControlType.Color},MZ7i_duqn:{title:\"Link\",type:ControlType.Link}});addFonts(FramerVyknP3_qk,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...LabelFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerVyknP3_qk\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"480\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"OPBYg3duM\\\":\\\"image\\\",\\\"GtHjpmZAP\\\":\\\"text\\\",\\\"dm55iLilL\\\":\\\"company\\\",\\\"Fy4UdWnfk\\\":\\\"year\\\",\\\"oROyuMB0t\\\":\\\"label\\\",\\\"aTyTm8i9T\\\":\\\"fill\\\",\\\"AJHs3Bqib\\\":\\\"titleColor\\\",\\\"EEt37gu4p\\\":\\\"companyColor\\\",\\\"sIS4Yh8az\\\":\\\"dotColor\\\",\\\"ElKSPcSlx\\\":\\\"yearColor\\\",\\\"MZ7i_duqn\\\":\\\"link\\\"}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"580\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./VyknP3_qk.map","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-Y6KEo .framer-styles-preset-yc6phy:not(.rich-text-wrapper), .framer-Y6KEo .framer-styles-preset-yc6phy.rich-text-wrapper a { --framer-link-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); }\"];export const className=\"framer-Y6KEo\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9805f18)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;Times New Roman MT Std Bold Italic\",\"CUSTOMV2;Times New Roman MT Std Bold Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Times New Roman MT Std Bold Italic\",source:\"custom\",style:\"italic\",uiFamilyName:\"Times New Roman MT Std\",url:\"https://framerusercontent.com/assets/IwjPK4VhJnN9DDgzHFeOsW9as.woff2\",weight:\"700\"}]}];export const css=[\".framer-As8VM .framer-styles-preset-2c39x3:not(.rich-text-wrapper), .framer-As8VM .framer-styles-preset-2c39x3.rich-text-wrapper h4 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 32px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 44px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\",\"@media (max-width: 1199px) and (min-width: 768px) { .framer-As8VM .framer-styles-preset-2c39x3:not(.rich-text-wrapper), .framer-As8VM .framer-styles-preset-2c39x3.rich-text-wrapper h4 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 32px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 44px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\",\"@media (max-width: 767px) and (min-width: 0px) { .framer-As8VM .framer-styles-preset-2c39x3:not(.rich-text-wrapper), .framer-As8VM .framer-styles-preset-2c39x3.rich-text-wrapper h4 { --framer-font-family: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-family-italic: \\\"Times New Roman MT Std Bold Italic\\\", \\\"Times New Roman MT Std Bold Italic Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 28px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0em; --framer-line-height: 40px; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: var(--token-a7d76543-4d8e-4f41-9d54-e7465024c5d4, #385c8c); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\"];export const className=\"framer-As8VM\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (4eeba22)\nexport default function metadata(params,activeLocale){return{description:\"Portfolio of Jesslyn Ivanda\",favicon:\"https://framerusercontent.com/assets/E0Vnm23mSqORHF5zr98HU52meRU.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/v6b0m2a8CkRQo3IWgGHHjJ1m40.png\",title:\"Jesslyn Ivanda Bella\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}