@eaprelsky/nocturna-wheel 4.0.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/svg/zodiac/zodiac-planet-rahu-1.svg +3 -0
- package/dist/assets/svg/zodiac/zodiac-planet-rahu.svg +40 -3
- package/dist/nocturna-wheel.bundle.js +151 -112
- package/dist/nocturna-wheel.bundle.js.map +1 -1
- package/dist/nocturna-wheel.es.js +151 -112
- package/dist/nocturna-wheel.es.js.map +1 -1
- package/dist/nocturna-wheel.min.js +1 -1
- package/dist/nocturna-wheel.min.js.map +1 -1
- package/dist/nocturna-wheel.umd.js +151 -112
- package/dist/nocturna-wheel.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).NocturnaWheel={})}(this,function(e){"use strict";class t{static#e=new Map;static register(e,t){this.#e.set(e,t)}static get(e){return this.#e.get(e)}static has(e){return this.#e.has(e)}static clear(){this.#e.clear()}static getSvgUtils(){if(!this.has("svgUtils")){const e={svgNS:"http://www.w3.org/2000/svg",createSVGElement(e,t={}){const s=document.createElementNS(this.svgNS,e);for(const[e,r]of Object.entries(t))s.setAttribute(e,r);return s},addTooltip(e,t){const s=document.createElementNS(this.svgNS,"title");return s.textContent=t,e.appendChild(s),e},pointOnCircle(e,t,s,r){const i=(r-90)*(Math.PI/180);return{x:e+s*Math.cos(i),y:t+s*Math.sin(i)}}};this.register("svgUtils",e)}return this.get("svgUtils")}static getIconProvider(){return this.has("iconProvider")?this.get("iconProvider"):(console.warn("ServiceRegistry: IconProvider not registered. Icons may not work correctly."),console.warn("ServiceRegistry: This should be initialized in main.js with inline IconData."),null)}static initializeServices(e={}){this.getSvgUtils(),console.log("ServiceRegistry: Core services initialized")}}class s{constructor(e={}){"string"==typeof e&&(e={basePath:e,useInline:!1}),this.basePath=e.basePath||"./assets/svg/zodiac/",this.useInline=!1!==e.useInline,this.customIcons=e.customIcons||null,this.inlineData=null,this._warnedAboutMissingData=!1}_getInlineData(){return this.inlineData}setInlineData(e){this.inlineData=e,console.log("IconProvider.setInlineData(): Data loaded successfully","planets:",Object.keys(e?.planets||{}).length,"signs:",Object.keys(e?.signs||{}).length,"aspects:",Object.keys(e?.aspects||{}).length)}getPlanetIconPath(e){const t=e.toLowerCase();if(this.customIcons?.planets?.[t])return this.customIcons.planets[t];if(this.useInline){const e=this._getInlineData();if(e?.planets?.[t])return e.planets[t];this._warnedAboutMissingData||(this._warnedAboutMissingData=!0,e?e.planets||console.warn("IconProvider: Inline data missing 'planets' category"):console.warn("IconProvider: Inline data not loaded, falling back to external paths. Call setInlineData() to load inline icons."))}return`${this.basePath}zodiac-planet-${t}.svg`}getZodiacIconPath(e){const t=e.toLowerCase();if(this.customIcons?.signs?.[t])return this.customIcons.signs[t];if(this.useInline){const e=this._getInlineData();if(e?.signs?.[t])return e.signs[t]}return`${this.basePath}zodiac-sign-${t}.svg`}getAspectIconPath(e){const t=e.toLowerCase();if(this.customIcons?.aspects?.[t])return this.customIcons.aspects[t];if(this.useInline){const e=this._getInlineData();if(e?.aspects?.[t])return e.aspects[t]}return`${this.basePath}zodiac-aspect-${t}.svg`}createTextFallback(e,t,s){const{x:r,y:i,size:n="16px",color:o="#000000",className:a="icon-fallback"}=t,l=e.createSVGElement("text",{x:r,y:i,"text-anchor":"middle","dominant-baseline":"middle","font-size":n,class:a,fill:o});return l.textContent=s,l}}const r={planets:{},signs:{},aspects:{}};r.planets.jupiter="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--3%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20120%20169%20L%20120.41%2052%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--4%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2055.45%20117%20L%20114.55%20117%20L%20150%20117%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2049.17%2039.62%20C%2061.72%2037.13%2074.51%2042.25%2082.68%2053.02%20C%2090.85%2063.79%2093.13%2078.55%2088.66%2091.68%20C%2084.18%20104.81%2073.64%20114.29%2061.06%20116.51%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22zDjTfItpbO8d8TAwGvx0-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.ketu="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-6%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-8%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22fzDwOAeg_iJ89Dt6VeXd-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.lilith="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-1%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20139%20150%20L%2059%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-2%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2098.2%20117.1%20L%2099%20180%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-3%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2073.37%2033.62%20C%2062.66%2050.93%2065.45%2073.12%2080.13%2087.41%20C%2094.81%20101.7%20117.6%20104.42%20135.38%2093.99%20C%20125.69%20109.66%20107.04%20117.86%2088.56%20114.57%20C%2070.07%20111.28%2055.61%2097.2%2052.23%2079.2%20C%2048.85%2061.21%2057.27%2043.05%2073.37%2033.62%20Z%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(225%2C92.12%2C75.74)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22skUIsOvDlGxpmukY0j3V-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.mars="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22201px%22%20height%3D%22201px%22%20viewBox%3D%22-0.5%20-0.5%20201%20201%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-2%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%2210%22%20height%3D%2210%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-3%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22115%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-4%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20130%2085%20L%20155.97%2059.03%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20166.05%2048.95%20L%20159.33%2069.11%20L%20155.97%2059.03%20L%20145.89%2055.67%20Z%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22WfpUhmjnT6FgT6mvTSny-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.mercury="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22201px%22%20viewBox%3D%22-0.5%20-0.5%20200%20201%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-5%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2290%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20129.98%2025.18%20C%20130.36%2034.02%20124.63%2042.31%20115.07%2046.75%20C%20105.51%2051.19%2093.67%2051.07%2084.26%2046.43%20C%2074.85%2041.79%2069.39%2033.39%2070.05%2024.56%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20180%20L%20100%20130%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20160%20L%20140%20160%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22YspeTQYn8OWxfiwJ6-K5-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.moon="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%20%3Cpath%20d%3D%22M%20106.38%2031%20C%20133.61%2035.85%20154.8%2057.4%20159.18%2084.71%20C%20163.56%20112.02%20150.17%20139.12%20125.82%20152.23%20C%20101.46%20165.35%2071.47%20161.61%2051.08%20142.92%20Q%2059.25%20148.63%2089.31%20129.94%20Q%20119.38%20111.25%20119.38%2074.69%20Q%20119.38%2038.13%20108.81%2031.63%20Z%22%20fill%3D%22white%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fsvg%3E",r.planets.neptune="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20170%20L%20100%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20105.67%2072.59%20L%20100%2055.59%20L%2094.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-14%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20140%20L%2060%20140%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-15%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2061.18%20Q%2060%20100%2080%20110%20Q%20100%20120%20120%20110%20Q%20140%20100%20140%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%2063.67%2066.59%20L%2060%2055.59%20L%2056.33%2066.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20145.67%2072.59%20L%20140%2055.59%20L%20134.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22zbcp-zu0BkE59QIL-Zbj-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.pluto="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22149%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20129%20L%20100.5%20110%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%2070.4%20C%20139.78%2092.49%20121.69%20110.22%2099.6%20110%20C%2077.51%20109.78%2059.78%2091.69%2060%2069.6%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-12%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2270%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%227pAuGvqZmXAXuP9MepSf-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.rahu="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-6%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-8%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nMoK0GtzClMlq9khWL09-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%223M6Cx9xprG5cO1lWqNEw-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.saturn="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20139%20L%2090%2039%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2059%20L%20120%2059%20L%2090%2059%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%20169%20Q%20138%20179%20129%20174%20Q%20120%20169%20129%20144%20Q%20138%20119%20134%20104%20Q%20130%2089%20110%2089%20Q%2090%2089%2090%20109%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%226yAxXstixJTfL81ozoQc-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22sU4-NP-8qgTjRoMx9Fv4-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.selena="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20150%20L%2060%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2099.2%20117.1%20L%20100%20180%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2073.37%2031.14%20C%2062.66%2048.46%2065.45%2070.65%2080.13%2084.94%20C%2094.81%2099.23%20117.6%20101.95%20135.38%2091.52%20C%20125.69%20107.19%20107.04%20115.39%2088.56%20112.1%20C%2070.07%20108.81%2055.61%2094.73%2052.23%2076.73%20C%2048.85%2058.74%2057.27%2040.58%2073.37%2031.14%20Z%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(225%2C92.12%2C73.26)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22B7BV3EczgGRAOl1qaG-U-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.sun="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-1%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2265%22%20ry%3D%2260%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-2%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2210%22%20ry%3D%2210%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22adE6InmPBndy7Uo4bRgR-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.uranus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-4%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22149%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2080.91%2089.92%20L%20120.91%2089.92%20L%20100.91%2089.92%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20129%20L%20100%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2052.39%2051.12%20C%2066.57%2052.6%2078%2066.81%2079.77%2085.16%20C%2081.53%20103.5%2073.15%20120.94%2059.69%20126.91%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20141.64%20127.44%20C%20128.11%20122.27%20119.13%20105.39%20120.07%2086.87%20C%20121.01%2068.35%20131.61%2053.19%20145.55%2050.44%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22An7hOLSuI-_JKes7hUzt-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22XEAaU1rfczp1g1rg0gsK-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets.venus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-5%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2279%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20180%20L%20100%20119%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20150%20L%20140%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22wT5vcnIU1864jlhb-1KB-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.aquarius="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20161.5%2090%20Q%20151.5%2070%20136.5%2080%20Q%20121.5%2090%20116.5%2075%20Q%20111.5%2060%2096%2075%20Q%2080.5%2090%2074.5%2075%20Q%2068.5%2060%2041.5%2090%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20158.5%20120%20Q%20148.5%20100%20133.5%20110%20Q%20118.5%20120%20113.5%20105%20Q%20108.5%2090%2093%20105%20Q%2077.5%20120%2071.5%20105%20Q%2065.5%2090%2038.5%20120%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22fXDPfsLTpfVXU3cFdg-k-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.aries="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22blLjc4XcNJx5ieieuYer-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22G6Vla6dTyV-LotFg2Pob-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20101%20160%20Q%20100%20100%2095%2075%20Q%2090%2050%2070%2045%20Q%2050%2040%2030%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22G6Vla6dTyV-LotFg2Pob-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20101%20160%20Q%20100%20110%20105%2080%20Q%20110%2050%20130%2045%20Q%20150%2040%20170%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vkXA4BL2LVM82eNTlpCW-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.cancer="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-17%22%3E%3Cg%3E%3Cellipse%20cx%3D%22131%22%20cy%3D%22106.62%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-18%22%3E%3Cg%3E%3Cellipse%20cx%3D%2272.5%22%20cy%3D%2275.62%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-19%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.18%20159.61%20C%2081.71%20156.42%2070.06%20134.3%2070%20108%20C%2069.94%2081.71%2081.49%2059.45%2096.95%2056.06%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100.94%2C107.81)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-20%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.18%20125.49%20C%2081.71%20122.39%2070.06%20100.94%2070%2075.43%20C%2069.94%2049.93%2081.49%2028.33%2096.95%2025.04%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C100.94%2C75.25)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-nztp9pWxBHcmyZ08QR4-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.capricorn="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-8%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%22118.25%22%20rx%3D%2215%22%20ry%3D%2216.5%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20120%20112.75%20Q%20120%20130.35%20120%20110.55%20Q%20120%2090.75%20120%2068.75%20Q%20120%2046.75%20107.5%2041.25%20Q%2095%2035.75%2085%2079.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2085%2079.75%20Q%2080%2035.75%2060%2035.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20145.75%20Q%20110%20145.75%20115%20134.75%20Q%20120%20123.75%20120%20118.25%20Q%20120%20112.75%20124.23%20106.76%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22BpOhtRGwmzoIQpnF7pUJ-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.gemini="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-37%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.31%2096.94%20C%2081.84%2093.35%2070.19%2068.48%2070.13%2038.91%20C%2070.07%209.34%2081.62%20-15.7%2097.08%20-19.51%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C101.07%2C38.69)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-38%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2095.68%20223.38%20C%2080.21%20219.76%2068.56%20194.71%2068.5%20164.91%20C%2068.44%20135.12%2079.99%20109.9%2095.45%20106.06%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C99.44%2C164.69)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-39%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2079.93%20136.79%20L%2079.47%2067.65%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-40%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20119.66%20135.3%20L%20119.73%2067.65%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jCEtXZTTY2g2Gjzo-qMJ-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.leo="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-6%22%3E%3Cg%3E%3Cellipse%20cx%3D%2272.5%22%20cy%3D%22100%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20160%20140%20Q%20150%20150%20137.5%20150%20Q%20125%20150%20122.5%20135%20Q%20120%20120%20130%2080%20Q%20140%2040%20110%2040%20Q%2080%2040%2095%20100%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.libra="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2040%20136.78%20L%20160%20136.78%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2040%20108.6%20L%2084.04%20109.09%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20116.38%20109.09%20L%20160%20108.6%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20125.48%2098.82%20C%20119.06%20110.71%20105.66%20116.67%2092.85%20113.33%20C%2080.03%20109.99%2071%2098.19%2070.85%2084.59%20C%2070.7%2070.98%2079.47%2058.98%2092.21%2055.34%20C%20104.95%2051.71%20118.48%2057.35%20125.16%2069.09%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C100%2C84.25)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22Vif0qCJVHSTV2Csg5cyl-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.pisces="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2057.79%2045.18%20C%2074.33%2047.25%2087.67%2067.3%2089.73%2093.17%20C%2091.79%20119.04%2082.01%20143.63%2066.3%20152.05%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20135.25%20152.82%20C%20119.46%20145.63%20108.98%20122.12%20110.08%2096.34%20C%20111.17%2070.55%20123.54%2049.44%20139.81%2045.61%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2055.01%2099.91%20L%20144.99%2099.86%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222UPBxVXPtNNG9HLaSRjR-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.sagittarius="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2059%20127.75%20L%20138%2048.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2086.75%20L%20100%20126.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2099%2047.75%20L%20141%2047.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20139%2087.75%20L%20139%2045.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bTJtWIvd38qZUwxlYIHf-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.scorpio="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20143%20Q%2060%2080%2060%2060%20Q%2060%2040%2060%2035%20Q%2060%2030%2050%2020%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20143%20Q%2090%2080%2090%2060%20Q%2090%2040%2080%2030.75%20Q%2070%2021.5%2060%2041.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20152.09%20133.66%20Q%20120%20165.75%20120%20122.88%20Q%20120%2080%20120%2060%20Q%20120%2040%20110%2030.75%20Q%20100%2021.5%2089%2044.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20150.86%20140.07%20L%20156.05%20129.7%20L%20145.68%20134.89%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2278SzmRzQp-I1tTwLOdSe-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.taurus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22-6Y1EZ5wd5mKBmpr7pZl-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%2050%20Q%20130%2050%20125%2060%20Q%20120%2070%20115%2075%20Q%20110%2080%20105%2080%20Q%20100%2080%2095%2080%20Q%2090%2080%2085%2075%20Q%2080%2070%2075%2060%20Q%2070%2050%2050%2050%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-6Y1EZ5wd5mKBmpr7pZl-14%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22120%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22UmnKpyvcFwhx0IRVoUol-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.signs.virgo="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-8%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20143%20Q%2060%2080%2060%2060%20Q%2060%2040%2060%2035%20Q%2060%2030%2050%2020%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20143%20Q%2090%2080%2090%2060%20Q%2090%2040%2080%2030.75%20Q%2070%2021.5%2060%2041.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%20171.5%20Q%20120%20141.5%20120%20110.75%20Q%20120%2080%20120%2060%20Q%20120%2040%20110%2030.75%20Q%20100%2021.5%2089%2044.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20110%20161.5%20Q%20130%20141.5%20135%20131.5%20Q%20140%20121.5%20140%20106.5%20Q%20140%2091.5%20135%2086.5%20Q%20130%2081.5%20120%20101.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2234pg9PiOzKNUfzoN4yK9-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.conjunction="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22gGTkRmc-nT83Q299-C-k-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20108.47%2092.68%20L%20128.5%2072%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2294%22%20cy%3D%22108%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.opposition="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-6%22%3E%3Cg%3E%3Cellipse%20cx%3D%2275%22%20cy%3D%22125%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%22125%22%20cy%3D%2275%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2089.71%20109.86%20L%20109.27%2089.3%22%20fill%3D%22none%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22EZUqS9dHCJ6ET5sfbTn7-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.quincunx="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.semisextile="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.semisquare="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.sesquisquare="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.sextile="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20100%20L%20140%20100%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2070%20L%20130%20130%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%20130%20L%20130%2070%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%221QpNWf1EhDtsYVpd6CiN-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.square="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22p0KHWF2mTDFWD3EQTWJK-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22p0KHWF2mTDFWD3EQTWJK-6%22%3E%3Cg%3E%3Crect%20x%3D%2270%22%20y%3D%2270%22%20width%3D%2260%22%20height%3D%2260%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22Uxbd23ua_aHTV4gALoXr-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.aspects.trine="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",r.planets,r.signs,r.aspects;class i{constructor(){this.houseSystems={Placidus:this.calculatePlacidus.bind(this),Koch:this.calculateKoch.bind(this),Equal:this.calculateEqual.bind(this),"Whole Sign":this.calculateWholeSign.bind(this),Porphyry:this.calculatePorphyry.bind(this),Regiomontanus:this.calculateRegiomontanus.bind(this),Campanus:this.calculateCampanus.bind(this),Morinus:this.calculateMorinus.bind(this),Topocentric:this.calculateTopocentric.bind(this)}}getAvailableHouseSystems(){return Object.keys(this.houseSystems)}calculateHouseCusps(e,t="Placidus",s={}){if("number"!=typeof e||e<0||e>=360)throw new Error("Ascendant must be a number between 0 and 360");if(!this.houseSystems[t])throw new Error(`House system "${t}" is not supported`);return this.houseSystems[t](e,s)}calculatePlacidus(e,{latitude:t,mc:s}){if("number"!=typeof t||"number"!=typeof s)throw new Error("Placidus house system requires latitude and mc");if(Math.abs(t)>=66.5)return this.calculatePorphyry(e,{mc:s});const r=23.4367,i=new Array(12);i[0]=e,i[9]=s,i[6]=this.normalizeAngle(e+180),i[3]=this.normalizeAngle(s+180),this.degreesToRadians(t),this.degreesToRadians(r),this.degreesToRadians(s);try{i[10]=this.calculatePlacidusIntermediateHouse(s,e,1/3,t,r),i[11]=this.calculatePlacidusIntermediateHouse(s,e,2/3,t,r),i[1]=this.calculatePlacidusIntermediateHouse(e,i[3],1/3,t,r),i[2]=this.calculatePlacidusIntermediateHouse(e,i[3],2/3,t,r),i[4]=this.calculatePlacidusIntermediateHouse(i[3],i[6],1/3,t,r),i[5]=this.calculatePlacidusIntermediateHouse(i[3],i[6],2/3,t,r),i[7]=this.calculatePlacidusIntermediateHouse(i[6],i[9],1/3,t,r),i[8]=this.calculatePlacidusIntermediateHouse(i[6],i[9],2/3,t,r)}catch(t){return console.warn(`Placidus calculation failed: ${t.message}. Falling back to Porphyry.`),this.calculatePorphyry(e,{mc:s})}return i}calculatePlacidusIntermediateHouse(e,t,s,r,i){const n=this.calculateArc(e,t);return this.normalizeAngle(e+n*s)}calculateKoch(e,{latitude:t,mc:s}){if("number"!=typeof t||"number"!=typeof s)throw new Error("Koch house system requires latitude and mc");const r=new Array(12);r[0]=e,r[9]=s,r[6]=this.normalizeAngle(e+180),r[3]=this.normalizeAngle(s+180);const i=this.calculateArc(r[9],r[0]);r[10]=this.normalizeAngle(r[9]+i/3),r[11]=this.normalizeAngle(r[9]+2*i/3);const n=this.calculateArc(r[0],r[3]);r[1]=this.normalizeAngle(r[0]+n/3),r[2]=this.normalizeAngle(r[0]+2*n/3);const o=this.calculateArc(r[3],r[6]);r[4]=this.normalizeAngle(r[3]+o/3),r[5]=this.normalizeAngle(r[3]+2*o/3);const a=this.calculateArc(r[6],r[9]);return r[7]=this.normalizeAngle(r[6]+a/3),r[8]=this.normalizeAngle(r[6]+2*a/3),r}calculateEqual(e){const t=new Array(12);for(let s=0;s<12;s++)t[s]=this.normalizeAngle(e+30*s);return t}calculateWholeSign(e){const t=new Array(12),s=Math.floor(e/30);for(let e=0;e<12;e++)t[e]=(s+e)%12*30;return t}calculatePorphyry(e,{mc:t}){if("number"!=typeof t)throw new Error("Porphyry house system requires mc");const s=new Array(12);s[0]=e,s[9]=t,s[6]=this.normalizeAngle(e+180),s[3]=this.normalizeAngle(t+180);const r=this.calculateArc(s[9],s[0]);s[10]=this.normalizeAngle(s[9]+r/3),s[11]=this.normalizeAngle(s[9]+2*r/3);const i=this.calculateArc(s[0],s[3]);s[1]=this.normalizeAngle(s[0]+i/3),s[2]=this.normalizeAngle(s[0]+2*i/3);const n=this.calculateArc(s[3],s[6]);s[4]=this.normalizeAngle(s[3]+n/3),s[5]=this.normalizeAngle(s[3]+2*n/3);const o=this.calculateArc(s[6],s[9]);return s[7]=this.normalizeAngle(s[6]+o/3),s[8]=this.normalizeAngle(s[6]+2*o/3),s}calculateRegiomontanus(e,{latitude:t,mc:s}){if("number"!=typeof t||"number"!=typeof s)throw new Error("Regiomontanus house system requires latitude and mc");const r=new Array(12);r[0]=e,r[9]=s,r[6]=this.normalizeAngle(e+180),r[3]=this.normalizeAngle(s+180);const i=this.calculateArc(r[9],r[0]);r[10]=this.normalizeAngle(r[9]+i/3),r[11]=this.normalizeAngle(r[9]+2*i/3);const n=this.calculateArc(r[0],r[3]);r[1]=this.normalizeAngle(r[0]+n/3),r[2]=this.normalizeAngle(r[0]+2*n/3);const o=this.calculateArc(r[3],r[6]);r[4]=this.normalizeAngle(r[3]+o/3),r[5]=this.normalizeAngle(r[3]+2*o/3);const a=this.calculateArc(r[6],r[9]);return r[7]=this.normalizeAngle(r[6]+a/3),r[8]=this.normalizeAngle(r[6]+2*a/3),r}calculateCampanus(e,{latitude:t,mc:s}){if("number"!=typeof t||"number"!=typeof s)throw new Error("Campanus house system requires latitude and mc");const r=new Array(12);r[0]=e,r[9]=s,r[6]=this.normalizeAngle(e+180),r[3]=this.normalizeAngle(s+180);const i=this.calculateArc(r[9],r[0]);r[10]=this.normalizeAngle(r[9]+i/3),r[11]=this.normalizeAngle(r[9]+2*i/3);const n=this.calculateArc(r[0],r[3]);r[1]=this.normalizeAngle(r[0]+n/3),r[2]=this.normalizeAngle(r[0]+2*n/3);const o=this.calculateArc(r[3],r[6]);r[4]=this.normalizeAngle(r[3]+o/3),r[5]=this.normalizeAngle(r[3]+2*o/3);const a=this.calculateArc(r[6],r[9]);return r[7]=this.normalizeAngle(r[6]+a/3),r[8]=this.normalizeAngle(r[6]+2*a/3),r}calculateMorinus(e,{mc:t}){if("number"!=typeof t)throw new Error("Morinus house system requires mc");const s=new Array(12);s[0]=e,s[9]=t,s[6]=this.normalizeAngle(e+180),s[3]=this.normalizeAngle(t+180);const r=this.calculateArc(s[9],s[0]);s[10]=this.normalizeAngle(s[9]+r/3),s[11]=this.normalizeAngle(s[9]+2*r/3);const i=this.calculateArc(s[0],s[3]);s[1]=this.normalizeAngle(s[0]+i/3),s[2]=this.normalizeAngle(s[0]+2*i/3);const n=this.calculateArc(s[3],s[6]);s[4]=this.normalizeAngle(s[3]+n/3),s[5]=this.normalizeAngle(s[3]+2*n/3);const o=this.calculateArc(s[6],s[9]);return s[7]=this.normalizeAngle(s[6]+o/3),s[8]=this.normalizeAngle(s[6]+2*o/3),s}calculateTopocentric(e,{latitude:t,mc:s}){if("number"!=typeof t||"number"!=typeof s)throw new Error("Topocentric house system requires latitude and mc");const r=new Array(12);r[0]=e,r[9]=s,r[6]=this.normalizeAngle(e+180),r[3]=this.normalizeAngle(s+180);const i=this.calculateArc(r[9],r[0]);r[10]=this.normalizeAngle(r[9]+i/3),r[11]=this.normalizeAngle(r[9]+2*i/3);const n=this.calculateArc(r[0],r[3]);r[1]=this.normalizeAngle(r[0]+n/3),r[2]=this.normalizeAngle(r[0]+2*n/3);const o=this.calculateArc(r[3],r[6]);r[4]=this.normalizeAngle(r[3]+o/3),r[5]=this.normalizeAngle(r[3]+2*o/3);const a=this.calculateArc(r[6],r[9]);return r[7]=this.normalizeAngle(r[6]+a/3),r[8]=this.normalizeAngle(r[6]+2*a/3),r}calculateArc(e,t){const s=this.normalizeAngle(t-e);return s<=180?s:360-s}normalizeAngle(e){return(e%360+360)%360}rightAscensionToLongitude(e,t){return this.radiansToDegrees(Math.atan2(Math.sin(e)*Math.cos(t),Math.cos(e)))}longitudeToRightAscension(e,t){const s=this.degreesToRadians(e);return Math.atan2(Math.sin(s)*Math.cos(t),Math.cos(s))}degreesToRadians(e){return e*Math.PI/180}radiansToDegrees(e){return 180*e/Math.PI}}class n{constructor(e={}){this.astronomicalData={ascendant:0,mc:90,latitude:51.5,houseSystem:"Placidus",planets:{sun:0,moon:0,mercury:0,venus:0,mars:0,jupiter:0,saturn:0,uranus:0,neptune:0,pluto:0}},this.primaryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#000000",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#E41B17",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#4CC417",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#F62817",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#56A5EC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.secondaryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#AA00AA",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#FF6600",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#00AA00",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#CC0066",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#0099CC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.synastryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#666666",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#9933CC",enabled:!0,lineStyle:"solid",strokeWidth:.5},trine:{angle:120,orb:6,color:"#33AA55",enabled:!0,lineStyle:"solid",strokeWidth:.5},square:{angle:90,orb:6,color:"#CC6633",enabled:!0,lineStyle:"dotted",strokeWidth:.5},sextile:{angle:60,orb:4,color:"#5599DD",enabled:!0,lineStyle:"dotted",strokeWidth:.5}}},this.aspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#000000",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#E41B17",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#4CC417",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#F62817",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#56A5EC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.planetSettings={enabled:!0,primaryEnabled:!0,secondaryEnabled:!0,dotSize:3,iconSize:24,orbs:{sun:8,moon:8,mercury:6,venus:6,mars:6,jupiter:6,saturn:6,uranus:4,neptune:4,pluto:4},colors:{sun:"#ff9900",moon:"#aaaaaa",mercury:"#3399cc",venus:"#cc66cc",mars:"#cc3333",jupiter:"#9966cc",saturn:"#336633",uranus:"#33cccc",neptune:"#3366ff",pluto:"#663366"},visible:{sun:!0,moon:!0,mercury:!0,venus:!0,mars:!0,jupiter:!0,saturn:!0,uranus:!0,neptune:!0,pluto:!0}},this.houseSettings={enabled:!0,lineColor:"#666666",textColor:"#333333",fontSize:10,rotationAngle:0},this.zodiacSettings={enabled:!0,colors:{aries:"#ff6666",taurus:"#66cc66",gemini:"#ffcc66",cancer:"#6699cc",leo:"#ff9900",virgo:"#996633",libra:"#6699ff",scorpio:"#cc3366",sagittarius:"#cc66ff",capricorn:"#339966",aquarius:"#3399ff",pisces:"#9966cc"},fontSize:10},this.radius={innermost:90,zodiacInner:120,zodiacMiddle:150,zodiacOuter:180,planet:105,aspectInner:20,aspectOuter:120,houseNumberRadius:210},this.svg={width:460,height:460,viewBox:"0 0 460 460",center:{x:230,y:230}},this.assets={basePath:"./assets/",zodiacIconPath:"svg/zodiac/",planetIconPath:"svg/zodiac/"},this.theme={backgroundColor:"transparent",textColor:"#333333",lineColor:"#666666",lightLineColor:"#cccccc",fontFamily:"'Arial', sans-serif"},this.houseCusps=[],this.mergeConfig(e),this._initializeHouseCusps()}mergeConfig(e){const t=(e,s)=>{if("object"!=typeof s||null===s)return s;for(const r in s)Object.prototype.hasOwnProperty.call(s,r)&&("object"==typeof s[r]&&null!==s[r]&&"object"==typeof e[r]&&null!==e[r]?e[r]=t(e[r],s[r]):e[r]=s[r]);return e};for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&Object.prototype.hasOwnProperty.call(this,s)&&(this[s]=t(this[s],e[s]))}_initializeHouseCusps(){if("number"==typeof this.astronomicalData.ascendant&&"number"==typeof this.astronomicalData.mc)try{const e=new i;this.houseCusps=e.calculateHouseCusps(this.astronomicalData.ascendant,this.astronomicalData.houseSystem,{latitude:this.astronomicalData.latitude,mc:this.astronomicalData.mc}),this.houseCusps.length>0&&0===this.houseSettings.rotationAngle&&(console.log(`ChartConfig: Auto-rotating wheel to Ascendant at ${this.astronomicalData.ascendant}°`),this.houseSettings.rotationAngle=this.astronomicalData.ascendant)}catch(e){console.error("Failed to calculate house cusps:",e?.message||e),this.houseCusps=[]}}getPlanetSettings(e){const t=e.toLowerCase();return{color:this.planetSettings.colors[t]||"#000000",size:this.planetSettings.size,visible:!1!==this.planetSettings.visible[t]}}getAspectSettings(e){const t=e.toLowerCase();return this.aspectSettings.types[t]||{angle:0,orb:this.aspectSettings.orb,color:"#999999",enabled:!0}}getZodiacSettings(e){const t=e.toLowerCase();return{color:this.zodiacSettings.colors[t]||"#666666",fontSize:this.zodiacSettings.fontSize}}updateAspectSettings(e){this.aspectSettings={...this.aspectSettings,...e},this.primaryAspectSettings={...this.primaryAspectSettings,...e}}updatePrimaryAspectSettings(e){this.primaryAspectSettings={...this.primaryAspectSettings,...e}}updateSecondaryAspectSettings(e){this.secondaryAspectSettings={...this.secondaryAspectSettings,...e}}updateSynastryAspectSettings(e){this.synastryAspectSettings={...this.synastryAspectSettings,...e}}updatePlanetSettings(e){this.planetSettings={...this.planetSettings,...e}}updateHouseSettings(e){this.houseSettings={...this.houseSettings,...e}}updateZodiacSettings(e){this.zodiacSettings={...this.zodiacSettings,...e}}setRadius(e,t){Object.prototype.hasOwnProperty.call(this.radius,e)&&(this.radius[e]=t)}togglePlanetVisibility(e,t){this.planetSettings&&this.planetSettings.visible&&(this.planetSettings.visible[e]=t)}toggleHousesVisibility(e){this.houseSettings.enabled=e}toggleAspectsVisibility(e){this.aspectSettings.enabled=e,this.primaryAspectSettings.enabled=e,this.secondaryAspectSettings.enabled=e,this.synastryAspectSettings.enabled=e}togglePrimaryAspectsVisibility(e){this.primaryAspectSettings.enabled=e}toggleSecondaryAspectsVisibility(e){this.secondaryAspectSettings.enabled=e}toggleSynastryAspectsVisibility(e){this.synastryAspectSettings.enabled=e}togglePrimaryPlanetsVisibility(e){this.planetSettings.primaryEnabled=e}toggleSecondaryPlanetsVisibility(e){this.planetSettings.secondaryEnabled=e}setHouseSystem(e){return this.astronomicalData.houseSystem=e,this._initializeHouseCusps(),!0}getHouseCusps(){return this.houseCusps&&0!==this.houseCusps.length||this._initializeHouseCusps(),this.houseCusps.length>0&&"number"==typeof this.houseCusps[0]?this.houseCusps.map(e=>({lon:e})):this.houseCusps}setAscendant(e){return!("number"!=typeof e||e<0||e>=360)&&(this.astronomicalData.ascendant=e,this._initializeHouseCusps(),!0)}setMidheaven(e){return!("number"!=typeof e||e<0||e>=360)&&(this.astronomicalData.mc=e,this._initializeHouseCusps(),!0)}setLatitude(e){return!("number"!=typeof e||e<-90||e>90)&&(this.astronomicalData.latitude=e,this._initializeHouseCusps(),!0)}setPlanetPosition(e,t){const s=e.toLowerCase();return!("number"!=typeof t||t<0||t>=360)&&(!!this.astronomicalData.planets.hasOwnProperty(s)&&(this.astronomicalData.planets[s]=t,!0))}getPlanetPosition(e){const t=e.toLowerCase();return this.astronomicalData.planets.hasOwnProperty(t)?this.astronomicalData.planets[t]:null}getHouseSystem(){return this.astronomicalData.houseSystem}getAvailableHouseSystems(){return(new i).getAvailableHouseSystems()}}class o{constructor(){this.svgNS="http://www.w3.org/2000/svg"}createSVGElement(e,t={}){const s=document.createElementNS(this.svgNS,e);for(const[e,r]of Object.entries(t))s.setAttribute(e,r);return s}addTooltip(e,t){const s=document.createElementNS(this.svgNS,"title");return s.textContent=t,e.appendChild(s),e}pointOnCircle(e,t,s,r){const i=(r-90)*(Math.PI/180);return{x:e+s*Math.cos(i),y:t+s*Math.sin(i)}}}class a{constructor(e={}){this.svgNS="http://www.w3.org/2000/svg",this.svg=null,this.groups={},this.svgUtils=e.svgUtils||t.getSvgUtils(),this.groupOrder=["zodiac","houseDivisions","primaryAspects","secondaryAspects","synastryAspects","aspects","primaryPlanets","secondaryPlanets","houses"]}initialize(e,t={}){let s;if("string"==typeof e){if(s=document.querySelector(e),!s)return console.error(`SVGManager: Container not found with selector: ${e}`),null}else{if(!(e instanceof Element||e instanceof HTMLElement))return console.error("SVGManager: Invalid container. Expected string selector or DOM element."),null;s=e}s.innerHTML="";const r={width:"100%",height:"100%",viewBox:"0 0 460 460",preserveAspectRatio:"xMidYMid meet",class:"nocturna-wheel-svg",...t};this.svg=document.createElementNS(this.svgNS,"svg");for(const[e,t]of Object.entries(r))this.svg.setAttribute(e,t);return s.appendChild(this.svg),console.log("SVGManager: SVG initialized"),this.svg}createStandardGroups(){this.svg?(this.groups={},this.svg.querySelectorAll("g").forEach(e=>e.remove()),console.log("SVGManager: Creating standard groups:",this.groupOrder),this.groupOrder.forEach(e=>{this.createGroup(e)}),this.createGroup("planets")):console.error("SVGManager: Cannot create groups, SVG not initialized.")}createGroup(e){if(!this.svg)return console.error(`SVGManager: Cannot create group '${e}', SVG not initialized.`),null;if(this.groups[e])return this.groups[e];const t=document.createElementNS(this.svgNS,"g");return t.setAttribute("id",`group-${e}`),t.setAttribute("class",`svg-group svg-group-${e}`),this.svg.appendChild(t),this.groups[e]=t,t}getGroup(e){return this.svg?("planets"===e&&(console.warn('SVGManager: Using deprecated "planets" group. Use "primaryPlanets" or "secondaryPlanets" instead.'),e="primaryPlanets"),this.groups[e]?this.groups[e]:(console.warn(`SVGManager: Group '${e}' not found. Creating it.`),this.createGroup(e))):(console.warn(`SVGManager: Cannot get group '${e}', SVG not initialized.`),null)}getAllGroups(){return this.groups}getSVG(){return this.svg}}class l{constructor(e){if(!e||!e.svgNS||!e.config)throw new Error(`${this.constructor.name}: Missing required options (svgNS, config)`);this.svgNS=e.svgNS,this.config=e.config,this.options=e,this.svgUtils=e.svgUtils||{svgNS:this.svgNS,createSVGElement:(e,t={})=>{const s=document.createElementNS(this.svgNS,e);for(const[e,r]of Object.entries(t))s.setAttribute(e,r);return s},addTooltip:(e,t)=>{const s=document.createElementNS(this.svgNS,"title");return s.textContent=t,e.appendChild(s),e},pointOnCircle:(e,t,s,r)=>{const i=(r-90)*(Math.PI/180);return{x:e+s*Math.cos(i),y:t+s*Math.sin(i)}}},this.centerX=this.config.svg.center.x,this.centerY=this.config.svg.center.y,this.innerRadius=this.config.radius.zodiacInner,this.middleRadius=this.config.radius.zodiacMiddle,this.outerRadius=this.config.radius.zodiacOuter}clearGroup(e){e&&(e.innerHTML="")}render(e){throw new Error(`${this.constructor.name}: render() not implemented.`)}}class g{static capitalizeFirstLetter(e){return e.charAt(0).toUpperCase()+e.slice(1)}static getHouseFromPosition(e,t=0){const s=(e-t+360)%360;return Math.floor(s/30)+1}static getZodiacSigns(){return["aries","taurus","gemini","cancer","leo","virgo","libra","scorpio","sagittarius","capricorn","aquarius","pisces"]}static getHouseSystems(){return{Placidus:"Most commonly used house system in Western astrology, based on time of day",Koch:"Developed by Walter Koch, a time-based system similar to Placidus",Campanus:"Medieval system dividing the prime vertical into equal parts",Regiomontanus:"Similar to Campanus, but using the celestial equator instead of prime vertical",Equal:"Divides the ecliptic into 12 equal segments of 30° each from the Ascendant","Whole Sign":"Assigns the entire rising sign to the 1st house, with subsequent signs as houses",Porphyry:"Simple system that divides each quadrant into three equal parts",Topocentric:"Modern system similar to Placidus but more accurate for extreme latitudes"}}static getPlanets(){return["sun","moon","mercury","venus","mars","jupiter","saturn","uranus","neptune","pluto"]}static houseToRoman(e){return["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII"][e-1]||""}static getPlanetFullName(e,t="en"){const s={en:{sun:"Sun",moon:"Moon",mercury:"Mercury",venus:"Venus",mars:"Mars",jupiter:"Jupiter",saturn:"Saturn",uranus:"Uranus",neptune:"Neptune",pluto:"Pluto"},ru:{sun:"Солнце",moon:"Луна",mercury:"Меркурий",venus:"Венера",mars:"Марс",jupiter:"Юпитер",saturn:"Сатурн",uranus:"Уран",neptune:"Нептун",pluto:"Плутон"}};return(s[t]||s.en)[e.toLowerCase()]||this.capitalizeFirstLetter(e)}static getZodiacSignFullName(e,t="en"){const s={en:{aries:"Aries",taurus:"Taurus",gemini:"Gemini",cancer:"Cancer",leo:"Leo",virgo:"Virgo",libra:"Libra",scorpio:"Scorpio",sagittarius:"Sagittarius",capricorn:"Capricorn",aquarius:"Aquarius",pisces:"Pisces"},ru:{aries:"Овен",taurus:"Телец",gemini:"Близнецы",cancer:"Рак",leo:"Лев",virgo:"Дева",libra:"Весы",scorpio:"Скорпион",sagittarius:"Стрелец",capricorn:"Козерог",aquarius:"Водолей",pisces:"Рыбы"}};return(s[t]||s.en)[e.toLowerCase()]||this.capitalizeFirstLetter(e)}}class c extends l{constructor(e){if(super(e),this.iconProvider=e.iconProvider,!e.assetBasePath&&!this.iconProvider)throw new Error("ZodiacRenderer: Missing required option assetBasePath or iconProvider");this.assetBasePath=e.assetBasePath||"./assets/",this.signIconRadius=(this.outerRadius+this.middleRadius)/2,this.signIconSize=30}render(e){if(!e)return console.error("ZodiacRenderer: parentGroup is null or undefined."),[];this.clearGroup(e);const t=[];return t.push(...this.renderBaseCircles(e)),t.push(...this.renderDivisionLines(e)),t.push(...this.renderZodiacSigns(e)),console.log("ZodiacRenderer: Rendering complete."),t}renderBaseCircles(e){const t=[];return[{r:this.outerRadius,class:"chart-outer-circle"},{r:this.middleRadius,class:"chart-middle-circle"},{r:this.innerRadius,class:"chart-inner-circle"}].forEach(s=>{let r="#999",i="0.5";"chart-outer-circle"===s.class&&(r="#666",i="1");const n=this.svgUtils.createSVGElement("circle",{cx:this.centerX,cy:this.centerY,r:s.r,fill:"transparent",stroke:r,"stroke-width":i,class:`zodiac-element ${s.class}`});e.appendChild(n),t.push(n)}),t}renderDivisionLines(e){const t=[];for(let s=0;s<12;s++){const r=30*s,i=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.middleRadius,r),n=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.outerRadius,r);let o="";0===r?o="aries-point":90===r?o="cancer-point":180===r?o="libra-point":270===r&&(o="capricorn-point");const a=this.svgUtils.createSVGElement("line",{x1:i.x,y1:i.y,x2:n.x,y2:n.y,stroke:"#999","stroke-width":"0.75",class:`zodiac-element zodiac-division-line ${o}`});e.appendChild(a),t.push(a)}return t}renderZodiacSigns(e){const t=[],s=g.getZodiacSigns();for(let r=0;r<12;r++){const i=s[r],n=30*r+15,o=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.signIconRadius,n);let a;if(this.iconProvider)a=this.iconProvider.getZodiacIconPath(i);else{const e=this.options.assetBasePath||this.assetBasePath||"./assets/";a=`${e}svg/zodiac/zodiac-sign-${i}.svg`}this._loggedSigns||(this._loggedSigns={}),this._loggedSigns[i]||(console.log(`ZodiacRenderer: Loading sign '${i}':`,a.startsWith("data:")?"inline data URL":a),this._loggedSigns[i]=!0);const l=this.svgUtils.createSVGElement("image",{x:o.x-this.signIconSize/2,y:o.y-this.signIconSize/2,width:this.signIconSize,height:this.signIconSize,href:a,class:`zodiac-element zodiac-sign zodiac-sign-${i}`});l.addEventListener("error",()=>{console.warn(`Zodiac sign icon not found: ${a}`),l.setAttribute("href","");const s=i.substring(0,3).toUpperCase();let r;this.iconProvider?r=this.iconProvider.createTextFallback(this.svgUtils,{x:o.x,y:o.y,size:"10px",color:"#ccc",className:`zodiac-element zodiac-sign zodiac-sign-${i}`},s):(r=this.svgUtils.createSVGElement("text",{x:o.x,y:o.y,"text-anchor":"middle","dominant-baseline":"central","font-size":"10px",fill:"#ccc",class:`zodiac-element zodiac-sign zodiac-sign-${i}`}),r.textContent=s),e.appendChild(r),t.push(r)}),this.svgUtils.addTooltip(l,g.getZodiacSignFullName(i)),e.appendChild(l),t.push(l)}return t}}class d extends l{constructor(e){super(e),this.houseData=e.houseData||[],this.extendedRadius=this.outerRadius+25,this.numberRadius=this.outerRadius+30}render(e,t=0){if(!e)return console.error("HouseRenderer: parentGroup is null or undefined."),[];this.clearGroup(e);const s=[];return s.push(...this.renderDivisions(e,t)),s.push(...this.renderNumbers(e,t)),console.log("HouseRenderer: Rendering complete."),s}renderDivisions(e,t){const s=[];let r=0;if(console.log("HouseRenderer: House data for divisions:",this.houseData),this.houseData&&this.houseData.length>=12){r=(360-this.getHouseLongitude(this.houseData[0]))%360}for(let i=0;i<12;i++){let n;n=this.houseData&&this.houseData.length>=12?this.getHouseLongitude(this.houseData[i]):30*i;const o=(n+r+t)%360;let a="";0===i?a="axis asc":3===i?a="axis ic":6===i?a="axis dsc":9===i&&(a="axis mc");const l=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.innerRadius,o),g=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.middleRadius,o);let c="#999",d="0.75",h="#999",C="0.75",D=null;a.includes("axis")?(c="#555",d="1",h="#555",C="1"):D="2,2";const p=this.svgUtils.createSVGElement("line",{x1:l.x,y1:l.y,x2:g.x,y2:g.y,stroke:c,"stroke-width":d,class:`house-element house-division-line ${a}`});a.includes("axis")&&(p.style.zIndex=10),e.appendChild(p),s.push(p);const F=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.outerRadius,o),u=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.extendedRadius,o),E={x1:F.x,y1:F.y,x2:u.x,y2:u.y,stroke:h,"stroke-width":C,class:`house-element house-division-line outer ${a}`};D&&(E["stroke-dasharray"]=D);const f=this.svgUtils.createSVGElement("line",E);a.includes("axis")&&(f.style.zIndex=10),e.appendChild(f),s.push(f)}return s}renderNumbers(e,t){const s=[];let r=0;if(console.log("HouseRenderer: House data for numbers:",this.houseData),this.houseData&&this.houseData.length>=12){r=(360-this.getHouseLongitude(this.houseData[0]))%360}for(let i=0;i<12;i++){const n=i+1;let o;if(this.houseData&&this.houseData.length>=12){const e=this.getHouseLongitude(this.houseData[i]);o=((e+(this.getHouseLongitude(this.houseData[(i+1)%12])-e+360)%360/2)%360+r+t)%360}else o=(30*i+15+t)%360;const a=o,l=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.numberRadius,a),c=this.svgUtils.createSVGElement("text",{x:l.x,y:l.y,class:"house-element house-number"});a>=315||a<45?(c.setAttribute("text-anchor","middle"),c.setAttribute("dominant-baseline","auto")):a>=45&&a<135?(c.setAttribute("text-anchor","start"),c.setAttribute("dominant-baseline","middle")):a>=135&&a<225?(c.setAttribute("text-anchor","middle"),c.setAttribute("dominant-baseline","hanging")):(c.setAttribute("text-anchor","end"),c.setAttribute("dominant-baseline","middle")),c.textContent=g.houseToRoman(n),this.svgUtils.addTooltip(c,`House ${n}`),e.appendChild(c),s.push(c)}return s}getHouseLongitude(e){return null==e?(console.warn("HouseRenderer: Null or undefined house data"),0):"object"==typeof e&&null!==e&&"lon"in e?e.lon:"number"==typeof e?e:(console.warn("HouseRenderer: Unrecognized house data format",e),0)}}class h extends l{constructor(e){if(super(e),this.iconProvider=e.iconProvider,!e.assetBasePath&&!this.iconProvider)throw new Error(`${this.constructor.name}: Missing required option assetBasePath or iconProvider`);this.assetBasePath=e.assetBasePath||"./assets/"}calculateBasePositions(e,t,s){e.forEach(e=>{const r=(e.position-90)*(Math.PI/180);e.radians=r;const i=this.svgUtils.pointOnCircle(this.centerX,this.centerY,t,e.position);e.x=i.x,e.y=i.y;const n=this.svgUtils.pointOnCircle(this.centerX,this.centerY,s,e.position);e.iconX=n.x,e.iconY=n.y,e.adjustedIconX=e.iconX,e.adjustedIconY=e.iconY})}preparePlanetData(e,t,s,r){return e.map(e=>({...e,name:e.name||"unknown",position:void 0!==e.position?e.position:0,x:0,y:0,iconX:0,iconY:0,adjustedIconX:0,adjustedIconY:0,radians:0,zodiacSign:g.getZodiacSigns()[Math.floor(e.position/30)%12],position_in_sign:e.position%30,isPrimary:"primary"===t,type:t,color:e.color||"#000000",retrograde:!0===e.retrograde,dotRadius:s,iconRadius:r}))}render(e,t,s=0,r={}){throw new Error(`${this.constructor.name}: render() not implemented.`)}}class C extends h{constructor(e){super(e)}renderPlanetSymbol(e,t,s=24){let r;if(this.iconProvider)r=this.iconProvider.getPlanetIconPath(t.name);else{const e=this.options.assetBasePath||this.assetBasePath||"./assets/";r=`${e}svg/zodiac/zodiac-planet-${t.name.toLowerCase()}.svg`}const i=t.adjustedIconX-s/2,n=t.adjustedIconY-s/2,o=t.isPrimary?"primary":"secondary",a=this.svgUtils.createSVGElement("image",{x:i,y:n,width:s,height:s,href:r,class:`planet-icon planet-${t.name}-icon planet-${o}-icon`});return a.addEventListener("error",()=>{console.warn(`Planet icon not found: ${r}`),a.setAttribute("href","");const i=t.name.charAt(0).toUpperCase();let n;this.iconProvider?n=this.iconProvider.createTextFallback(this.svgUtils,{x:t.adjustedIconX,y:t.adjustedIconY,size:`${s}px`,color:t.color||"#000000",className:`planet-symbol planet-${t.name}-symbol planet-${o}-symbol`},i):(n=this.svgUtils.createSVGElement("text",{x:t.adjustedIconX,y:t.adjustedIconY,"text-anchor":"middle","dominant-baseline":"middle","font-size":`${s}px`,class:`planet-symbol planet-${t.name}-symbol planet-${o}-symbol`,fill:t.color||"#000000"}),n.textContent=t.name.charAt(0).toUpperCase()),e.appendChild(n)}),a}renderRetrogradeIndicator(e,t,s=24){const r=s/2-2,i=s/2-2,n=t.adjustedIconX+r,o=t.adjustedIconY+i,a=t.isPrimary?"primary":"secondary",l=t.color||"#000000",g=this.svgUtils.createSVGElement("text",{x:n,y:o,"text-anchor":"end","dominant-baseline":"alphabetic","font-size":`${Math.max(7,.3*s)}px`,"font-weight":"bold","font-family":"Arial, sans-serif",class:`planet-retrograde planet-${t.name}-retrograde planet-${a}-retrograde`,fill:l,stroke:"#ffffff","stroke-width":"0.5","paint-order":"stroke fill"});return g.textContent="R",g}renderPlanetDot(e,t,s=3){const r=t.isPrimary?"primary":"secondary";return this.svgUtils.createSVGElement("circle",{cx:t.x,cy:t.y,r:s,class:`planet-dot planet-${t.name}-dot planet-${r}-dot`,fill:t.color||"#000000"})}renderConnector(e,t,s,r=.3){const i=t.isPrimary?"primary":"secondary",n=t.x-t.adjustedIconX,o=t.y-t.adjustedIconY;if(Math.sqrt(n*n+o*o)>s*r){return this.svgUtils.createSVGElement("line",{x1:t.x,y1:t.y,x2:t.adjustedIconX,y2:t.adjustedIconY,class:`planet-element planet-${t.name.toLowerCase()} planet-connector planet-${i}-connector`,stroke:t.color||"#000000","stroke-width":.75,"stroke-opacity":.5})}return null}addPlanetTooltip(e,t){const s=`${t.isPrimary?"Primary":"Secondary"} ${g.getPlanetFullName(t.name)}: ${t.position.toFixed(1)}° ${t.zodiacSign.toUpperCase()} (${t.position_in_sign.toFixed(1)}°)`;this.svgUtils.addTooltip(e,s)}render(e,t,s=0,r={}){throw new Error(`${this.constructor.name}: This is a utility renderer, use specific rendering methods instead.`)}}class D{static calculatePosition(e){const{centerX:t,centerY:s,radius:r,longitude:i,iconSize:n=24}=e,a=(new o).pointOnCircle(t,s,r,i),l=a.x-n/2,g=a.y-n/2;return{x:a.x,y:a.y,iconX:l,iconY:g,iconCenterX:a.x,iconCenterY:a.y,longitude:i,radius:r}}static detectOverlaps(e,t=24){const s=[],r=new Set;for(let i=0;i<e.length;i++){if(r.has(i))continue;const n=[i];r.add(i);for(let s=0;s<e.length;s++){if(i===s||r.has(s))continue;Math.sqrt(Math.pow(e[i].x-e[s].x,2)+Math.pow(e[i].y-e[s].y,2))<t&&(n.push(s),r.add(s))}n.length>1&&s.push(n)}return s}static adjustOverlaps(e,t={}){const{minDistance:s=24,centerX:r,centerY:i,baseRadius:n,iconSize:o=24}=t;if(!e||e.length<=1)return e;if(!r||!i||!n)return console.error("PlanetPositionCalculator: Missing required parameters (centerX, centerY, or baseRadius)"),e;console.log(`PlanetPositionCalculator: Adjusting overlaps for ${e.length} positions`);const a=[...e],l=s/n*(180/Math.PI);console.log(`PlanetPositionCalculator: Minimum angular distance: ${l.toFixed(2)}°`);const g=a.map((e,t)=>({pos:e,idx:t})).sort((e,t)=>e.pos.longitude-t.pos.longitude).map(e=>({...a[e.idx],originalIndex:e.idx})),c=this._findOverlappingClusters(g,l);return console.log(`PlanetPositionCalculator: Found ${c.length} clusters of overlapping positions`),c.forEach((e,t)=>{console.log(`PlanetPositionCalculator: Cluster ${t+1} has ${e.length} positions`)}),c.forEach((e,t)=>{if(console.log(`PlanetPositionCalculator: Processing cluster ${t+1}`),e.length<=1){const t=e[0];console.log(`PlanetPositionCalculator: Single position in cluster, keeping at original longitude ${t.longitude.toFixed(2)}°`),this._setExactPosition(t,t.longitude,n,r,i,o)}else console.log(`PlanetPositionCalculator: Distributing ${e.length} positions in cluster`),this._distributeClusterByAngle(e,n,l,r,i,o),e.forEach((e,s)=>{console.log(`PlanetPositionCalculator: Position ${s+1} in cluster ${t+1} adjusted from ${e.longitude.toFixed(2)}° to ${e.adjustedLongitude.toFixed(2)}°`)})}),g.forEach(e=>{const t=e.originalIndex;void 0!==t&&t>=0&&t<a.length&&(a[t].x=e.x,a[t].y=e.y,a[t].iconX=e.iconX,a[t].iconY=e.iconY,a[t].iconCenterX=e.iconCenterX,a[t].iconCenterY=e.iconCenterY,void 0!==e.adjustedLongitude&&(a[t].adjustedLongitude=e.adjustedLongitude))}),a}static _findOverlappingClusters(e,t){if(!e.length)return[];if(1===e.length)return[e];const s=[];let r=[e[0]];const i=e.length;e[0],e[0].longitude;for(let n=1;n<i;n++){const i=e[n-1],o=e[n];let a=o.longitude-i.longitude;a<0&&(a+=360),a<t?r.push(o):(r.length>0&&s.push(r),r=[o])}r.length>0&&s.push(r);const n=e[i-1],o=e[0];let a=o.longitude+360-n.longitude;if(a<0&&(a+=360),a<t&&s.length>=2){const e=s[0],t=s[s.length-1];if(e.includes(o)&&t.includes(n)){const r=[...t,...e];s.pop(),s[0]=r}}return s}static _distributeClusterByAngle(e,t,s,r,i,n){const o=e.length;if(1===o)return void this._setExactPosition(e[0],e[0].longitude,t,r,i,n);e.sort((e,t)=>e.longitude-t.longitude);const a=e[0].longitude,l=e[o-1].longitude;let g=l-a;(g<0||g>180)&&(g=(360+l-a)%360);let c=0;for(let t=0;t<o;t++)c+=e[t].longitude;let d=c/o%360;const h=(o-1)*s,C=Math.max(h,g),D=(d-C/2+360)%360;for(let s=0;s<o;s++){const a=(D+s*(C/(o-1)))%360;this._setExactPosition(e[s],a,t,r,i,n)}}static _setExactPosition(e,t,s,r,i,n){const a=(new o).pointOnCircle(r,i,s,t);e.x=a.x,e.y=a.y,e.iconCenterX=a.x,e.iconCenterY=a.y,e.iconX=a.x-n/2,e.iconY=a.y-n/2,e.adjustedLongitude=t}}class p extends h{constructor(e){super(e),this.symbolRenderer=e.symbolRenderer,this.circleConfig={circle:"inner"}}calculateRadii(e=null){const t=e?.radius?.inner||this.innerRadius;return{dotRadius:t,iconRadius:t+((e?.radius?.middle||this.middleRadius)-t)/2}}adjustOverlappingPlanets(e){if(e.length<=1)return;const t=e[0].iconRadius,s=e.map((e,s)=>({x:e.iconX,y:e.iconY,iconX:e.iconX,iconY:e.iconY,iconCenterX:e.iconX,iconCenterY:e.iconY,longitude:e.position,radius:t,originalIndex:s,name:e.name}));D.adjustOverlaps(s,{minDistance:36,centerX:this.centerX,centerY:this.centerY,baseRadius:t,iconSize:24}).forEach((t,s)=>{const r=e[s];r.position,r.adjustedIconX=t.iconCenterX,r.adjustedIconY=t.iconCenterY,void 0!==t.adjustedLongitude&&(r.adjustedPosition=t.adjustedLongitude)})}render(e,t,s=0,r={}){if(!e)return console.error("PrimaryPlanetRenderer: parentGroup is null or undefined."),[];const{dotRadius:i,iconRadius:n}=r.dotRadius&&r.iconRadius?{dotRadius:r.dotRadius,iconRadius:r.iconRadius}:this.calculateRadii(r.config||this.config);if(!i||!n)return console.error("PrimaryPlanetRenderer: Could not determine radius values"),[];this.clearGroup(e);const o=this.preparePlanetData(t,"primary",i,n);return o.sort((e,t)=>e.position-t.position),this.calculateBasePositions(o,i,n),this.adjustOverlappingPlanets(o),this.drawPlanets(e,o),o}drawPlanets(e,t){t.forEach(t=>{const s=this.svgUtils.createSVGElement("g",{"data-planet":t.name,"data-type":t.type,class:`planet-element planet-${t.name} planet-primary`,transform:"translate(0,0)"}),r=this.symbolRenderer.renderPlanetDot(s,t);s.appendChild(r);const i=this.symbolRenderer.renderPlanetSymbol(s,t,24);if(s.appendChild(i),t.retrograde){const e=this.symbolRenderer.renderRetrogradeIndicator(s,t,24);s.appendChild(e)}this.symbolRenderer.addPlanetTooltip(s,t);const n=this.symbolRenderer.renderConnector(s,t,24);n&&s.appendChild(n),e.appendChild(s)})}}class F extends h{constructor(e){super(e),this.symbolRenderer=e.symbolRenderer,this.circleConfig={circle:"innermost"}}calculateRadii(e=null){const t=e?.radius?.innermost||.5*this.innerRadius;return{dotRadius:t,iconRadius:t+((e?.radius?.zodiacInner||this.innerRadius)-t)/2}}adjustOverlappingPlanets(e){if(e.length<=1)return;const t=e[0].iconRadius,s=e.map((e,s)=>({x:e.iconX,y:e.iconY,iconX:e.iconX,iconY:e.iconY,iconCenterX:e.iconX,iconCenterY:e.iconY,longitude:e.position,radius:t,originalIndex:s,name:e.name}));D.adjustOverlaps(s,{minDistance:27,centerX:this.centerX,centerY:this.centerY,baseRadius:t,iconSize:18}).forEach((t,s)=>{const r=e[s];r.adjustedIconX=t.iconCenterX,r.adjustedIconY=t.iconCenterY,void 0!==t.adjustedLongitude&&(r.adjustedPosition=t.adjustedLongitude)})}render(e,t,s=0,r={}){if(!e)return console.error("SecondaryPlanetRenderer: parentGroup is null or undefined."),[];const{dotRadius:i,iconRadius:n}=r.dotRadius&&r.iconRadius?{dotRadius:r.dotRadius,iconRadius:r.iconRadius}:this.calculateRadii(r.config||this.config);if(!i||!n)return console.error("SecondaryPlanetRenderer: Could not determine radius values"),[];this.clearGroup(e);const o=this.preparePlanetData(t,"secondary",i,n);return o.sort((e,t)=>e.position-t.position),this.calculateBasePositions(o,i,n),this.adjustOverlappingPlanets(o),this.drawPlanets(e,o),o}drawPlanets(e,t){t.forEach(t=>{const s=this.svgUtils.createSVGElement("g",{"data-planet":t.name,"data-type":t.type,class:`planet-element planet-${t.name} planet-secondary`,transform:"translate(0,0)"}),r=this.symbolRenderer.renderPlanetDot(s,t,2);s.appendChild(r);const i=this.symbolRenderer.renderPlanetSymbol(s,t,18);if(s.appendChild(i),t.retrograde){const e=this.symbolRenderer.renderRetrogradeIndicator(s,t,18);s.appendChild(e)}this.symbolRenderer.addPlanetTooltip(s,t);const n=this.symbolRenderer.renderConnector(s,t,18);n&&s.appendChild(n),e.appendChild(s)})}}class u extends h{constructor(e){super(e),this.primaryRenderer=e.primaryRenderer,this.secondaryRenderer=e.secondaryRenderer,this.symbolRenderer=e.symbolRenderer,this.circleConfigs={primary:{circle:"inner"},secondary:{circle:"innermost"}}}calculateRadii(e,t=null){if(!this.circleConfigs[e])return console.error(`PlanetRendererCoordinator: No circle configuration found for planet type: ${e}`),{dotRadius:null,iconRadius:null};switch(e){case"primary":return this.primaryRenderer.calculateRadii(t);case"secondary":return this.secondaryRenderer.calculateRadii(t);default:return console.error(`PlanetRendererCoordinator: Unknown planet type: ${e}`),{dotRadius:null,iconRadius:null}}}render(e,t,s=0,r={}){const i=r.type||"primary";switch(console.log(`PlanetRendererCoordinator: Rendering ${i} planets, count:`,t.length),i){case"primary":return this.primaryRenderer.render(e,t,s,r);case"secondary":return this.secondaryRenderer.render(e,t,s,r);default:return console.error(`PlanetRendererCoordinator: Unknown planet type: ${i}`),[]}}renderAllPlanetTypes(e){const{svgManager:t,planetsData:s,config:r,enabledTypes:i={primary:!0,secondary:!0}}=e;if(!t||!s||!r)return console.error("PlanetRendererCoordinator: Missing required parameters"),{};const n=Object.entries(s).filter(([e,t])=>!1!==r.planetSettings.visible?.[e]).map(([e,t])=>({name:e,position:t.lon,color:t.color||"#000000"})),o={},a=this.centerX,l=this.centerY;if(this.centerX=r.svg.center.x,this.centerY=r.svg.center.y,this.primaryRenderer.centerX=this.centerX,this.primaryRenderer.centerY=this.centerY,this.secondaryRenderer.centerX=this.centerX,this.secondaryRenderer.centerY=this.centerY,i.primary){const e=t.getGroup("primaryPlanets");o.primary=this.primaryRenderer.render(e,n,0,{config:r}),console.log(`PlanetRendererCoordinator: Rendered ${o.primary.length} primary planets`)}else o.primary=[];if(i.secondary){const e=t.getGroup("secondaryPlanets");o.secondary=this.secondaryRenderer.render(e,n,0,{config:r}),console.log(`PlanetRendererCoordinator: Rendered ${o.secondary.length} secondary planets`)}else o.secondary=[];return this.centerX=a,this.centerY=l,this.primaryRenderer.centerX=a,this.primaryRenderer.centerY=l,this.secondaryRenderer.centerX=a,this.secondaryRenderer.centerY=l,o}renderAllPlanets(e){return console.warn("PlanetRendererCoordinator: renderAllPlanets is deprecated, use renderAllPlanetTypes instead"),this.renderAllPlanetTypes(e)}}class E extends l{constructor(e){super(e),this.astrologyUtils=g,this.renderedAspects=[],this._aspectCacheKey=null,this._aspectCache=[],this.assetBasePath=e.assetBasePath||"./assets/",this.iconProvider=e.iconProvider,this.defaultAspectDefinitions={conjunction:{angle:0,orb:8,color:"#FF4500",abbr:"CON"},opposition:{angle:180,orb:6,color:"#DC143C",abbr:"OPP"},trine:{angle:120,orb:6,color:"#2E8B57",abbr:"TRI"},square:{angle:90,orb:6,color:"#FF0000",abbr:"SQR"},sextile:{angle:60,orb:4,color:"#4682B4",abbr:"SEX"}}}_angularDistance(e,t){const s=Math.abs(e-t)%360;return Math.min(s,360-s)}calculateAspects(e,t=null){const s=[];if(!e||e.length<2)return s;const r=t||this.config.aspectSettings||{},i=`${JSON.stringify(r)}|${e.map(e=>`${e.name}:${e.position}`).join("|")}`;if(i===this._aspectCacheKey)return console.log(`ClientSideAspectRenderer: Using cached aspects (${this._aspectCache.length})`),this._aspectCache;const n=r.orb||6,o=r.types||this.defaultAspectDefinitions;for(let t=0;t<e.length;t++)for(let r=t+1;r<e.length;r++){const i=e[t],a=e[r],l=this._angularDistance(i.position,a.position);for(const e in o){const t=o[e],r=t.angle,g=void 0!==t.orb?t.orb:n;Math.abs(l-r)<=g&&s.push({planet1:i.name,planet2:a.name,type:e,angle:r,angleDiff:l,orb:Math.abs(l-r),p1:i,p2:a,color:t.color||"#888",lineStyle:t.lineStyle,abbr:t.abbr||e.substring(0,3).toUpperCase()})}}return console.log(`ClientSideAspectRenderer: Calculated ${s.length} aspects.`),this._aspectCacheKey=i,this._aspectCache=s,s}calculateCrossAspects(e,t,s=null){const r=[];if(!e||e.length<1||!t||t.length<1)return r;const i=s||this.config.synastryAspectSettings||{},n=i.orb||6,o=i.types||this.defaultAspectDefinitions;for(let s=0;s<e.length;s++)for(let i=0;i<t.length;i++){const a=e[s],l=t[i],g=this._angularDistance(a.position,l.position);for(const e in o){const t=o[e],s=t.angle,i=void 0!==t.orb?t.orb:n;Math.abs(g-s)<=i&&r.push({planet1:a.name,planet2:l.name,type:e,angle:s,angleDiff:g,orb:Math.abs(g-s),p1:a,p2:l,color:t.color||"#888",lineStyle:t.lineStyle,abbr:t.abbr||e.substring(0,3).toUpperCase(),isCross:!0})}}return console.log(`ClientSideAspectRenderer: Calculated ${r.length} cross-aspects (synastry).`),r}render(e,t,s=null){if(!e)return console.error("ClientSideAspectRenderer.render: parentGroup is null or undefined."),[];this.clearGroup(e);const r=[];if(!t||t.length<2)return console.warn("ClientSideAspectRenderer: Not enough planet data with coordinates to render aspects."),this.renderedAspects=[],[];const i=this.calculateAspects(t,s);this.renderedAspects=i,console.log(`ClientSideAspectRenderer: Rendering ${i.length} aspects.`);const n=(s||this.config.aspectSettings||{}).types||{},o={};return t.forEach(e=>{o[e.name]={x:e.x,y:e.y}}),i.forEach(t=>{const s=o[t.planet1],i=o[t.planet2],a=n[t.type],l=!a||!1!==a.enabled,g=a?a.lineStyle:"solid";if(!l||"none"===g)return;if(!s||!i)return void console.warn(`ClientSideAspectRenderer: Could not find coordinates for aspect: ${t.planet1} ${t.type} ${t.planet2}`);const c=(t.planet1||"").toLowerCase().replace(/[^a-z0-9]/g,"-"),d=(t.planet2||"").toLowerCase().replace(/[^a-z0-9]/g,"-");let h="none";"dashed"===g?h="5, 5":"dotted"===g&&(h="1, 3");const C=this.svgUtils.createSVGElement("line",{x1:s.x,y1:s.y,x2:i.x,y2:i.y,class:`aspect-element aspect-line aspect-${t.type} aspect-planet-${c} aspect-planet-${d}`,stroke:t.color||"#888888","stroke-dasharray":h}),D=`${this.astrologyUtils.capitalizeFirstLetter(t.planet1)} ${t.type} ${this.astrologyUtils.capitalizeFirstLetter(t.planet2)} (${t.angleDiff.toFixed(1)}°, orb ${t.orb.toFixed(1)}°)`;this.svgUtils.addTooltip(C,D),e.appendChild(C),r.push(C),this._addAspectIcon(e,t,s,i,D)}),r}renderCrossAspects(e,t,s,r=null){if(!e)return console.error("ClientSideAspectRenderer.renderCrossAspects: parentGroup is null or undefined."),[];this.clearGroup(e);const i=[];if(!t||t.length<1||!s||s.length<1)return console.warn("ClientSideAspectRenderer: Not enough planet data to render cross-aspects."),[];const n=this.calculateCrossAspects(t,s,r);console.log(`ClientSideAspectRenderer: Rendering ${n.length} cross-aspects.`);const o=(r||this.config.synastryAspectSettings||{}).types||{},a={};t.forEach(e=>{a[e.name]={x:e.x,y:e.y}});const l={};return s.forEach(e=>{l[e.name]={x:e.x,y:e.y}}),n.forEach(t=>{const s=t.p1;t.p2;const r=this.config.radius.innermost||90,n=(s.position-90)*(Math.PI/180),a={x:this.centerX+r*Math.cos(n),y:this.centerY+r*Math.sin(n)},g=l[t.planet2],c=o[t.type],d=!c||!1!==c.enabled,h=c?c.lineStyle:"solid";if(!d||"none"===h)return;if(!a||!g)return void console.warn(`ClientSideAspectRenderer: Could not find coordinates for cross-aspect: ${t.planet1} ${t.type} ${t.planet2}`);const C=(t.planet1||"").toLowerCase().replace(/[^a-z0-9]/g,"-"),D=(t.planet2||"").toLowerCase().replace(/[^a-z0-9]/g,"-");let p="none";"dashed"===h?p="5, 5":"dotted"===h&&(p="1, 3");const F=this.svgUtils.createSVGElement("line",{x1:a.x,y1:a.y,x2:g.x,y2:g.y,class:`aspect-element aspect-line aspect-${t.type} aspect-cross aspect-planet-${C} aspect-planet-${D}`,stroke:t.color||"#888888","stroke-dasharray":p}),u=`${this.astrologyUtils.capitalizeFirstLetter(t.planet1)} ${t.type} ${this.astrologyUtils.capitalizeFirstLetter(t.planet2)} (${t.angleDiff.toFixed(1)}°, orb ${t.orb.toFixed(1)}°) [Synastry]`;this.svgUtils.addTooltip(F,u),e.appendChild(F),i.push(F),this._addAspectIcon(e,t,a,g,u)}),this._renderProjectionDots(e,t),i}_renderProjectionDots(e,t){const s=this.config.radius.innermost||90;t.forEach(t=>{const r=t.position,i=(r-90)*(Math.PI/180),n=this.centerX+s*Math.cos(i),o=this.centerY+s*Math.sin(i),a=this.svgUtils.createSVGElement("circle",{cx:n,cy:o,r:3,class:`projection-dot projection-${t.name}`,fill:"none",stroke:t.color||"#666666","stroke-width":"1"}),l=`${this.astrologyUtils.capitalizeFirstLetter(t.name)} projection (${r.toFixed(1)}°)`;this.svgUtils.addTooltip(a,l),e.appendChild(a)})}clearGroup(e){super.clearGroup(e)}getCurrentAspects(){return this.renderedAspects}_addAspectIcon(e,t,s,r,i){const n=(s.x+r.x)/2,o=(s.y+r.y)/2,a=n-this.centerX,l=o-this.centerY;if(Math.sqrt(a*a+l*l)<20)return;let g;g=this.iconProvider?this.iconProvider.getAspectIconPath(t.type):`${this.assetBasePath}/svg/zodiac/zodiac-aspect-${t.type}.svg`;const c=this.svgUtils.createSVGElement("image",{x:n-8,y:o-8,width:16,height:16,href:g,class:`aspect-element aspect-symbol aspect-${t.type}`});c.addEventListener("error",()=>{console.warn(`Failed to load aspect icon for ${t.type} from path: ${g}`);const s=this.defaultAspectDefinitions[t.type],r=s&&s.abbr?s.abbr:t.type.substring(0,3).toUpperCase();let a;this.iconProvider?a=this.iconProvider.createTextFallback(this.svgUtils,{x:n,y:o,size:"12px",color:t.color||"#888888",className:`aspect-element aspect-symbol aspect-${t.type}`},r):(a=this.svgUtils.createSVGElement("text",{x:n,y:o,"text-anchor":"middle","dominant-baseline":"middle","font-size":"12px","font-weight":"bold",class:`aspect-element aspect-symbol aspect-${t.type}`,fill:t.color||"#888888"}),a.textContent=r),this.svgUtils.addTooltip(a,i),e.appendChild(a)}),this.svgUtils.addTooltip(c,i),e.appendChild(c)}}class f{constructor(e,s){this.config=e,this.svgNS=s,this.svgUtils=t.getSvgUtils(),this.iconProvider=t.getIconProvider(),this.iconProvider||console.error("RendererFactory: IconProvider not available. Icons will not render correctly.")}createZodiacRenderer(e={}){return new c({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...e})}createHouseRenderer(e={}){return new d({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...e})}createPlanetRenderer(e={}){const t=new C({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,assetBasePath:e.assetBasePath||this.config.assets?.basePath,...e}),s=new p({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,symbolRenderer:t,assetBasePath:e.assetBasePath||this.config.assets?.basePath,...e}),r=new F({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,symbolRenderer:t,assetBasePath:e.assetBasePath||this.config.assets?.basePath,...e});return new u({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,primaryRenderer:s,secondaryRenderer:r,symbolRenderer:t,assetBasePath:e.assetBasePath||this.config.assets?.basePath,...e})}createAspectRenderer(e={}){return new E({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...e})}}class m{constructor(e){this.config=e.config,this.svgManager=e.svgManager,this.planets=e.planets||{},this.houses=e.houses||[],this.renderers={},this.svgManager&&this.svgManager.getSVG()&&this._initializeRenderers()}_initializeRenderers(){this.rendererFactory=new f(this.config,this.svgManager.svgNS),this.renderers.zodiac=this.rendererFactory.createZodiacRenderer({assetBasePath:this.config.assets.basePath});const e=this.config.getHouseCusps(),t=e&&e.length>0?e:this.houses;this.renderers.house=this.rendererFactory.createHouseRenderer({houseData:t}),this.renderers.planet=this.rendererFactory.createPlanetRenderer({assetBasePath:this.config.assets.basePath}),this.renderers.aspect=this.rendererFactory.createAspectRenderer({assetBasePath:this.config.assets.basePath})}updatePlanets(e){this.planets=e}updateHouses(e){this.houses=e,this.renderers.house&&(this.renderers.house.houseData=this.houses)}renderAll(){if(!this.svgManager.getSVG())return;Object.values(this.svgManager.getAllGroups()).forEach(e=>{e.innerHTML=""}),this.renderZodiac(),this.renderHouses();const e=this.renderPlanets();this.renderAspects(e),console.log("RenderingCoordinator: Chart rendered")}renderZodiac(){return!(!this.config.zodiacSettings.enabled||!this.renderers.zodiac)&&(this.renderers.zodiac.render(this.svgManager.getGroup("zodiac")),!0)}renderHouses(){if(!this.config.houseSettings.enabled||!this.renderers.house)return!1;const e=this.svgManager.getGroup("houses"),t=this.svgManager.getGroup("houseDivisions"),s=this.config.getHouseCusps();return s&&s.length>0&&(this.renderers.house.houseData=s),this.renderers.house.renderDivisions(t,this.config.houseSettings.rotationAngle),this.renderers.house.renderNumbers(e,this.config.houseSettings.rotationAngle),!0}renderPlanets(){if(!this.config.planetSettings.enabled||!this.renderers.planet)return[];const e=!1!==this.config.planetSettings.primaryEnabled,t=!1!==this.config.planetSettings.secondaryEnabled,s=this.renderers.planet.renderAllPlanetTypes({svgManager:this.svgManager,planetsData:this.planets,config:this.config,primaryEnabled:e,secondaryEnabled:t});return console.log(`RenderingCoordinator: Rendered ${s.primary.length} primary planets and ${s.secondary.length} secondary planets`),s.primary}renderAspects(e){return!(!this.config.aspectSettings.enabled||!this.renderers.aspect)&&(this.renderers.aspect.render(this.svgManager.getGroup("aspects"),e),!0)}}class k{constructor(e){this.config=e.config,this.svgManager=e.svgManager}updateConfig(e){return this.config.mergeConfig(e),e.aspectSettings&&this.config.updateAspectSettings(e.aspectSettings),console.log("ChartStateManager: Updated configuration"),!0}togglePlanetVisibility(e,t){return this.config.togglePlanetVisibility(e,t),!0}toggleHousesVisibility(e){return this.config.toggleHousesVisibility(e),!0}toggleAspectsVisibility(e){return this.config.toggleAspectsVisibility(e),!0}setHouseRotation(e){return this.config.houseSettings.rotationAngle=e,!0}setHouseSystem(e){return this.config.setHouseSystem(e)}getAvailableHouseSystems(){return this.config.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.config.getHouseSystem()}togglePrimaryPlanets(e){if(this.config.togglePrimaryPlanetsVisibility(e),this.svgManager){const t=this.svgManager.getGroup("primaryPlanets");t&&(t.style.display=e?"block":"none")}return console.log("ChartStateManager: Primary planets "+(e?"enabled":"disabled")),!0}toggleSecondaryPlanets(e){if(this.config.toggleSecondaryPlanetsVisibility(e),this.svgManager){const t=this.svgManager.getGroup("secondaryPlanets");t&&(t.style.display=e?"block":"none");const s=document.querySelector(".chart-innermost-circle");s&&(s.style.display=e?"block":"none")}return console.log("ChartStateManager: Secondary planets "+(e?"enabled":"disabled")),!0}}class y{constructor(e){if(!e||!e.container)throw new Error("ChartManager: Container element or selector is required");if(this.options=e,this.container="string"==typeof e.container?document.querySelector(e.container):e.container,!this.container)throw new Error(`ChartManager: Container not found: ${e.container}`);this.config=new n(e.config||{}),this.planets=e.planets||{},this.houses=e.houses||[],e.aspectSettings&&this.config.updateAspectSettings(e.aspectSettings),t.initializeServices();const s=t.getSvgUtils();this.svgManager=new a({svgUtils:s}),this.renderingCoordinator=new m({config:this.config,svgManager:this.svgManager,planets:this.planets,houses:this.houses}),this.stateManager=new k({config:this.config,svgManager:this.svgManager}),console.log("ChartManager: Initialized")}_initialize(){const e={width:this.config.svg.width,height:this.config.svg.height,viewBox:this.config.svg.viewBox};this.svgManager.initialize(this.container,e),this.svgManager.createStandardGroups()}render(){return this.svgManager.getSVG()||this._initialize(),this.renderingCoordinator.renderAll(),console.log("ChartManager: Chart rendered"),this}update(e){return e.planets&&(this.planets=e.planets,this.renderingCoordinator.updatePlanets(this.planets)),e.houses&&(this.houses=e.houses,this.renderingCoordinator.updateHouses(this.houses)),e.config&&this.stateManager.updateConfig(e.config),this.render(),this}togglePlanet(e,t){return this.stateManager.togglePlanetVisibility(e,t),this.render(),this}toggleHouses(e){return this.stateManager.toggleHousesVisibility(e),this.render(),this}toggleAspects(e){return this.stateManager.toggleAspectsVisibility(e),this.render(),this}setHouseRotation(e){return this.stateManager.setHouseRotation(e),this.render(),this}destroy(){this.svgManager.getSVG()&&this.svgManager.getSVG().remove(),this.renderingCoordinator=null,this.stateManager=null,this.planets={},this.houses=[],console.log("ChartManager: Destroyed")}updateData(e){return e.planets&&("object"!=typeof e.planets||Array.isArray(e.planets)?console.warn("ChartManager.updateData: Invalid planets data format. Expected object."):(this.planets={...this.planets,...e.planets},this.renderingCoordinator.updatePlanets(this.planets),console.log("ChartManager: Updated planets data."))),e.houses&&(Array.isArray(e.houses)?(this.houses=e.houses,this.renderingCoordinator.updateHouses(this.houses),console.log("ChartManager: Updated houses data.")):console.warn("ChartManager.updateData: Invalid houses data format. Expected array.")),this.render(),this}updateConfig(e){return this.stateManager.updateConfig(e),console.log("ChartManager: Updated configuration."),this.render(),this}setHouseSystem(e){return this.stateManager.setHouseSystem(e),this.render(),this}getAvailableHouseSystems(){return this.stateManager.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.stateManager.getCurrentHouseSystem()}togglePrimaryPlanets(e){return this.stateManager.togglePrimaryPlanets(e),this.render(),this}toggleSecondaryPlanets(e){return this.stateManager.toggleSecondaryPlanets(e),this.render(),this}}class v{constructor(e){if(!e||!e.container)throw new Error("NocturnaWheel: Container element or selector is required");if(this.options=e,this.container="string"==typeof e.container?document.querySelector(e.container):e.container,!this.container)throw new Error(`NocturnaWheel: Container not found: ${e.container}`);this.config=new n(e.config||{}),this.planets=e.planets||{},this.secondaryPlanets=e.secondaryPlanets||{},this.houses=e.houses||[],this.houses.length>0&&this.houses[0]&&"number"==typeof this.houses[0].lon&&(console.log(`NocturnaWheel: Auto-rotating wheel to Ascendant at ${this.houses[0].lon}°`),this.config.houseSettings.rotationAngle=this.houses[0].lon),e.aspectSettings&&this.config.updateAspectSettings(e.aspectSettings),e.primaryAspectSettings&&this.config.updatePrimaryAspectSettings(e.primaryAspectSettings),e.secondaryAspectSettings&&this.config.updateSecondaryAspectSettings(e.secondaryAspectSettings),e.synastryAspectSettings&&this.config.updateSynastryAspectSettings(e.synastryAspectSettings),t.initializeServices();const s=t.getSvgUtils();this.svgManager=new a({svgUtils:s}),this.renderers={},console.log("NocturnaWheel: Initialized")}_initialize(){const e={width:this.config.svg.width,height:this.config.svg.height,viewBox:this.config.svg.viewBox};this.svgManager.initialize(this.container,e),this.svgManager.createStandardGroups(),this._initializeRenderers()}_initializeRenderers(){this.rendererFactory=new f(this.config,this.svgManager.svgNS),this.renderers.zodiac=this.rendererFactory.createZodiacRenderer({assetBasePath:this.config.assets.basePath});const e=this.config.getHouseCusps(),t=e&&e.length>0?e:this.houses;this.renderers.house=this.rendererFactory.createHouseRenderer({houseData:t}),this.renderers.planet=this.rendererFactory.createPlanetRenderer({assetBasePath:this.config.assets.basePath}),this.renderers.aspect=this.rendererFactory.createAspectRenderer({assetBasePath:this.config.assets.basePath})}render(){if(this.svgManager.getSVG()||this._initialize(),Object.values(this.svgManager.getAllGroups()).forEach(e=>{e.innerHTML=""}),this.config.zodiacSettings.enabled&&this.renderers.zodiac.render(this.svgManager.getGroup("zodiac")),this.config.houseSettings.enabled){const e=this.svgManager.getGroup("houses"),t=this.svgManager.getGroup("houseDivisions"),s=this.config.getHouseCusps();s&&s.length>0&&(this.renderers.house.houseData=s),this.renderers.house.renderDivisions(t,this.config.houseSettings.rotationAngle),this.renderers.house.renderNumbers(e,this.config.houseSettings.rotationAngle)}let e=[],t=[];if(this.config.planetSettings.enabled){const s=!1!==this.config.planetSettings.primaryEnabled,r=!1!==this.config.planetSettings.secondaryEnabled;if(s&&Object.keys(this.planets).length>0){const t=this.svgManager.getGroup("primaryPlanets"),s=Object.entries(this.planets).filter(([e,t])=>!1!==this.config.planetSettings.visible?.[e]).map(([e,t])=>({name:e,position:t.lon,color:t.color||"#000000",retrograde:!!t.retrograde}));e=this.renderers.planet.primaryRenderer.render(t,s,0,{config:this.config})}if(r&&Object.keys(this.secondaryPlanets).length>0){const e=this.svgManager.getGroup("secondaryPlanets"),s=Object.entries(this.secondaryPlanets).filter(([e,t])=>!1!==this.config.planetSettings.visible?.[e]).map(([e,t])=>({name:e,position:t.lon,color:t.color||"#000000",retrograde:!!t.retrograde}));t=this.renderers.planet.secondaryRenderer.render(e,s,0,{config:this.config})}}if(this.config.primaryAspectSettings.enabled&&e.length>=2){const t=this.svgManager.getGroup("primaryAspects");this.renderers.aspect.render(t,e,this.config.primaryAspectSettings)}if(this.config.secondaryAspectSettings.enabled&&t.length>=2){const e=this.svgManager.getGroup("secondaryAspects");this.renderers.aspect.render(e,t,this.config.secondaryAspectSettings)}if(this.config.synastryAspectSettings.enabled&&e.length>=1&&t.length>=1){const s=this.svgManager.getGroup("synastryAspects");this.renderers.aspect.renderCrossAspects(s,e,t,this.config.synastryAspectSettings)}return this}update(e){return e.planets&&(this.planets=e.planets),e.houses&&(this.houses=e.houses,this.renderers.house&&(this.renderers.house.houseData=this.houses)),e.config&&this.config.mergeConfig(e.config),this.render(),this}togglePlanet(e,t){return this.config.togglePlanetVisibility(e,t),this.render(),this}toggleHouses(e){return this.config.toggleHousesVisibility(e),this.render(),this}toggleAspects(e){return this.config.toggleAspectsVisibility(e),this.render(),this}togglePrimaryAspects(e){return this.config.togglePrimaryAspectsVisibility(e),this.render(),this}toggleSecondaryAspects(e){return this.config.toggleSecondaryAspectsVisibility(e),this.render(),this}toggleSynastryAspects(e){return this.config.toggleSynastryAspectsVisibility(e),this.render(),this}setHouseRotation(e){return this.config.houseSettings.rotationAngle=e,this.render(),this}destroy(){this.svgManager.getSVG()&&this.svgManager.getSVG().remove(),this.renderers={},this.planets={},this.houses=[],console.log("NocturnaWheel: Destroyed")}updateData(e){if(e.planets)if("object"!=typeof e.planets||Array.isArray(e.planets))console.warn("NocturnaWheel.updateData: Invalid planets data format. Expected object.");else{for(const t in e.planets)this.planets[t]?this.planets[t]={...this.planets[t],...e.planets[t]}:this.planets[t]=e.planets[t];Object.keys(this.planets).forEach(e=>{})}if(e.secondaryPlanets)if("object"!=typeof e.secondaryPlanets||Array.isArray(e.secondaryPlanets))console.warn("NocturnaWheel.updateData: Invalid secondaryPlanets data format. Expected object.");else for(const t in e.secondaryPlanets)this.secondaryPlanets[t]?this.secondaryPlanets[t]={...this.secondaryPlanets[t],...e.secondaryPlanets[t]}:this.secondaryPlanets[t]=e.secondaryPlanets[t];return e.houses&&(Array.isArray(e.houses)?(this.houses=e.houses,this.renderers.house&&(this.renderers.house.houseData=this.houses)):console.warn("NocturnaWheel.updateData: Invalid houses data format. Expected array.")),this.render(),this}updateConfig(e){return this.config.mergeConfig(e),e.aspectSettings&&this.config.updateAspectSettings(e.aspectSettings),this.render(),this}setHouseSystem(e){return this.config.setHouseSystem(e),this.render(),this}getAvailableHouseSystems(){return this.config.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.config.getHouseSystem()}togglePrimaryPlanets(e){this.config.togglePrimaryPlanetsVisibility(e);const t=this.svgManager.getGroup("primaryPlanets");return t&&(t.style.display=e?"block":"none"),this}toggleSecondaryPlanets(e){this.config.toggleSecondaryPlanetsVisibility(e);const t=this.svgManager.getGroup("secondaryPlanets");t&&(t.style.display=e?"block":"none");const s=document.querySelector(".chart-innermost-circle");return s&&(s.style.display=e?"block":"none"),this}}class w{constructor(e,t={}){this.wheelChart=e,this.chart=e.chart,this.options=t,this.svgUtils=new o,console.log("ChartRenderer: Initialized with chart",this.chart)}renderInnerElements(){if(!this.chart||!this.chart.svgManager)return void console.error("ChartRenderer: Invalid chart or missing svgManager");if(!this.chart.svgManager.getSVG())return void console.error("ChartRenderer: SVG not found");const e=this.chart.svgManager.getGroup("zodiac");if(!e)return void console.error("ChartRenderer: Zodiac group not found");const t=e.querySelector(".chart-innermost-circle");t&&e.removeChild(t);const s=this.chart.config.svg.center.x,r=this.chart.config.svg.center.y,i=this.chart.config.radius.innermost;!1!==this.chart.config.planetSettings.secondaryEnabled&&this.drawInnermostCircle(e,this.svgUtils,s,r,i),console.log("ChartRenderer: Innermost circle rendered (if enabled). Planet rendering is now handled by NocturnaWheel.")}drawInnermostCircle(e,t,s,r,i){const n=t.createSVGElement("circle",{cx:s,cy:r,r:i,fill:"transparent",stroke:"#999","stroke-width":"0.5",class:"zodiac-element chart-innermost-circle"});e.appendChild(n)}renderPlanets(e,t,s,r){return console.warn("ChartRenderer: renderPlanets is deprecated. Planet rendering is now handled by NocturnaWheel."),[]}drawPlanetsAndIcons(e,t,s,r,i){return console.warn("ChartRenderer: drawPlanetsAndIcons is deprecated, use renderPlanets instead"),this.renderPlanets(t,s,r,i)}drawPlanetDot(e,t,s,r,i,n){console.warn("ChartRenderer: drawPlanetDot is deprecated")}drawPlanetIcon(e,t,s,r,i){console.warn("ChartRenderer: drawPlanetIcon is deprecated")}drawConnector(e,t,s,r,i,n,o,a){console.warn("ChartRenderer: drawConnector is deprecated")}}class A{constructor(e,t=null){if(!e||!e.container)throw new Error("WheelChart: Container element or selector is required");this.options=e;const s=e.config||{};if("function"==typeof t?(console.log("WheelChart: Using provided chart factory function"),this.chart=t(e)):(console.log("WheelChart: Using default chart creation"),this.chart=new v({...e,config:s})),!this.chart||"function"!=typeof this.chart.render)throw new Error("WheelChart: Invalid chart instance created. Missing required methods.");this.renderer=new w(this,e),console.log("WheelChart: Initialized")}render(){return this.chart.render(),setTimeout(()=>{try{console.log("WheelChart: Rendering inner elements"),this.renderer.renderInnerElements()}catch(e){console.error("WheelChart: Error rendering inner elements:",e)}},0),console.log("WheelChart: Chart rendered with inner circle"),this}update(e){return this.chart.update(e),this.renderer.renderInnerElements(),this}_delegateToChart(e,...t){if("function"==typeof this.chart[e])return this.chart[e](...t);throw new Error(`WheelChart: Method ${e} not found in NocturnaWheel`)}_delegateAndRedraw(e,...t){const s=this._delegateToChart(e,...t);return this.renderer.renderInnerElements(),s}togglePlanet(e,t){return this._delegateAndRedraw("togglePlanet",e,t)}toggleHouses(e){return this._delegateAndRedraw("toggleHouses",e)}toggleAspects(e){return this._delegateAndRedraw("toggleAspects",e)}togglePrimaryAspects(e){return this._delegateAndRedraw("togglePrimaryAspects",e)}toggleSecondaryAspects(e){return this._delegateAndRedraw("toggleSecondaryAspects",e)}toggleSynastryAspects(e){return this._delegateAndRedraw("toggleSynastryAspects",e)}togglePrimaryPlanets(e){return this._delegateAndRedraw("togglePrimaryPlanets",e)}toggleSecondaryPlanets(e){const t=this._delegateToChart("toggleSecondaryPlanets",e);try{const t="string"==typeof this.options.container?document.querySelector(this.options.container):this.options.container;if(t){const s=t.querySelector(".chart-innermost-circle");s?(console.log("WheelChart: Setting innermost circle display to "+(e?"block":"none")),s.style.display=e?"block":"none"):console.log("WheelChart: No innermost circle found to toggle visibility")}}catch(e){console.error("WheelChart: Error toggling innermost circle visibility:",e)}return this.renderer.renderInnerElements(),t}setHouseRotation(e){return this._delegateAndRedraw("setHouseRotation",e)}destroy(){return this._delegateToChart("destroy")}setHouseSystem(e){return this._delegateAndRedraw("setHouseSystem",e)}get config(){return this.chart.config}updateData(e){return this._delegateAndRedraw("updateData",e)}getCurrentHouseSystem(){return this.chart.getCurrentHouseSystem()}}const b=new s({useInline:!0,basePath:"./assets/svg/zodiac/"});r&&Object.keys(r.planets||{}).length>0?(b.setInlineData(r),console.log("IconProvider: Initialized with inline icons -","Planets:",Object.keys(r.planets).length,"Signs:",Object.keys(r.signs).length,"Aspects:",Object.keys(r.aspects).length)):console.warn("IconProvider: IconData not loaded, will use external paths"),t.register("iconProvider",b),t.initializeServices();var x={ChartManager:y,NocturnaWheel:v,WheelChart:A,ChartConfig:n,ServiceRegistry:t,SvgUtils:o,AstrologyUtils:g,IconProvider:s,IconData:r};e.AstrologyUtils=g,e.ChartConfig=n,e.ChartManager=y,e.IconData=r,e.IconProvider=s,e.NocturnaWheel=v,e.ServiceRegistry=t,e.SvgUtils=o,e.VERSION="0.2.0",e.WheelChart=A,e.default=x,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).NocturnaWheel={})}(this,function(t){"use strict";class e{static#t=new Map;static register(t,e){this.#t.set(t,e)}static get(t){return this.#t.get(t)}static has(t){return this.#t.has(t)}static clear(){this.#t.clear()}static getSvgUtils(){if(!this.has("svgUtils")){const t={svgNS:"http://www.w3.org/2000/svg",createSVGElement(t,e={}){const n=document.createElementNS(this.svgNS,t);for(const[t,i]of Object.entries(e))n.setAttribute(t,i);return n},addTooltip(t,e){const n=document.createElementNS(this.svgNS,"title");return n.textContent=e,t.appendChild(n),t},pointOnCircle(t,e,n,i){const s=(i-90)*(Math.PI/180);return{x:t+n*Math.cos(s),y:e+n*Math.sin(s)}}};this.register("svgUtils",t)}return this.get("svgUtils")}static getIconProvider(){return this.has("iconProvider")?this.get("iconProvider"):(console.warn("ServiceRegistry: IconProvider not registered. Icons may not work correctly."),console.warn("ServiceRegistry: This should be initialized in main.js with inline IconData."),null)}static initializeServices(t={}){this.getSvgUtils(),console.log("ServiceRegistry: Core services initialized")}}class n{constructor(t={}){"string"==typeof t&&(t={basePath:t,useInline:!1}),this.basePath=t.basePath||"./assets/svg/zodiac/",this.useInline=!1!==t.useInline,this.customIcons=t.customIcons||null,this.inlineData=null,this._warnedAboutMissingData=!1}_getInlineData(){return this.inlineData}setInlineData(t){this.inlineData=t,console.log("IconProvider.setInlineData(): Data loaded successfully","planets:",Object.keys(t?.planets||{}).length,"signs:",Object.keys(t?.signs||{}).length,"aspects:",Object.keys(t?.aspects||{}).length)}getPlanetIconPath(t){const e=t.toLowerCase();if(this.customIcons?.planets?.[e])return this.customIcons.planets[e];if(this.useInline){const t=this._getInlineData();if(t?.planets?.[e])return t.planets[e];this._warnedAboutMissingData||(this._warnedAboutMissingData=!0,t?t.planets||console.warn("IconProvider: Inline data missing 'planets' category"):console.warn("IconProvider: Inline data not loaded, falling back to external paths. Call setInlineData() to load inline icons."))}return`${this.basePath}zodiac-planet-${e}.svg`}getZodiacIconPath(t){const e=t.toLowerCase();if(this.customIcons?.signs?.[e])return this.customIcons.signs[e];if(this.useInline){const t=this._getInlineData();if(t?.signs?.[e])return t.signs[e]}return`${this.basePath}zodiac-sign-${e}.svg`}getAspectIconPath(t){const e=t.toLowerCase();if(this.customIcons?.aspects?.[e])return this.customIcons.aspects[e];if(this.useInline){const t=this._getInlineData();if(t?.aspects?.[e])return t.aspects[e]}return`${this.basePath}zodiac-aspect-${e}.svg`}createTextFallback(t,e,n){const{x:i,y:s,size:r="16px",color:a="#000000",className:l="icon-fallback"}=e,o=t.createSVGElement("text",{x:i,y:s,"text-anchor":"middle","dominant-baseline":"middle","font-size":r,class:l,fill:a});return o.textContent=n,o}}const i={planets:{},signs:{},aspects:{}};i.planets.jupiter="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--3%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20120%20169%20L%20120.41%2052%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--4%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2055.45%20117%20L%20114.55%20117%20L%20150%20117%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22kVkwGe1VFLANDFw4YKh--5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2049.17%2039.62%20C%2061.72%2037.13%2074.51%2042.25%2082.68%2053.02%20C%2090.85%2063.79%2093.13%2078.55%2088.66%2091.68%20C%2084.18%20104.81%2073.64%20114.29%2061.06%20116.51%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22zDjTfItpbO8d8TAwGvx0-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.ketu="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-6%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-8%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22fzDwOAeg_iJ89Dt6VeXd-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.lilith="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-1%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20139%20150%20L%2059%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-2%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2098.2%20117.1%20L%2099%20180%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22iy5LzPKV1b8-u4Rshwn2-3%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2073.37%2033.62%20C%2062.66%2050.93%2065.45%2073.12%2080.13%2087.41%20C%2094.81%20101.7%20117.6%20104.42%20135.38%2093.99%20C%20125.69%20109.66%20107.04%20117.86%2088.56%20114.57%20C%2070.07%20111.28%2055.61%2097.2%2052.23%2079.2%20C%2048.85%2061.21%2057.27%2043.05%2073.37%2033.62%20Z%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(225%2C92.12%2C75.74)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22skUIsOvDlGxpmukY0j3V-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.mars="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22201px%22%20height%3D%22201px%22%20viewBox%3D%22-0.5%20-0.5%20201%20201%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-2%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%2210%22%20height%3D%2210%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-3%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22115%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22dfX1GTXx0dsaOR7s5UN7-4%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20130%2085%20L%20155.97%2059.03%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20166.05%2048.95%20L%20159.33%2069.11%20L%20155.97%2059.03%20L%20145.89%2055.67%20Z%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22WfpUhmjnT6FgT6mvTSny-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.mercury="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22201px%22%20viewBox%3D%22-0.5%20-0.5%20200%20201%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-5%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2290%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20129.98%2025.18%20C%20130.36%2034.02%20124.63%2042.31%20115.07%2046.75%20C%20105.51%2051.19%2093.67%2051.07%2084.26%2046.43%20C%2074.85%2041.79%2069.39%2033.39%2070.05%2024.56%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20180%20L%20100%20130%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22P34d2Aacb0rAMBlJQ82S-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20160%20L%20140%20160%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22YspeTQYn8OWxfiwJ6-K5-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.moon="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%20%3Cpath%20d%3D%22M%20106.38%2031%20C%20133.61%2035.85%20154.8%2057.4%20159.18%2084.71%20C%20163.56%20112.02%20150.17%20139.12%20125.82%20152.23%20C%20101.46%20165.35%2071.47%20161.61%2051.08%20142.92%20Q%2059.25%20148.63%2089.31%20129.94%20Q%20119.38%20111.25%20119.38%2074.69%20Q%20119.38%2038.13%20108.81%2031.63%20Z%22%20fill%3D%22white%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fsvg%3E",i.planets.neptune="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20170%20L%20100%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20105.67%2072.59%20L%20100%2055.59%20L%2094.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-14%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20140%20L%2060%20140%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xklInLVkXW5TzGvFd8Wp-15%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2061.18%20Q%2060%20100%2080%20110%20Q%20100%20120%20120%20110%20Q%20140%20100%20140%2061.18%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%2063.67%2066.59%20L%2060%2055.59%20L%2056.33%2066.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20145.67%2072.59%20L%20140%2055.59%20L%20134.33%2072.59%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22zbcp-zu0BkE59QIL-Zbj-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.pluto="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22149%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20129%20L%20100.5%20110%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%2070.4%20C%20139.78%2092.49%20121.69%20110.22%2099.6%20110%20C%2077.51%20109.78%2059.78%2091.69%2060%2069.6%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222_PLy7GvWnqgv2neW7ed-12%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2270%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%227pAuGvqZmXAXuP9MepSf-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets["rahu-1"]="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-1%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-3%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-6%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-7%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-8%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-9%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-10%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-11%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-12%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-13%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-14%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-15%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-16%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-17%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-20%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-21%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-22%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-23%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-24%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-25%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-26%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-27%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-32%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-28%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-29%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-30%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-31%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-33%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-34%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-35%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-36%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-37%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-68%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-69%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-70%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-71%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-73%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-38%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-39%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-40%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-41%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-42%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-48%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-49%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-50%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-51%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-52%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-53%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-54%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-74%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-44%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-45%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-138%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-139%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-140%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-141%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-142%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-143%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-144%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-145%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-146%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-147%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-148%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-149%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-150%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-151%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-152%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-153%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-154%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-155%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-156%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-157%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-158%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-159%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-160%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-161%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-162%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-166%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-167%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-168%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-169%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-170%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-174%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-175%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-176%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-177%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-178%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-208%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-209%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-210%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-211%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-212%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-55%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-56%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-213%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-214%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-215%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-216%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-217%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-4%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-1%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-2%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-3%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-218%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-219%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-220%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-221%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-222%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-196%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-197%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-201%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-203%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-204%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-206%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-207%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-223%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-224%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-225%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-226%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-227%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-5%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-6%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cellipse%20cx%3D%22165%22%20cy%3D%22165%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20transform%3D%22rotate(-180%2C165%2C165)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-7%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cellipse%20cx%3D%2235%22%20cy%3D%22165%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20transform%3D%22rotate(-180%2C35%2C165)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-8%22%3E%3Cg%20transform%3D%22translate(0.5%2C0.5)%22%3E%3Cpath%20d%3D%22M%2055.61%20185.61%20Q%2065%20175%2065%20165%20Q%2065%20155%2045%20105%20Q%2025%2055%2045%2025%20Q%2065%20-5%20105%20-5%20Q%20145%20-5%20165%2025%20Q%20185%2055%20165%20105%20Q%20145%20155%20145%20165%20Q%20145%20175%20154.39%20185.61%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-228%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-229%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-230%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-231%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-232%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-265%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-266%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-233%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-234%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-235%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-236%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-237%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-238%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-239%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-240%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-241%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-242%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-294%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-295%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-243%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-244%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-245%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-246%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-247%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-298%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-299%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-300%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-58%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-59%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-57%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-63%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-64%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-66%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-248%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-249%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-254%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-256%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-257%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-258%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-259%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-260%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-261%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-262%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-263%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-264%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-292%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-267%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-268%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-269%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-270%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-271%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-272%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-273%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-274%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-277%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-278%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-279%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-281%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-282%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-283%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-284%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-291%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-286%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-287%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-288%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-290%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-302%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-303%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-304%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-305%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-306%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-362%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-307%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-308%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-309%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-310%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-311%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-312%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-313%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-314%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-315%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-316%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-363%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-317%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-318%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-319%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-320%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-321%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-322%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-323%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-324%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-325%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-326%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-364%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-365%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-366%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-327%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-328%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-329%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-330%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-331%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-332%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-333%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-334%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-335%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-336%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-367%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-368%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-337%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-338%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-339%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-340%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-341%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-342%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-343%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-344%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-345%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-346%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-371%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-372%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-373%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-347%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-348%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-349%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-350%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-351%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-357%22%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-358%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-359%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-360%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-361%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-6%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-7%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-9%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-10%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-11%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-12%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-13%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-22%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-23%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-24%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-20%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-21%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-14%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-15%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-16%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-17%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-18%22%2F%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-2%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-26%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-27%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-28%22%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-29%22%2F%3E%3Cg%20data-cell-id%3D%22KS9pV0ngr4uzh0Otbb3G-30%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-3%22%2F%3E%3Cg%20data-cell-id%3D%22cskn5mqhr9ZncGVoWKjj-4%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-1%22%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-2%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-3%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-4%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-5%22%2F%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-353%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-354%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-355%22%2F%3E%3Cg%20data-cell-id%3D%22ApFtk30SPmznxXabnnFi-356%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-15%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-22%22%2F%3E%3Cg%20data-cell-id%3D%22srBSQh4KOTasGSE8ft9g-23%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.rahu="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%20xmlns%3Abx%3D%22https%3A%2F%2Fboxy-svg.com%22%3E%20%3Cdefs%3E%20%3Cbx%3Aexport%3E%20%3Cbx%3Afile%20format%3D%22svg%22%20href%3D%22%23object-0%22%2F%3E%20%3C%2Fbx%3Aexport%3E%20%3C%2Fdefs%3E%20%3Cg%20style%3D%22%22%20transform%3D%22matrix(1%2C%200%2C%200%2C%20-1%2C%200%2C%20200.000003)%22%20id%3D%22object-0%22%3E%20%3Cg%20data-cell-id%3D%220%22%3E%20%3Cg%20data-cell-id%3D%221%22%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-1%22%3E%20%3Cg%2F%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-6%22%3E%20%3Cg%2F%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-7%22%3E%20%3Cg%3E%20%3Cellipse%20cx%3D%2265%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-8%22%3E%20%3Cg%3E%20%3Cellipse%20cx%3D%22135%22%20cy%3D%2265%22%20rx%3D%2215%22%20ry%3D%2215%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22nZi6tGyZIidbp-v6qjZQ-9%22%3E%20%3Cg%3E%20%3Cpath%20d%3D%22M%20124.39%2054.39%20Q%20120%2060%20120%2065%20Q%20120%2070%20130%2095%20Q%20140%20120%20130%20135%20Q%20120%20150%20100%20150%20Q%2080%20150%2070%20135%20Q%2060%20120%2070%2095%20Q%2080%2070%2080%2065%20Q%2080%2060%2075.61%2054.39%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3Cg%20data-cell-id%3D%22fzDwOAeg_iJ89Dt6VeXd-1%22%3E%20%3Cg%3E%20%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E",i.planets.saturn="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20139%20L%2090%2039%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2059%20L%20120%2059%20L%2090%2059%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22PGt55_aUy3Njtwruwuk4-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%20169%20Q%20138%20179%20129%20174%20Q%20120%20169%20129%20144%20Q%20138%20119%20134%20104%20Q%20130%2089%20110%2089%20Q%2090%2089%2090%20109%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%226yAxXstixJTfL81ozoQc-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22sU4-NP-8qgTjRoMx9Fv4-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.selena="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20140%20150%20L%2060%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2099.2%20117.1%20L%20100%20180%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jFIPWhlccuGsN_-w-8e2-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2073.37%2031.14%20C%2062.66%2048.46%2065.45%2070.65%2080.13%2084.94%20C%2094.81%2099.23%20117.6%20101.95%20135.38%2091.52%20C%20125.69%20107.19%20107.04%20115.39%2088.56%20112.1%20C%2070.07%20108.81%2055.61%2094.73%2052.23%2076.73%20C%2048.85%2058.74%2057.27%2040.58%2073.37%2031.14%20Z%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(225%2C92.12%2C73.26)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22B7BV3EczgGRAOl1qaG-U-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.sun="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-1%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2265%22%20ry%3D%2260%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22KMRcx8_Z6FSBlqI5tEZE-2%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22100%22%20rx%3D%2210%22%20ry%3D%2210%22%20fill%3D%22%23000000%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22adE6InmPBndy7Uo4bRgR-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.uranus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-4%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22149%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2080.91%2089.92%20L%20120.91%2089.92%20L%20100.91%2089.92%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20129%20L%20100%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2052.39%2051.12%20C%2066.57%2052.6%2078%2066.81%2079.77%2085.16%20C%2081.53%20103.5%2073.15%20120.94%2059.69%20126.91%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-Ga99g4WFrNk1u2N47Tz-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20141.64%20127.44%20C%20128.11%20122.27%20119.13%20105.39%20120.07%2086.87%20C%20121.01%2068.35%20131.61%2053.19%20145.55%2050.44%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22An7hOLSuI-_JKes7hUzt-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22XEAaU1rfczp1g1rg0gsK-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets.venus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-5%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%2279%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20180%20L%20100%20119%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2282gSs5GHCCOlAdsS7Y_n-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20150%20L%20140%20150%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22wT5vcnIU1864jlhb-1KB-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.aquarius="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20161.5%2090%20Q%20151.5%2070%20136.5%2080%20Q%20121.5%2090%20116.5%2075%20Q%20111.5%2060%2096%2075%20Q%2080.5%2090%2074.5%2075%20Q%2068.5%2060%2041.5%2090%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22pYeec5tt2UMA0w_zhV47-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20158.5%20120%20Q%20148.5%20100%20133.5%20110%20Q%20118.5%20120%20113.5%20105%20Q%20108.5%2090%2093%20105%20Q%2077.5%20120%2071.5%20105%20Q%2065.5%2090%2038.5%20120%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22fXDPfsLTpfVXU3cFdg-k-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.aries="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22blLjc4XcNJx5ieieuYer-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22G6Vla6dTyV-LotFg2Pob-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20101%20160%20Q%20100%20100%2095%2075%20Q%2090%2050%2070%2045%20Q%2050%2040%2030%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22G6Vla6dTyV-LotFg2Pob-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20101%20160%20Q%20100%20110%20105%2080%20Q%20110%2050%20130%2045%20Q%20150%2040%20170%2060%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vkXA4BL2LVM82eNTlpCW-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.cancer="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-17%22%3E%3Cg%3E%3Cellipse%20cx%3D%22131%22%20cy%3D%22106.62%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-18%22%3E%3Cg%3E%3Cellipse%20cx%3D%2272.5%22%20cy%3D%2275.62%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-19%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.18%20159.61%20C%2081.71%20156.42%2070.06%20134.3%2070%20108%20C%2069.94%2081.71%2081.49%2059.45%2096.95%2056.06%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100.94%2C107.81)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22F9CagPl8JsqmlfRdU_IR-20%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.18%20125.49%20C%2081.71%20122.39%2070.06%20100.94%2070%2075.43%20C%2069.94%2049.93%2081.49%2028.33%2096.95%2025.04%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C100.94%2C75.25)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-nztp9pWxBHcmyZ08QR4-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.capricorn="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-8%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-9%22%3E%3Cg%3E%3Cellipse%20cx%3D%22135%22%20cy%3D%22118.25%22%20rx%3D%2215%22%20ry%3D%2216.5%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20120%20112.75%20Q%20120%20130.35%20120%20110.55%20Q%20120%2090.75%20120%2068.75%20Q%20120%2046.75%20107.5%2041.25%20Q%2095%2035.75%2085%2079.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2085%2079.75%20Q%2080%2035.75%2060%2035.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22FCZELrIV3grwh7Eqi1pe-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20100%20145.75%20Q%20110%20145.75%20115%20134.75%20Q%20120%20123.75%20120%20118.25%20Q%20120%20112.75%20124.23%20106.76%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22BpOhtRGwmzoIQpnF7pUJ-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.gemini="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-37%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2097.31%2096.94%20C%2081.84%2093.35%2070.19%2068.48%2070.13%2038.91%20C%2070.07%209.34%2081.62%20-15.7%2097.08%20-19.51%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C101.07%2C38.69)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-38%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2095.68%20223.38%20C%2080.21%20219.76%2068.56%20194.71%2068.5%20164.91%20C%2068.44%20135.12%2079.99%20109.9%2095.45%20106.06%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C99.44%2C164.69)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-39%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2079.93%20136.79%20L%2079.47%2067.65%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22vdI9q3M43HH2vRBbEY2U-40%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20119.66%20135.3%20L%20119.73%2067.65%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22jCEtXZTTY2g2Gjzo-qMJ-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.leo="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-6%22%3E%3Cg%3E%3Cellipse%20cx%3D%2272.5%22%20cy%3D%22100%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%225dCEg9FfoHjf9y-4Zlng-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20160%20140%20Q%20150%20150%20137.5%20150%20Q%20125%20150%20122.5%20135%20Q%20120%20120%20130%2080%20Q%20140%2040%20110%2040%20Q%2080%2040%2095%20100%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.libra="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-5%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2040%20136.78%20L%20160%20136.78%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2040%20108.6%20L%2084.04%20109.09%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20116.38%20109.09%20L%20160%20108.6%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22DDuQtP-VmcjbW8JG7HV6-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20125.48%2098.82%20C%20119.06%20110.71%20105.66%20116.67%2092.85%20113.33%20C%2080.03%20109.99%2071%2098.19%2070.85%2084.59%20C%2070.7%2070.98%2079.47%2058.98%2092.21%2055.34%20C%20104.95%2051.71%20118.48%2057.35%20125.16%2069.09%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(90%2C100%2C84.25)%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22Vif0qCJVHSTV2Csg5cyl-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.pisces="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2057.79%2045.18%20C%2074.33%2047.25%2087.67%2067.3%2089.73%2093.17%20C%2091.79%20119.04%2082.01%20143.63%2066.3%20152.05%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20135.25%20152.82%20C%20119.46%20145.63%20108.98%20122.12%20110.08%2096.34%20C%20111.17%2070.55%20123.54%2049.44%20139.81%2045.61%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22ufDh7fpc4K_yNdC7vCHW-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2055.01%2099.91%20L%20144.99%2099.86%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222UPBxVXPtNNG9HLaSRjR-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.sagittarius="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2059%20127.75%20L%20138%2048.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%2086.75%20L%20100%20126.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2099%2047.75%20L%20141%2047.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bNOf38aV_gRLlzT1H2mC-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20139%2087.75%20L%20139%2045.75%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bTJtWIvd38qZUwxlYIHf-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.scorpio="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20143%20Q%2060%2080%2060%2060%20Q%2060%2040%2060%2035%20Q%2060%2030%2050%2020%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20143%20Q%2090%2080%2090%2060%20Q%2090%2040%2080%2030.75%20Q%2070%2021.5%2060%2041.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xiVi_kujB_bSvCnK_Mbj-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20152.09%20133.66%20Q%20120%20165.75%20120%20122.88%20Q%20120%2080%20120%2060%20Q%20120%2040%20110%2030.75%20Q%20100%2021.5%2089%2044.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3Cpath%20d%3D%22M%20150.86%20140.07%20L%20156.05%20129.7%20L%20145.68%20134.89%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22all%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2278SzmRzQp-I1tTwLOdSe-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.taurus="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22-6Y1EZ5wd5mKBmpr7pZl-13%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%2050%20Q%20130%2050%20125%2060%20Q%20120%2070%20115%2075%20Q%20110%2080%20105%2080%20Q%20100%2080%2095%2080%20Q%2090%2080%2085%2075%20Q%2080%2070%2075%2060%20Q%2070%2050%2050%2050%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22-6Y1EZ5wd5mKBmpr7pZl-14%22%3E%3Cg%3E%3Cellipse%20cx%3D%22100%22%20cy%3D%22120%22%20rx%3D%2240%22%20ry%3D%2240%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22UmnKpyvcFwhx0IRVoUol-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.signs.virgo="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-8%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-9%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20143%20Q%2060%2080%2060%2060%20Q%2060%2040%2060%2035%20Q%2060%2030%2050%2020%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-10%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2090%20143%20Q%2090%2080%2090%2060%20Q%2090%2040%2080%2030.75%20Q%2070%2021.5%2060%2041.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-11%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20150%20171.5%20Q%20120%20141.5%20120%20110.75%20Q%20120%2080%20120%2060%20Q%20120%2040%20110%2030.75%20Q%20100%2021.5%2089%2044.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22NISO0k0YKw3UAR4flL04-12%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20110%20161.5%20Q%20130%20141.5%20135%20131.5%20Q%20140%20121.5%20140%20106.5%20Q%20140%2091.5%20135%2086.5%20Q%20130%2081.5%20120%20101.5%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(255%2C%20255%2C%20255))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%2234pg9PiOzKNUfzoN4yK9-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.conjunction="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22gGTkRmc-nT83Q299-C-k-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%20108.47%2092.68%20L%20128.5%2072%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22a2c2rf50iBX5W4IijcMr-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%2294%22%20cy%3D%22108%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23000000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%200%2C%200)%2C%20rgb(237%2C%20237%2C%20237))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.opposition="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-6%22%3E%3Cg%3E%3Cellipse%20cx%3D%2275%22%20cy%3D%22125%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-7%22%3E%3Cg%3E%3Cellipse%20cx%3D%22125%22%20cy%3D%2275%22%20rx%3D%2222.5%22%20ry%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22xVQDPyRT5oTKQHZ23-IM-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2089.71%20109.86%20L%20109.27%2089.3%22%20fill%3D%22none%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22EZUqS9dHCJ6ET5sfbTn7-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.quincunx="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.semisextile="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.semisquare="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.sesquisquare="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.sextile="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2060%20100%20L%20140%20100%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-7%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2070%20L%20130%20130%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%222H47zmM80uQNvDx8u0mK-8%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%20130%20L%20130%2070%22%20fill%3D%22none%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20pointer-events%3D%22stroke%22%20style%3D%22stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%221QpNWf1EhDtsYVpd6CiN-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.square="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22p0KHWF2mTDFWD3EQTWJK-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22p0KHWF2mTDFWD3EQTWJK-6%22%3E%3Cg%3E%3Crect%20x%3D%2270%22%20y%3D%2270%22%20width%3D%2260%22%20height%3D%2260%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23990000%22%20stroke-width%3D%225%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(153%2C%200%2C%200)%2C%20rgb(255%2C%20181%2C%20181))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22Uxbd23ua_aHTV4gALoXr-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.aspects.trine="data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%20%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%20%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22background%3A%20transparent%3B%20background-color%3A%20transparent%3B%20color-scheme%3A%20light%20dark%3B%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20version%3D%221.1%22%20width%3D%22200px%22%20height%3D%22200px%22%20viewBox%3D%22-0.5%20-0.5%20200%20200%22%3E%3Cdefs%2F%3E%3Cg%3E%3Cg%20data-cell-id%3D%220%22%3E%3Cg%20data-cell-id%3D%221%22%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-1%22%3E%3Cg%2F%3E%3Cg%20data-cell-id%3D%22vdzi6F08xrY5ULLa3aSw-6%22%3E%3Cg%3E%3Cpath%20d%3D%22M%2070%2065%20L%20130%20100%20L%2070%20135%20Z%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23009900%22%20stroke-width%3D%225%22%20stroke-miterlimit%3D%2210%22%20transform%3D%22rotate(-90%2C100%2C100)%22%20pointer-events%3D%22all%22%20style%3D%22fill%3A%20light-dark(%23ffffff%2C%20var(--ge-dark-color%2C%20%23121212))%3B%20stroke%3A%20light-dark(rgb(0%2C%20153%2C%200)%2C%20rgb(50%2C%20181%2C%2050))%3B%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20data-cell-id%3D%22bWTqftR76DX4mWTuiE5u-1%22%3E%3Cg%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22200%22%20height%3D%22200%22%20fill%3D%22none%22%20stroke%3D%22none%22%20pointer-events%3D%22all%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E",i.planets,i.signs,i.aspects;class s{constructor(){this.houseSystems={Placidus:this.calculatePlacidus.bind(this),Koch:this.calculateKoch.bind(this),Equal:this.calculateEqual.bind(this),"Whole Sign":this.calculateWholeSign.bind(this),Porphyry:this.calculatePorphyry.bind(this),Regiomontanus:this.calculateRegiomontanus.bind(this),Campanus:this.calculateCampanus.bind(this),Morinus:this.calculateMorinus.bind(this),Topocentric:this.calculateTopocentric.bind(this)}}getAvailableHouseSystems(){return Object.keys(this.houseSystems)}calculateHouseCusps(t,e="Placidus",n={}){if("number"!=typeof t||t<0||t>=360)throw new Error("Ascendant must be a number between 0 and 360");if(!this.houseSystems[e])throw new Error(`House system "${e}" is not supported`);return this.houseSystems[e](t,n)}calculatePlacidus(t,{latitude:e,mc:n}){if("number"!=typeof e||"number"!=typeof n)throw new Error("Placidus house system requires latitude and mc");if(Math.abs(e)>=66.5)return this.calculatePorphyry(t,{mc:n});const i=23.4367,s=new Array(12);s[0]=t,s[9]=n,s[6]=this.normalizeAngle(t+180),s[3]=this.normalizeAngle(n+180),this.degreesToRadians(e),this.degreesToRadians(i),this.degreesToRadians(n);try{s[10]=this.calculatePlacidusIntermediateHouse(n,t,1/3,e,i),s[11]=this.calculatePlacidusIntermediateHouse(n,t,2/3,e,i),s[1]=this.calculatePlacidusIntermediateHouse(t,s[3],1/3,e,i),s[2]=this.calculatePlacidusIntermediateHouse(t,s[3],2/3,e,i),s[4]=this.calculatePlacidusIntermediateHouse(s[3],s[6],1/3,e,i),s[5]=this.calculatePlacidusIntermediateHouse(s[3],s[6],2/3,e,i),s[7]=this.calculatePlacidusIntermediateHouse(s[6],s[9],1/3,e,i),s[8]=this.calculatePlacidusIntermediateHouse(s[6],s[9],2/3,e,i)}catch(e){return console.warn(`Placidus calculation failed: ${e.message}. Falling back to Porphyry.`),this.calculatePorphyry(t,{mc:n})}return s}calculatePlacidusIntermediateHouse(t,e,n,i,s){const r=this.calculateArc(t,e);return this.normalizeAngle(t+r*n)}calculateKoch(t,{latitude:e,mc:n}){if("number"!=typeof e||"number"!=typeof n)throw new Error("Koch house system requires latitude and mc");const i=new Array(12);i[0]=t,i[9]=n,i[6]=this.normalizeAngle(t+180),i[3]=this.normalizeAngle(n+180);const s=this.calculateArc(i[9],i[0]);i[10]=this.normalizeAngle(i[9]+s/3),i[11]=this.normalizeAngle(i[9]+2*s/3);const r=this.calculateArc(i[0],i[3]);i[1]=this.normalizeAngle(i[0]+r/3),i[2]=this.normalizeAngle(i[0]+2*r/3);const a=this.calculateArc(i[3],i[6]);i[4]=this.normalizeAngle(i[3]+a/3),i[5]=this.normalizeAngle(i[3]+2*a/3);const l=this.calculateArc(i[6],i[9]);return i[7]=this.normalizeAngle(i[6]+l/3),i[8]=this.normalizeAngle(i[6]+2*l/3),i}calculateEqual(t){const e=new Array(12);for(let n=0;n<12;n++)e[n]=this.normalizeAngle(t+30*n);return e}calculateWholeSign(t){const e=new Array(12),n=Math.floor(t/30);for(let t=0;t<12;t++)e[t]=(n+t)%12*30;return e}calculatePorphyry(t,{mc:e}){if("number"!=typeof e)throw new Error("Porphyry house system requires mc");const n=new Array(12);n[0]=t,n[9]=e,n[6]=this.normalizeAngle(t+180),n[3]=this.normalizeAngle(e+180);const i=this.calculateArc(n[9],n[0]);n[10]=this.normalizeAngle(n[9]+i/3),n[11]=this.normalizeAngle(n[9]+2*i/3);const s=this.calculateArc(n[0],n[3]);n[1]=this.normalizeAngle(n[0]+s/3),n[2]=this.normalizeAngle(n[0]+2*s/3);const r=this.calculateArc(n[3],n[6]);n[4]=this.normalizeAngle(n[3]+r/3),n[5]=this.normalizeAngle(n[3]+2*r/3);const a=this.calculateArc(n[6],n[9]);return n[7]=this.normalizeAngle(n[6]+a/3),n[8]=this.normalizeAngle(n[6]+2*a/3),n}calculateRegiomontanus(t,{latitude:e,mc:n}){if("number"!=typeof e||"number"!=typeof n)throw new Error("Regiomontanus house system requires latitude and mc");const i=new Array(12);i[0]=t,i[9]=n,i[6]=this.normalizeAngle(t+180),i[3]=this.normalizeAngle(n+180);const s=this.calculateArc(i[9],i[0]);i[10]=this.normalizeAngle(i[9]+s/3),i[11]=this.normalizeAngle(i[9]+2*s/3);const r=this.calculateArc(i[0],i[3]);i[1]=this.normalizeAngle(i[0]+r/3),i[2]=this.normalizeAngle(i[0]+2*r/3);const a=this.calculateArc(i[3],i[6]);i[4]=this.normalizeAngle(i[3]+a/3),i[5]=this.normalizeAngle(i[3]+2*a/3);const l=this.calculateArc(i[6],i[9]);return i[7]=this.normalizeAngle(i[6]+l/3),i[8]=this.normalizeAngle(i[6]+2*l/3),i}calculateCampanus(t,{latitude:e,mc:n}){if("number"!=typeof e||"number"!=typeof n)throw new Error("Campanus house system requires latitude and mc");const i=new Array(12);i[0]=t,i[9]=n,i[6]=this.normalizeAngle(t+180),i[3]=this.normalizeAngle(n+180);const s=this.calculateArc(i[9],i[0]);i[10]=this.normalizeAngle(i[9]+s/3),i[11]=this.normalizeAngle(i[9]+2*s/3);const r=this.calculateArc(i[0],i[3]);i[1]=this.normalizeAngle(i[0]+r/3),i[2]=this.normalizeAngle(i[0]+2*r/3);const a=this.calculateArc(i[3],i[6]);i[4]=this.normalizeAngle(i[3]+a/3),i[5]=this.normalizeAngle(i[3]+2*a/3);const l=this.calculateArc(i[6],i[9]);return i[7]=this.normalizeAngle(i[6]+l/3),i[8]=this.normalizeAngle(i[6]+2*l/3),i}calculateMorinus(t,{mc:e}){if("number"!=typeof e)throw new Error("Morinus house system requires mc");const n=new Array(12);n[0]=t,n[9]=e,n[6]=this.normalizeAngle(t+180),n[3]=this.normalizeAngle(e+180);const i=this.calculateArc(n[9],n[0]);n[10]=this.normalizeAngle(n[9]+i/3),n[11]=this.normalizeAngle(n[9]+2*i/3);const s=this.calculateArc(n[0],n[3]);n[1]=this.normalizeAngle(n[0]+s/3),n[2]=this.normalizeAngle(n[0]+2*s/3);const r=this.calculateArc(n[3],n[6]);n[4]=this.normalizeAngle(n[3]+r/3),n[5]=this.normalizeAngle(n[3]+2*r/3);const a=this.calculateArc(n[6],n[9]);return n[7]=this.normalizeAngle(n[6]+a/3),n[8]=this.normalizeAngle(n[6]+2*a/3),n}calculateTopocentric(t,{latitude:e,mc:n}){if("number"!=typeof e||"number"!=typeof n)throw new Error("Topocentric house system requires latitude and mc");const i=new Array(12);i[0]=t,i[9]=n,i[6]=this.normalizeAngle(t+180),i[3]=this.normalizeAngle(n+180);const s=this.calculateArc(i[9],i[0]);i[10]=this.normalizeAngle(i[9]+s/3),i[11]=this.normalizeAngle(i[9]+2*s/3);const r=this.calculateArc(i[0],i[3]);i[1]=this.normalizeAngle(i[0]+r/3),i[2]=this.normalizeAngle(i[0]+2*r/3);const a=this.calculateArc(i[3],i[6]);i[4]=this.normalizeAngle(i[3]+a/3),i[5]=this.normalizeAngle(i[3]+2*a/3);const l=this.calculateArc(i[6],i[9]);return i[7]=this.normalizeAngle(i[6]+l/3),i[8]=this.normalizeAngle(i[6]+2*l/3),i}calculateArc(t,e){const n=this.normalizeAngle(e-t);return n<=180?n:360-n}normalizeAngle(t){return(t%360+360)%360}rightAscensionToLongitude(t,e){return this.radiansToDegrees(Math.atan2(Math.sin(t)*Math.cos(e),Math.cos(t)))}longitudeToRightAscension(t,e){const n=this.degreesToRadians(t);return Math.atan2(Math.sin(n)*Math.cos(e),Math.cos(n))}degreesToRadians(t){return t*Math.PI/180}radiansToDegrees(t){return 180*t/Math.PI}}class r{constructor(t={}){this.astronomicalData={ascendant:0,mc:90,latitude:51.5,houseSystem:"Placidus",planets:{sun:0,moon:0,mercury:0,venus:0,mars:0,jupiter:0,saturn:0,uranus:0,neptune:0,pluto:0,rahu:0,ketu:0,lilith:0,selena:0}},this.primaryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#000000",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#E41B17",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#4CC417",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#F62817",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#56A5EC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.secondaryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#AA00AA",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#FF6600",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#00AA00",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#CC0066",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#0099CC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.synastryAspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#666666",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#9933CC",enabled:!0,lineStyle:"solid",strokeWidth:.5},trine:{angle:120,orb:6,color:"#33AA55",enabled:!0,lineStyle:"solid",strokeWidth:.5},square:{angle:90,orb:6,color:"#CC6633",enabled:!0,lineStyle:"dotted",strokeWidth:.5},sextile:{angle:60,orb:4,color:"#5599DD",enabled:!0,lineStyle:"dotted",strokeWidth:.5}}},this.aspectSettings={enabled:!0,orb:6,types:{conjunction:{angle:0,orb:8,color:"#000000",enabled:!0,lineStyle:"none",strokeWidth:1},opposition:{angle:180,orb:6,color:"#E41B17",enabled:!0,lineStyle:"solid",strokeWidth:1},trine:{angle:120,orb:6,color:"#4CC417",enabled:!0,lineStyle:"solid",strokeWidth:1},square:{angle:90,orb:6,color:"#F62817",enabled:!0,lineStyle:"dashed",strokeWidth:1},sextile:{angle:60,orb:4,color:"#56A5EC",enabled:!0,lineStyle:"dashed",strokeWidth:1}}},this.planetSettings={enabled:!0,primaryEnabled:!0,secondaryEnabled:!0,dotSize:3,iconSize:24,orbs:{sun:8,moon:8,mercury:6,venus:6,mars:6,jupiter:6,saturn:6,uranus:4,neptune:4,pluto:4,rahu:4,ketu:4,lilith:4,selena:4},colors:{sun:"#ff9900",moon:"#aaaaaa",mercury:"#3399cc",venus:"#cc66cc",mars:"#cc3333",jupiter:"#9966cc",saturn:"#336633",uranus:"#33cccc",neptune:"#3366ff",pluto:"#663366",rahu:"#666666",ketu:"#888888",lilith:"#330033",selena:"#ffccff"},visible:{sun:!0,moon:!0,mercury:!0,venus:!0,mars:!0,jupiter:!0,saturn:!0,uranus:!0,neptune:!0,pluto:!0,rahu:!0,ketu:!0,lilith:!0,selena:!0}},this.houseSettings={enabled:!0,lineColor:"#666666",textColor:"#333333",fontSize:10,rotationAngle:0},this.zodiacSettings={enabled:!0,colors:{aries:"#ff6666",taurus:"#66cc66",gemini:"#ffcc66",cancer:"#6699cc",leo:"#ff9900",virgo:"#996633",libra:"#6699ff",scorpio:"#cc3366",sagittarius:"#cc66ff",capricorn:"#339966",aquarius:"#3399ff",pisces:"#9966cc"},fontSize:10},this.radius={innermost:90,zodiacInner:120,zodiacMiddle:150,zodiacOuter:180,planet:105,aspectInner:20,aspectOuter:120,houseNumberRadius:210},this.svg={width:460,height:460,viewBox:"0 0 460 460",center:{x:230,y:230}},this.assets={basePath:"./assets/",zodiacIconPath:"svg/zodiac/",planetIconPath:"svg/zodiac/"},this.theme={backgroundColor:"transparent",textColor:"#333333",lineColor:"#666666",lightLineColor:"#cccccc",fontFamily:"'Arial', sans-serif"},this.houseCusps=[],this.mergeConfig(t),this._initializeHouseCusps()}mergeConfig(t){const e=(t,n)=>{if("object"!=typeof n||null===n)return n;for(const i in n)Object.prototype.hasOwnProperty.call(n,i)&&("object"==typeof n[i]&&null!==n[i]&&"object"==typeof t[i]&&null!==t[i]?t[i]=e(t[i],n[i]):t[i]=n[i]);return t};for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&Object.prototype.hasOwnProperty.call(this,n)&&(this[n]=e(this[n],t[n]))}_initializeHouseCusps(){if("number"==typeof this.astronomicalData.ascendant&&"number"==typeof this.astronomicalData.mc)try{const t=new s;this.houseCusps=t.calculateHouseCusps(this.astronomicalData.ascendant,this.astronomicalData.houseSystem,{latitude:this.astronomicalData.latitude,mc:this.astronomicalData.mc}),this.houseCusps.length>0&&0===this.houseSettings.rotationAngle&&(console.log(`ChartConfig: Auto-rotating wheel to Ascendant at ${this.astronomicalData.ascendant}°`),this.houseSettings.rotationAngle=this.astronomicalData.ascendant)}catch(t){console.error("Failed to calculate house cusps:",t?.message||t),this.houseCusps=[]}}getPlanetSettings(t){const e=t.toLowerCase();return{color:this.planetSettings.colors[e]||"#000000",size:this.planetSettings.size,visible:!1!==this.planetSettings.visible[e]}}getAspectSettings(t){const e=t.toLowerCase();return this.aspectSettings.types[e]||{angle:0,orb:this.aspectSettings.orb,color:"#999999",enabled:!0}}getZodiacSettings(t){const e=t.toLowerCase();return{color:this.zodiacSettings.colors[e]||"#666666",fontSize:this.zodiacSettings.fontSize}}updateAspectSettings(t){this.aspectSettings={...this.aspectSettings,...t},this.primaryAspectSettings={...this.primaryAspectSettings,...t}}updatePrimaryAspectSettings(t){this.primaryAspectSettings={...this.primaryAspectSettings,...t}}updateSecondaryAspectSettings(t){this.secondaryAspectSettings={...this.secondaryAspectSettings,...t}}updateSynastryAspectSettings(t){this.synastryAspectSettings={...this.synastryAspectSettings,...t}}updatePlanetSettings(t){this.planetSettings={...this.planetSettings,...t}}updateHouseSettings(t){this.houseSettings={...this.houseSettings,...t}}updateZodiacSettings(t){this.zodiacSettings={...this.zodiacSettings,...t}}setRadius(t,e){Object.prototype.hasOwnProperty.call(this.radius,t)&&(this.radius[t]=e)}togglePlanetVisibility(t,e){this.planetSettings&&this.planetSettings.visible&&(this.planetSettings.visible[t]=e)}toggleHousesVisibility(t){this.houseSettings.enabled=t}toggleAspectsVisibility(t){this.aspectSettings.enabled=t,this.primaryAspectSettings.enabled=t,this.secondaryAspectSettings.enabled=t,this.synastryAspectSettings.enabled=t}togglePrimaryAspectsVisibility(t){this.primaryAspectSettings.enabled=t}toggleSecondaryAspectsVisibility(t){this.secondaryAspectSettings.enabled=t}toggleSynastryAspectsVisibility(t){this.synastryAspectSettings.enabled=t}togglePrimaryPlanetsVisibility(t){this.planetSettings.primaryEnabled=t}toggleSecondaryPlanetsVisibility(t){this.planetSettings.secondaryEnabled=t}setHouseSystem(t){return this.astronomicalData.houseSystem=t,this._initializeHouseCusps(),!0}getHouseCusps(){return this.houseCusps&&0!==this.houseCusps.length||this._initializeHouseCusps(),this.houseCusps.length>0&&"number"==typeof this.houseCusps[0]?this.houseCusps.map(t=>({lon:t})):this.houseCusps}setAscendant(t){return!("number"!=typeof t||t<0||t>=360)&&(this.astronomicalData.ascendant=t,this._initializeHouseCusps(),!0)}setMidheaven(t){return!("number"!=typeof t||t<0||t>=360)&&(this.astronomicalData.mc=t,this._initializeHouseCusps(),!0)}setLatitude(t){return!("number"!=typeof t||t<-90||t>90)&&(this.astronomicalData.latitude=t,this._initializeHouseCusps(),!0)}setPlanetPosition(t,e){const n=t.toLowerCase();return!("number"!=typeof e||e<0||e>=360)&&(!!this.astronomicalData.planets.hasOwnProperty(n)&&(this.astronomicalData.planets[n]=e,!0))}getPlanetPosition(t){const e=t.toLowerCase();return this.astronomicalData.planets.hasOwnProperty(e)?this.astronomicalData.planets[e]:null}getHouseSystem(){return this.astronomicalData.houseSystem}getAvailableHouseSystems(){return(new s).getAvailableHouseSystems()}}class a{constructor(){this.svgNS="http://www.w3.org/2000/svg"}createSVGElement(t,e={}){const n=document.createElementNS(this.svgNS,t);for(const[t,i]of Object.entries(e))n.setAttribute(t,i);return n}addTooltip(t,e){const n=document.createElementNS(this.svgNS,"title");return n.textContent=e,t.appendChild(n),t}pointOnCircle(t,e,n,i){const s=(i-90)*(Math.PI/180);return{x:t+n*Math.cos(s),y:e+n*Math.sin(s)}}}class l{constructor(t={}){this.svgNS="http://www.w3.org/2000/svg",this.svg=null,this.groups={},this.svgUtils=t.svgUtils||e.getSvgUtils(),this.groupOrder=["zodiac","houseDivisions","primaryAspects","secondaryAspects","synastryAspects","aspects","primaryPlanets","secondaryPlanets","houses"]}initialize(t,e={}){let n;if("string"==typeof t){if(n=document.querySelector(t),!n)return console.error(`SVGManager: Container not found with selector: ${t}`),null}else{if(!(t instanceof Element||t instanceof HTMLElement))return console.error("SVGManager: Invalid container. Expected string selector or DOM element."),null;n=t}n.innerHTML="";const i={width:"100%",height:"100%",viewBox:"0 0 460 460",preserveAspectRatio:"xMidYMid meet",class:"nocturna-wheel-svg",...e};this.svg=document.createElementNS(this.svgNS,"svg");for(const[t,e]of Object.entries(i))this.svg.setAttribute(t,e);return n.appendChild(this.svg),console.log("SVGManager: SVG initialized"),this.svg}createStandardGroups(){this.svg?(this.groups={},this.svg.querySelectorAll("g").forEach(t=>t.remove()),console.log("SVGManager: Creating standard groups:",this.groupOrder),this.groupOrder.forEach(t=>{this.createGroup(t)}),this.createGroup("planets")):console.error("SVGManager: Cannot create groups, SVG not initialized.")}createGroup(t){if(!this.svg)return console.error(`SVGManager: Cannot create group '${t}', SVG not initialized.`),null;if(this.groups[t])return this.groups[t];const e=document.createElementNS(this.svgNS,"g");return e.setAttribute("id",`group-${t}`),e.setAttribute("class",`svg-group svg-group-${t}`),this.svg.appendChild(e),this.groups[t]=e,e}getGroup(t){return this.svg?("planets"===t&&(console.warn('SVGManager: Using deprecated "planets" group. Use "primaryPlanets" or "secondaryPlanets" instead.'),t="primaryPlanets"),this.groups[t]?this.groups[t]:(console.warn(`SVGManager: Group '${t}' not found. Creating it.`),this.createGroup(t))):(console.warn(`SVGManager: Cannot get group '${t}', SVG not initialized.`),null)}getAllGroups(){return this.groups}getSVG(){return this.svg}}class o{constructor(t){if(!t||!t.svgNS||!t.config)throw new Error(`${this.constructor.name}: Missing required options (svgNS, config)`);this.svgNS=t.svgNS,this.config=t.config,this.options=t,this.svgUtils=t.svgUtils||{svgNS:this.svgNS,createSVGElement:(t,e={})=>{const n=document.createElementNS(this.svgNS,t);for(const[t,i]of Object.entries(e))n.setAttribute(t,i);return n},addTooltip:(t,e)=>{const n=document.createElementNS(this.svgNS,"title");return n.textContent=e,t.appendChild(n),t},pointOnCircle:(t,e,n,i)=>{const s=(i-90)*(Math.PI/180);return{x:t+n*Math.cos(s),y:e+n*Math.sin(s)}}},this.centerX=this.config.svg.center.x,this.centerY=this.config.svg.center.y,this.innerRadius=this.config.radius.zodiacInner,this.middleRadius=this.config.radius.zodiacMiddle,this.outerRadius=this.config.radius.zodiacOuter}clearGroup(t){t&&(t.innerHTML="")}render(t){throw new Error(`${this.constructor.name}: render() not implemented.`)}}class g{static capitalizeFirstLetter(t){return t.charAt(0).toUpperCase()+t.slice(1)}static getHouseFromPosition(t,e=0){const n=(t-e+360)%360;return Math.floor(n/30)+1}static getZodiacSigns(){return["aries","taurus","gemini","cancer","leo","virgo","libra","scorpio","sagittarius","capricorn","aquarius","pisces"]}static getHouseSystems(){return{Placidus:"Most commonly used house system in Western astrology, based on time of day",Koch:"Developed by Walter Koch, a time-based system similar to Placidus",Campanus:"Medieval system dividing the prime vertical into equal parts",Regiomontanus:"Similar to Campanus, but using the celestial equator instead of prime vertical",Equal:"Divides the ecliptic into 12 equal segments of 30° each from the Ascendant","Whole Sign":"Assigns the entire rising sign to the 1st house, with subsequent signs as houses",Porphyry:"Simple system that divides each quadrant into three equal parts",Topocentric:"Modern system similar to Placidus but more accurate for extreme latitudes"}}static getPlanets(){return["sun","moon","mercury","venus","mars","jupiter","saturn","uranus","neptune","pluto","rahu","ketu","lilith","selena"]}static houseToRoman(t){return["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII"][t-1]||""}static getPlanetFullName(t,e="en"){const n={en:{sun:"Sun",moon:"Moon",mercury:"Mercury",venus:"Venus",mars:"Mars",jupiter:"Jupiter",saturn:"Saturn",uranus:"Uranus",neptune:"Neptune",pluto:"Pluto",rahu:"Rahu",ketu:"Ketu",lilith:"Lilith",selena:"Selena"},ru:{sun:"Солнце",moon:"Луна",mercury:"Меркурий",venus:"Венера",mars:"Марс",jupiter:"Юпитер",saturn:"Сатурн",uranus:"Уран",neptune:"Нептун",pluto:"Плутон",rahu:"Раху",ketu:"Кету",lilith:"Лилит",selena:"Селена"}};return(n[e]||n.en)[t.toLowerCase()]||this.capitalizeFirstLetter(t)}static getZodiacSignFullName(t,e="en"){const n={en:{aries:"Aries",taurus:"Taurus",gemini:"Gemini",cancer:"Cancer",leo:"Leo",virgo:"Virgo",libra:"Libra",scorpio:"Scorpio",sagittarius:"Sagittarius",capricorn:"Capricorn",aquarius:"Aquarius",pisces:"Pisces"},ru:{aries:"Овен",taurus:"Телец",gemini:"Близнецы",cancer:"Рак",leo:"Лев",virgo:"Дева",libra:"Весы",scorpio:"Скорпион",sagittarius:"Стрелец",capricorn:"Козерог",aquarius:"Водолей",pisces:"Рыбы"}};return(n[e]||n.en)[t.toLowerCase()]||this.capitalizeFirstLetter(t)}}class d extends o{constructor(t){if(super(t),this.iconProvider=t.iconProvider,!t.assetBasePath&&!this.iconProvider)throw new Error("ZodiacRenderer: Missing required option assetBasePath or iconProvider");this.assetBasePath=t.assetBasePath||"./assets/",this.signIconRadius=(this.outerRadius+this.middleRadius)/2,this.signIconSize=30}render(t){if(!t)return console.error("ZodiacRenderer: parentGroup is null or undefined."),[];this.clearGroup(t);const e=[];return e.push(...this.renderBaseCircles(t)),e.push(...this.renderDivisionLines(t)),e.push(...this.renderZodiacSigns(t)),console.log("ZodiacRenderer: Rendering complete."),e}renderBaseCircles(t){const e=[];return[{r:this.outerRadius,class:"chart-outer-circle"},{r:this.middleRadius,class:"chart-middle-circle"},{r:this.innerRadius,class:"chart-inner-circle"}].forEach(n=>{let i="#999",s="0.5";"chart-outer-circle"===n.class&&(i="#666",s="1");const r=this.svgUtils.createSVGElement("circle",{cx:this.centerX,cy:this.centerY,r:n.r,fill:"transparent",stroke:i,"stroke-width":s,class:`zodiac-element ${n.class}`});t.appendChild(r),e.push(r)}),e}renderDivisionLines(t){const e=[];for(let n=0;n<12;n++){const i=30*n,s=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.middleRadius,i),r=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.outerRadius,i);let a="";0===i?a="aries-point":90===i?a="cancer-point":180===i?a="libra-point":270===i&&(a="capricorn-point");const l=this.svgUtils.createSVGElement("line",{x1:s.x,y1:s.y,x2:r.x,y2:r.y,stroke:"#999","stroke-width":"0.75",class:`zodiac-element zodiac-division-line ${a}`});t.appendChild(l),e.push(l)}return e}renderZodiacSigns(t){const e=[],n=g.getZodiacSigns();for(let i=0;i<12;i++){const s=n[i],r=30*i+15,a=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.signIconRadius,r);let l;if(this.iconProvider)l=this.iconProvider.getZodiacIconPath(s);else{const t=this.options.assetBasePath||this.assetBasePath||"./assets/";l=`${t}svg/zodiac/zodiac-sign-${s}.svg`}this._loggedSigns||(this._loggedSigns={}),this._loggedSigns[s]||(console.log(`ZodiacRenderer: Loading sign '${s}':`,l.startsWith("data:")?"inline data URL":l),this._loggedSigns[s]=!0);const o=this.svgUtils.createSVGElement("image",{x:a.x-this.signIconSize/2,y:a.y-this.signIconSize/2,width:this.signIconSize,height:this.signIconSize,href:l,class:`zodiac-element zodiac-sign zodiac-sign-${s}`});o.addEventListener("error",()=>{console.warn(`Zodiac sign icon not found: ${l}`),o.setAttribute("href","");const n=s.substring(0,3).toUpperCase();let i;this.iconProvider?i=this.iconProvider.createTextFallback(this.svgUtils,{x:a.x,y:a.y,size:"10px",color:"#ccc",className:`zodiac-element zodiac-sign zodiac-sign-${s}`},n):(i=this.svgUtils.createSVGElement("text",{x:a.x,y:a.y,"text-anchor":"middle","dominant-baseline":"central","font-size":"10px",fill:"#ccc",class:`zodiac-element zodiac-sign zodiac-sign-${s}`}),i.textContent=n),t.appendChild(i),e.push(i)}),this.svgUtils.addTooltip(o,g.getZodiacSignFullName(s)),t.appendChild(o),e.push(o)}return e}}class c extends o{constructor(t){super(t),this.houseData=t.houseData||[],this.extendedRadius=this.outerRadius+25,this.numberRadius=this.outerRadius+30}render(t,e=0){if(!t)return console.error("HouseRenderer: parentGroup is null or undefined."),[];this.clearGroup(t);const n=[];return n.push(...this.renderDivisions(t,e)),n.push(...this.renderNumbers(t,e)),console.log("HouseRenderer: Rendering complete."),n}renderDivisions(t,e){const n=[];let i=0;if(console.log("HouseRenderer: House data for divisions:",this.houseData),this.houseData&&this.houseData.length>=12){i=(360-this.getHouseLongitude(this.houseData[0]))%360}for(let s=0;s<12;s++){let r;r=this.houseData&&this.houseData.length>=12?this.getHouseLongitude(this.houseData[s]):30*s;const a=(r+i+e)%360;let l="";0===s?l="axis asc":3===s?l="axis ic":6===s?l="axis dsc":9===s&&(l="axis mc");const o=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.innerRadius,a),g=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.middleRadius,a);let d="#999",c="0.75",C="#999",h="0.75",F=null;l.includes("axis")?(d="#555",c="1",C="#555",h="1"):F="2,2";const D=this.svgUtils.createSVGElement("line",{x1:o.x,y1:o.y,x2:g.x,y2:g.y,stroke:d,"stroke-width":c,class:`house-element house-division-line ${l}`});l.includes("axis")&&(D.style.zIndex=10),t.appendChild(D),n.push(D);const p=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.outerRadius,a),E=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.extendedRadius,a),u={x1:p.x,y1:p.y,x2:E.x,y2:E.y,stroke:C,"stroke-width":h,class:`house-element house-division-line outer ${l}`};F&&(u["stroke-dasharray"]=F);const m=this.svgUtils.createSVGElement("line",u);l.includes("axis")&&(m.style.zIndex=10),t.appendChild(m),n.push(m)}return n}renderNumbers(t,e){const n=[];let i=0;if(console.log("HouseRenderer: House data for numbers:",this.houseData),this.houseData&&this.houseData.length>=12){i=(360-this.getHouseLongitude(this.houseData[0]))%360}for(let s=0;s<12;s++){const r=s+1;let a;if(this.houseData&&this.houseData.length>=12){const t=this.getHouseLongitude(this.houseData[s]);a=((t+(this.getHouseLongitude(this.houseData[(s+1)%12])-t+360)%360/2)%360+i+e)%360}else a=(30*s+15+e)%360;const l=a,o=this.svgUtils.pointOnCircle(this.centerX,this.centerY,this.numberRadius,l),d=this.svgUtils.createSVGElement("text",{x:o.x,y:o.y,class:"house-element house-number"});l>=315||l<45?(d.setAttribute("text-anchor","middle"),d.setAttribute("dominant-baseline","auto")):l>=45&&l<135?(d.setAttribute("text-anchor","start"),d.setAttribute("dominant-baseline","middle")):l>=135&&l<225?(d.setAttribute("text-anchor","middle"),d.setAttribute("dominant-baseline","hanging")):(d.setAttribute("text-anchor","end"),d.setAttribute("dominant-baseline","middle")),d.textContent=g.houseToRoman(r),this.svgUtils.addTooltip(d,`House ${r}`),t.appendChild(d),n.push(d)}return n}getHouseLongitude(t){return null==t?(console.warn("HouseRenderer: Null or undefined house data"),0):"object"==typeof t&&null!==t&&"lon"in t?t.lon:"number"==typeof t?t:(console.warn("HouseRenderer: Unrecognized house data format",t),0)}}class C extends o{constructor(t){if(super(t),this.iconProvider=t.iconProvider,!t.assetBasePath&&!this.iconProvider)throw new Error(`${this.constructor.name}: Missing required option assetBasePath or iconProvider`);this.assetBasePath=t.assetBasePath||"./assets/"}calculateBasePositions(t,e,n){t.forEach(t=>{const i=(t.position-90)*(Math.PI/180);t.radians=i;const s=this.svgUtils.pointOnCircle(this.centerX,this.centerY,e,t.position);t.x=s.x,t.y=s.y;const r=this.svgUtils.pointOnCircle(this.centerX,this.centerY,n,t.position);t.iconX=r.x,t.iconY=r.y,t.adjustedIconX=t.iconX,t.adjustedIconY=t.iconY})}preparePlanetData(t,e,n,i){return t.map(t=>({...t,name:t.name||"unknown",position:void 0!==t.position?t.position:0,x:0,y:0,iconX:0,iconY:0,adjustedIconX:0,adjustedIconY:0,radians:0,zodiacSign:g.getZodiacSigns()[Math.floor(t.position/30)%12],position_in_sign:t.position%30,isPrimary:"primary"===e,type:e,color:t.color||"#000000",retrograde:!0===t.retrograde,dotRadius:n,iconRadius:i}))}render(t,e,n=0,i={}){throw new Error(`${this.constructor.name}: render() not implemented.`)}}class h extends C{constructor(t){super(t)}renderPlanetSymbol(t,e,n=24){let i;if(this.iconProvider)i=this.iconProvider.getPlanetIconPath(e.name);else{const t=this.options.assetBasePath||this.assetBasePath||"./assets/";i=`${t}svg/zodiac/zodiac-planet-${e.name.toLowerCase()}.svg`}const s=e.adjustedIconX-n/2,r=e.adjustedIconY-n/2,a=e.isPrimary?"primary":"secondary",l=this.svgUtils.createSVGElement("image",{x:s,y:r,width:n,height:n,href:i,class:`planet-icon planet-${e.name}-icon planet-${a}-icon`});return l.addEventListener("error",()=>{console.warn(`Planet icon not found: ${i}`),l.setAttribute("href","");const s=e.name.charAt(0).toUpperCase();let r;this.iconProvider?r=this.iconProvider.createTextFallback(this.svgUtils,{x:e.adjustedIconX,y:e.adjustedIconY,size:`${n}px`,color:e.color||"#000000",className:`planet-symbol planet-${e.name}-symbol planet-${a}-symbol`},s):(r=this.svgUtils.createSVGElement("text",{x:e.adjustedIconX,y:e.adjustedIconY,"text-anchor":"middle","dominant-baseline":"middle","font-size":`${n}px`,class:`planet-symbol planet-${e.name}-symbol planet-${a}-symbol`,fill:e.color||"#000000"}),r.textContent=e.name.charAt(0).toUpperCase()),t.appendChild(r)}),l}renderRetrogradeIndicator(t,e,n=24){const i=n/2-2,s=n/2-2,r=e.adjustedIconX+i,a=e.adjustedIconY+s,l=e.isPrimary?"primary":"secondary",o=e.color||"#000000",g=this.svgUtils.createSVGElement("text",{x:r,y:a,"text-anchor":"end","dominant-baseline":"alphabetic","font-size":`${Math.max(7,.3*n)}px`,"font-weight":"bold","font-family":"Arial, sans-serif",class:`planet-retrograde planet-${e.name}-retrograde planet-${l}-retrograde`,fill:o,stroke:"#ffffff","stroke-width":"0.5","paint-order":"stroke fill"});return g.textContent="R",g}renderPlanetDot(t,e,n=3){const i=e.isPrimary?"primary":"secondary";return this.svgUtils.createSVGElement("circle",{cx:e.x,cy:e.y,r:n,class:`planet-dot planet-${e.name}-dot planet-${i}-dot`,fill:e.color||"#000000"})}renderConnector(t,e,n,i=.3){const s=e.isPrimary?"primary":"secondary",r=e.x-e.adjustedIconX,a=e.y-e.adjustedIconY;if(Math.sqrt(r*r+a*a)>n*i){return this.svgUtils.createSVGElement("line",{x1:e.x,y1:e.y,x2:e.adjustedIconX,y2:e.adjustedIconY,class:`planet-element planet-${e.name.toLowerCase()} planet-connector planet-${s}-connector`,stroke:e.color||"#000000","stroke-width":.75,"stroke-opacity":.5})}return null}addPlanetTooltip(t,e){const n=`${e.isPrimary?"Primary":"Secondary"} ${g.getPlanetFullName(e.name)}: ${e.position.toFixed(1)}° ${e.zodiacSign.toUpperCase()} (${e.position_in_sign.toFixed(1)}°)`;this.svgUtils.addTooltip(t,n)}render(t,e,n=0,i={}){throw new Error(`${this.constructor.name}: This is a utility renderer, use specific rendering methods instead.`)}}class F{static _normalizeAngle(t){return(t%360+360)%360}static _getAngle(t){return t&&void 0!==t.adjustedLongitude?t.adjustedLongitude:t.longitude}static calculatePosition(t){const{centerX:e,centerY:n,radius:i,longitude:s,iconSize:r=24}=t,l=(new a).pointOnCircle(e,n,i,s),o=l.x-r/2,g=l.y-r/2;return{x:l.x,y:l.y,iconX:o,iconY:g,iconCenterX:l.x,iconCenterY:l.y,longitude:s,radius:i}}static detectOverlaps(t,e=24){const n=[],i=new Set;for(let s=0;s<t.length;s++){if(i.has(s))continue;const r=[s];i.add(s);for(let n=0;n<t.length;n++){if(s===n||i.has(n))continue;Math.sqrt(Math.pow(t[s].x-t[n].x,2)+Math.pow(t[s].y-t[n].y,2))<e&&(r.push(n),i.add(n))}r.length>1&&n.push(r)}return n}static adjustOverlaps(t,e={}){const{minDistance:n=24,centerX:i,centerY:s,baseRadius:r,iconSize:a=24,maxIterations:l=5}=e;if(!t||t.length<=1)return t;if(!i||!s||!r)return console.error("PlanetPositionCalculator: Missing required parameters (centerX, centerY, or baseRadius)"),t;console.log(`PlanetPositionCalculator: Adjusting overlaps for ${t.length} positions`);const o=t.map(t=>({...t})),g=n/r*(180/Math.PI);console.log(`PlanetPositionCalculator: Minimum angular distance: ${g.toFixed(2)}°`),o.forEach(t=>{void 0===t.adjustedLongitude&&(t.adjustedLongitude=t.longitude),this._setExactPosition(t,this._getAngle(t),r,i,s,a)});for(let t=0;t<l;t++){const e=[...o].sort((t,e)=>this._getAngle(t)-this._getAngle(e)),n=this._findOverlappingClusters(e,g);console.log(`PlanetPositionCalculator: Iteration ${t+1}/${l}, clusters: ${n.length}`);if(!n.some(t=>t.length>1))break;n.forEach(t=>{if(t.length<=1){const e=t[0];return void this._setExactPosition(e,this._getAngle(e),r,i,s,a)}this._distributeClusterByPush(t,r,g,i,s,a)})}return o}static _findOverlappingClusters(t,e){if(!t.length)return[];if(1===t.length)return[t];const n=[];let i=[t[0]];const s=t.length;t[0],t[0].longitude;for(let r=1;r<s;r++){const s=t[r-1],a=t[r],l=this._getAngle(s);let o=this._getAngle(a)-l;o<0&&(o+=360),o<e?i.push(a):(i.length>0&&n.push(i),i=[a])}i.length>0&&n.push(i);const r=t[s-1],a=t[0],l=this._getAngle(r);let o=this._getAngle(a)+360-l;if(o<0&&(o+=360),o<e&&n.length>=2){const t=n[0],e=n[n.length-1];if(t.includes(a)&&e.includes(r)){const i=[...e,...t];n.pop(),n[0]=i}}return n}static _distributeClusterByPush(t,e,n,i,s,r){const a=t.length;if(a<=1){const n=t[0];return void this._setExactPosition(n,this._getAngle(n),e,i,s,r)}const l=t.map(t=>this._getAngle(t)),o=Math.min(...l),g=Math.max(...l)-o>180?l.map(t=>t<180?t+360:t):l,d=t.map((t,e)=>({p:t,orig:g[e]})).sort((t,e)=>t.orig-e.orig),c=d.map(t=>t.orig);let C=[...c];for(let t=1;t<a;t++){const e=C[t-1]+n;C[t]<e&&(C[t]=e)}const h=c.reduce((t,e)=>t+e,0)/a-C.reduce((t,e)=>t+e,0)/a;C=C.map(t=>t+h);for(let t=1;t<a;t++){const e=C[t-1]+n;C[t]<e&&(C[t]=e)}for(let t=a-2;t>=0;t--){const e=C[t+1]-n;C[t]>e&&(C[t]=e)}for(let t=0;t<a;t++){const n=this._normalizeAngle(C[t]);this._setExactPosition(d[t].p,n,e,i,s,r)}}static _setExactPosition(t,e,n,i,s,r){const l=(new a).pointOnCircle(i,s,n,e);t.x=l.x,t.y=l.y,t.iconCenterX=l.x,t.iconCenterY=l.y,t.iconX=l.x-r/2,t.iconY=l.y-r/2,t.adjustedLongitude=e}}class D extends C{constructor(t){super(t),this.symbolRenderer=t.symbolRenderer,this.circleConfig={circle:"inner"}}calculateRadii(t=null){const e=t?.radius?.inner||this.innerRadius;return{dotRadius:e,iconRadius:e+((t?.radius?.middle||this.middleRadius)-e)/2}}adjustOverlappingPlanets(t){if(t.length<=1)return;const e=t[0].iconRadius,n=t.map((t,n)=>({x:t.iconX,y:t.iconY,iconX:t.iconX,iconY:t.iconY,iconCenterX:t.iconX,iconCenterY:t.iconY,longitude:t.position,radius:e,originalIndex:n,name:t.name}));F.adjustOverlaps(n,{minDistance:36,centerX:this.centerX,centerY:this.centerY,baseRadius:e,iconSize:24}).forEach((e,n)=>{const i=t[n];i.position,i.adjustedIconX=e.iconCenterX,i.adjustedIconY=e.iconCenterY,void 0!==e.adjustedLongitude&&(i.adjustedPosition=e.adjustedLongitude)})}render(t,e,n=0,i={}){if(!t)return console.error("PrimaryPlanetRenderer: parentGroup is null or undefined."),[];const{dotRadius:s,iconRadius:r}=i.dotRadius&&i.iconRadius?{dotRadius:i.dotRadius,iconRadius:i.iconRadius}:this.calculateRadii(i.config||this.config);if(!s||!r)return console.error("PrimaryPlanetRenderer: Could not determine radius values"),[];this.clearGroup(t);const a=this.preparePlanetData(e,"primary",s,r);return a.sort((t,e)=>t.position-e.position),this.calculateBasePositions(a,s,r),this.adjustOverlappingPlanets(a),this.drawPlanets(t,a),a}drawPlanets(t,e){e.forEach(e=>{const n=this.svgUtils.createSVGElement("g",{"data-planet":e.name,"data-type":e.type,class:`planet-element planet-${e.name} planet-primary`,transform:"translate(0,0)"}),i=this.symbolRenderer.renderPlanetDot(n,e);n.appendChild(i);const s=this.symbolRenderer.renderPlanetSymbol(n,e,24);if(n.appendChild(s),e.retrograde){const t=this.symbolRenderer.renderRetrogradeIndicator(n,e,24);n.appendChild(t)}this.symbolRenderer.addPlanetTooltip(n,e);const r=this.symbolRenderer.renderConnector(n,e,24,.9);r&&n.appendChild(r),t.appendChild(n)})}}class p extends C{constructor(t){super(t),this.symbolRenderer=t.symbolRenderer,this.circleConfig={circle:"innermost"}}calculateRadii(t=null){const e=t?.radius?.innermost||.5*this.innerRadius;return{dotRadius:e,iconRadius:e+((t?.radius?.zodiacInner||this.innerRadius)-e)/2}}adjustOverlappingPlanets(t){if(t.length<=1)return;const e=t[0].iconRadius,n=t.map((t,n)=>({x:t.iconX,y:t.iconY,iconX:t.iconX,iconY:t.iconY,iconCenterX:t.iconX,iconCenterY:t.iconY,longitude:t.position,radius:e,originalIndex:n,name:t.name}));F.adjustOverlaps(n,{minDistance:27,centerX:this.centerX,centerY:this.centerY,baseRadius:e,iconSize:18}).forEach((e,n)=>{const i=t[n];i.adjustedIconX=e.iconCenterX,i.adjustedIconY=e.iconCenterY,void 0!==e.adjustedLongitude&&(i.adjustedPosition=e.adjustedLongitude)})}render(t,e,n=0,i={}){if(!t)return console.error("SecondaryPlanetRenderer: parentGroup is null or undefined."),[];const{dotRadius:s,iconRadius:r}=i.dotRadius&&i.iconRadius?{dotRadius:i.dotRadius,iconRadius:i.iconRadius}:this.calculateRadii(i.config||this.config);if(!s||!r)return console.error("SecondaryPlanetRenderer: Could not determine radius values"),[];this.clearGroup(t);const a=this.preparePlanetData(e,"secondary",s,r);return a.sort((t,e)=>t.position-e.position),this.calculateBasePositions(a,s,r),this.adjustOverlappingPlanets(a),this.drawPlanets(t,a),a}drawPlanets(t,e){e.forEach(e=>{const n=this.svgUtils.createSVGElement("g",{"data-planet":e.name,"data-type":e.type,class:`planet-element planet-${e.name} planet-secondary`,transform:"translate(0,0)"}),i=this.symbolRenderer.renderPlanetDot(n,e,2);n.appendChild(i);const s=this.symbolRenderer.renderPlanetSymbol(n,e,18);if(n.appendChild(s),e.retrograde){const t=this.symbolRenderer.renderRetrogradeIndicator(n,e,18);n.appendChild(t)}this.symbolRenderer.addPlanetTooltip(n,e);const r=this.symbolRenderer.renderConnector(n,e,18,.9);r&&n.appendChild(r),t.appendChild(n)})}}class E extends C{constructor(t){super(t),this.primaryRenderer=t.primaryRenderer,this.secondaryRenderer=t.secondaryRenderer,this.symbolRenderer=t.symbolRenderer,this.circleConfigs={primary:{circle:"inner"},secondary:{circle:"innermost"}}}calculateRadii(t,e=null){if(!this.circleConfigs[t])return console.error(`PlanetRendererCoordinator: No circle configuration found for planet type: ${t}`),{dotRadius:null,iconRadius:null};switch(t){case"primary":return this.primaryRenderer.calculateRadii(e);case"secondary":return this.secondaryRenderer.calculateRadii(e);default:return console.error(`PlanetRendererCoordinator: Unknown planet type: ${t}`),{dotRadius:null,iconRadius:null}}}render(t,e,n=0,i={}){const s=i.type||"primary";switch(console.log(`PlanetRendererCoordinator: Rendering ${s} planets, count:`,e.length),s){case"primary":return this.primaryRenderer.render(t,e,n,i);case"secondary":return this.secondaryRenderer.render(t,e,n,i);default:return console.error(`PlanetRendererCoordinator: Unknown planet type: ${s}`),[]}}renderAllPlanetTypes(t){const{svgManager:e,planetsData:n,config:i,enabledTypes:s={primary:!0,secondary:!0}}=t;if(!e||!n||!i)return console.error("PlanetRendererCoordinator: Missing required parameters"),{};const r=Object.entries(n).filter(([t,e])=>!1!==i.planetSettings.visible?.[t]).map(([t,e])=>({name:t,position:e.lon,color:e.color||"#000000"})),a={},l=this.centerX,o=this.centerY;if(this.centerX=i.svg.center.x,this.centerY=i.svg.center.y,this.primaryRenderer.centerX=this.centerX,this.primaryRenderer.centerY=this.centerY,this.secondaryRenderer.centerX=this.centerX,this.secondaryRenderer.centerY=this.centerY,s.primary){const t=e.getGroup("primaryPlanets");a.primary=this.primaryRenderer.render(t,r,0,{config:i}),console.log(`PlanetRendererCoordinator: Rendered ${a.primary.length} primary planets`)}else a.primary=[];if(s.secondary){const t=e.getGroup("secondaryPlanets");a.secondary=this.secondaryRenderer.render(t,r,0,{config:i}),console.log(`PlanetRendererCoordinator: Rendered ${a.secondary.length} secondary planets`)}else a.secondary=[];return this.centerX=l,this.centerY=o,this.primaryRenderer.centerX=l,this.primaryRenderer.centerY=o,this.secondaryRenderer.centerX=l,this.secondaryRenderer.centerY=o,a}renderAllPlanets(t){return console.warn("PlanetRendererCoordinator: renderAllPlanets is deprecated, use renderAllPlanetTypes instead"),this.renderAllPlanetTypes(t)}}class u extends o{constructor(t){super(t),this.astrologyUtils=g,this.renderedAspects=[],this._aspectCacheKey=null,this._aspectCache=[],this.assetBasePath=t.assetBasePath||"./assets/",this.iconProvider=t.iconProvider,this.defaultAspectDefinitions={conjunction:{angle:0,orb:8,color:"#FF4500",abbr:"CON"},opposition:{angle:180,orb:6,color:"#DC143C",abbr:"OPP"},trine:{angle:120,orb:6,color:"#2E8B57",abbr:"TRI"},square:{angle:90,orb:6,color:"#FF0000",abbr:"SQR"},sextile:{angle:60,orb:4,color:"#4682B4",abbr:"SEX"}}}_angularDistance(t,e){const n=Math.abs(t-e)%360;return Math.min(n,360-n)}calculateAspects(t,e=null){const n=[];if(!t||t.length<2)return n;const i=e||this.config.aspectSettings||{},s=`${JSON.stringify(i)}|${t.map(t=>`${t.name}:${t.position}`).join("|")}`;if(s===this._aspectCacheKey)return console.log(`ClientSideAspectRenderer: Using cached aspects (${this._aspectCache.length})`),this._aspectCache;const r=i.orb||6,a=i.types||this.defaultAspectDefinitions;for(let e=0;e<t.length;e++)for(let i=e+1;i<t.length;i++){const s=t[e],l=t[i],o=this._angularDistance(s.position,l.position);for(const t in a){const e=a[t],i=e.angle,g=void 0!==e.orb?e.orb:r;Math.abs(o-i)<=g&&n.push({planet1:s.name,planet2:l.name,type:t,angle:i,angleDiff:o,orb:Math.abs(o-i),p1:s,p2:l,color:e.color||"#888",lineStyle:e.lineStyle,abbr:e.abbr||t.substring(0,3).toUpperCase()})}}return console.log(`ClientSideAspectRenderer: Calculated ${n.length} aspects.`),this._aspectCacheKey=s,this._aspectCache=n,n}calculateCrossAspects(t,e,n=null){const i=[];if(!t||t.length<1||!e||e.length<1)return i;const s=n||this.config.synastryAspectSettings||{},r=s.orb||6,a=s.types||this.defaultAspectDefinitions;for(let n=0;n<t.length;n++)for(let s=0;s<e.length;s++){const l=t[n],o=e[s],g=this._angularDistance(l.position,o.position);for(const t in a){const e=a[t],n=e.angle,s=void 0!==e.orb?e.orb:r;Math.abs(g-n)<=s&&i.push({planet1:l.name,planet2:o.name,type:t,angle:n,angleDiff:g,orb:Math.abs(g-n),p1:l,p2:o,color:e.color||"#888",lineStyle:e.lineStyle,abbr:e.abbr||t.substring(0,3).toUpperCase(),isCross:!0})}}return console.log(`ClientSideAspectRenderer: Calculated ${i.length} cross-aspects (synastry).`),i}render(t,e,n=null){if(!t)return console.error("ClientSideAspectRenderer.render: parentGroup is null or undefined."),[];this.clearGroup(t);const i=[];if(!e||e.length<2)return console.warn("ClientSideAspectRenderer: Not enough planet data with coordinates to render aspects."),this.renderedAspects=[],[];const s=this.calculateAspects(e,n);this.renderedAspects=s,console.log(`ClientSideAspectRenderer: Rendering ${s.length} aspects.`);const r=(n||this.config.aspectSettings||{}).types||{},a={};return e.forEach(t=>{a[t.name]={x:t.x,y:t.y}}),s.forEach(e=>{const n=a[e.planet1],s=a[e.planet2],l=r[e.type],o=!l||!1!==l.enabled,g=l?l.lineStyle:"solid";if(!o||"none"===g)return;if(!n||!s)return void console.warn(`ClientSideAspectRenderer: Could not find coordinates for aspect: ${e.planet1} ${e.type} ${e.planet2}`);const d=(e.planet1||"").toLowerCase().replace(/[^a-z0-9]/g,"-"),c=(e.planet2||"").toLowerCase().replace(/[^a-z0-9]/g,"-");let C="none";"dashed"===g?C="5, 5":"dotted"===g&&(C="1, 3");const h=this.svgUtils.createSVGElement("line",{x1:n.x,y1:n.y,x2:s.x,y2:s.y,class:`aspect-element aspect-line aspect-${e.type} aspect-planet-${d} aspect-planet-${c}`,stroke:e.color||"#888888","stroke-dasharray":C}),F=`${this.astrologyUtils.capitalizeFirstLetter(e.planet1)} ${e.type} ${this.astrologyUtils.capitalizeFirstLetter(e.planet2)} (${e.angleDiff.toFixed(1)}°, orb ${e.orb.toFixed(1)}°)`;this.svgUtils.addTooltip(h,F),t.appendChild(h),i.push(h),this._addAspectIcon(t,e,n,s,F)}),i}renderCrossAspects(t,e,n,i=null){if(!t)return console.error("ClientSideAspectRenderer.renderCrossAspects: parentGroup is null or undefined."),[];this.clearGroup(t);const s=[];if(!e||e.length<1||!n||n.length<1)return console.warn("ClientSideAspectRenderer: Not enough planet data to render cross-aspects."),[];const r=this.calculateCrossAspects(e,n,i);console.log(`ClientSideAspectRenderer: Rendering ${r.length} cross-aspects.`);const a=(i||this.config.synastryAspectSettings||{}).types||{},l={};e.forEach(t=>{l[t.name]={x:t.x,y:t.y}});const o={};return n.forEach(t=>{o[t.name]={x:t.x,y:t.y}}),r.forEach(e=>{const n=e.p1;e.p2;const i=this.config.radius.innermost||90,r=(n.position-90)*(Math.PI/180),l={x:this.centerX+i*Math.cos(r),y:this.centerY+i*Math.sin(r)},g=o[e.planet2],d=a[e.type],c=!d||!1!==d.enabled,C=d?d.lineStyle:"solid";if(!c||"none"===C)return;if(!l||!g)return void console.warn(`ClientSideAspectRenderer: Could not find coordinates for cross-aspect: ${e.planet1} ${e.type} ${e.planet2}`);const h=(e.planet1||"").toLowerCase().replace(/[^a-z0-9]/g,"-"),F=(e.planet2||"").toLowerCase().replace(/[^a-z0-9]/g,"-");let D="none";"dashed"===C?D="5, 5":"dotted"===C&&(D="1, 3");const p=this.svgUtils.createSVGElement("line",{x1:l.x,y1:l.y,x2:g.x,y2:g.y,class:`aspect-element aspect-line aspect-${e.type} aspect-cross aspect-planet-${h} aspect-planet-${F}`,stroke:e.color||"#888888","stroke-dasharray":D}),E=`${this.astrologyUtils.capitalizeFirstLetter(e.planet1)} ${e.type} ${this.astrologyUtils.capitalizeFirstLetter(e.planet2)} (${e.angleDiff.toFixed(1)}°, orb ${e.orb.toFixed(1)}°) [Synastry]`;this.svgUtils.addTooltip(p,E),t.appendChild(p),s.push(p),this._addAspectIcon(t,e,l,g,E)}),this._renderProjectionDots(t,e),s}_renderProjectionDots(t,e){const n=this.config.radius.innermost||90;e.forEach(e=>{const i=e.position,s=(i-90)*(Math.PI/180),r=this.centerX+n*Math.cos(s),a=this.centerY+n*Math.sin(s),l=this.svgUtils.createSVGElement("circle",{cx:r,cy:a,r:3,class:`projection-dot projection-${e.name}`,fill:"none",stroke:e.color||"#666666","stroke-width":"1"}),o=`${this.astrologyUtils.capitalizeFirstLetter(e.name)} projection (${i.toFixed(1)}°)`;this.svgUtils.addTooltip(l,o),t.appendChild(l)})}clearGroup(t){super.clearGroup(t)}getCurrentAspects(){return this.renderedAspects}_addAspectIcon(t,e,n,i,s){const r=(n.x+i.x)/2,a=(n.y+i.y)/2,l=r-this.centerX,o=a-this.centerY;if(Math.sqrt(l*l+o*o)<20)return;let g;g=this.iconProvider?this.iconProvider.getAspectIconPath(e.type):`${this.assetBasePath}/svg/zodiac/zodiac-aspect-${e.type}.svg`;const d=this.svgUtils.createSVGElement("image",{x:r-8,y:a-8,width:16,height:16,href:g,class:`aspect-element aspect-symbol aspect-${e.type}`});d.addEventListener("error",()=>{console.warn(`Failed to load aspect icon for ${e.type} from path: ${g}`);const n=this.defaultAspectDefinitions[e.type],i=n&&n.abbr?n.abbr:e.type.substring(0,3).toUpperCase();let l;this.iconProvider?l=this.iconProvider.createTextFallback(this.svgUtils,{x:r,y:a,size:"12px",color:e.color||"#888888",className:`aspect-element aspect-symbol aspect-${e.type}`},i):(l=this.svgUtils.createSVGElement("text",{x:r,y:a,"text-anchor":"middle","dominant-baseline":"middle","font-size":"12px","font-weight":"bold",class:`aspect-element aspect-symbol aspect-${e.type}`,fill:e.color||"#888888"}),l.textContent=i),this.svgUtils.addTooltip(l,s),t.appendChild(l)}),this.svgUtils.addTooltip(d,s),t.appendChild(d)}}class m{constructor(t,n){this.config=t,this.svgNS=n,this.svgUtils=e.getSvgUtils(),this.iconProvider=e.getIconProvider(),this.iconProvider||console.error("RendererFactory: IconProvider not available. Icons will not render correctly.")}createZodiacRenderer(t={}){return new d({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...t})}createHouseRenderer(t={}){return new c({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...t})}createPlanetRenderer(t={}){const e=new h({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,assetBasePath:t.assetBasePath||this.config.assets?.basePath,...t}),n=new D({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,symbolRenderer:e,assetBasePath:t.assetBasePath||this.config.assets?.basePath,...t}),i=new p({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,symbolRenderer:e,assetBasePath:t.assetBasePath||this.config.assets?.basePath,...t});return new E({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,primaryRenderer:n,secondaryRenderer:i,symbolRenderer:e,assetBasePath:t.assetBasePath||this.config.assets?.basePath,...t})}createAspectRenderer(t={}){return new u({svgNS:this.svgNS,config:this.config,svgUtils:this.svgUtils,iconProvider:this.iconProvider,...t})}}class k{constructor(t){this.config=t.config,this.svgManager=t.svgManager,this.planets=t.planets||{},this.houses=t.houses||[],this.renderers={},this.svgManager&&this.svgManager.getSVG()&&this._initializeRenderers()}_initializeRenderers(){this.rendererFactory=new m(this.config,this.svgManager.svgNS),this.renderers.zodiac=this.rendererFactory.createZodiacRenderer({assetBasePath:this.config.assets.basePath});const t=this.config.getHouseCusps(),e=t&&t.length>0?t:this.houses;this.renderers.house=this.rendererFactory.createHouseRenderer({houseData:e}),this.renderers.planet=this.rendererFactory.createPlanetRenderer({assetBasePath:this.config.assets.basePath}),this.renderers.aspect=this.rendererFactory.createAspectRenderer({assetBasePath:this.config.assets.basePath})}updatePlanets(t){this.planets=t}updateHouses(t){this.houses=t,this.renderers.house&&(this.renderers.house.houseData=this.houses)}renderAll(){if(!this.svgManager.getSVG())return;Object.values(this.svgManager.getAllGroups()).forEach(t=>{t.innerHTML=""}),this.renderZodiac(),this.renderHouses();const t=this.renderPlanets();this.renderAspects(t),console.log("RenderingCoordinator: Chart rendered")}renderZodiac(){return!(!this.config.zodiacSettings.enabled||!this.renderers.zodiac)&&(this.renderers.zodiac.render(this.svgManager.getGroup("zodiac")),!0)}renderHouses(){if(!this.config.houseSettings.enabled||!this.renderers.house)return!1;const t=this.svgManager.getGroup("houses"),e=this.svgManager.getGroup("houseDivisions"),n=this.config.getHouseCusps();return n&&n.length>0&&(this.renderers.house.houseData=n),this.renderers.house.renderDivisions(e,this.config.houseSettings.rotationAngle),this.renderers.house.renderNumbers(t,this.config.houseSettings.rotationAngle),!0}renderPlanets(){if(!this.config.planetSettings.enabled||!this.renderers.planet)return[];const t=!1!==this.config.planetSettings.primaryEnabled,e=!1!==this.config.planetSettings.secondaryEnabled,n=this.renderers.planet.renderAllPlanetTypes({svgManager:this.svgManager,planetsData:this.planets,config:this.config,primaryEnabled:t,secondaryEnabled:e});return console.log(`RenderingCoordinator: Rendered ${n.primary.length} primary planets and ${n.secondary.length} secondary planets`),n.primary}renderAspects(t){return!(!this.config.aspectSettings.enabled||!this.renderers.aspect)&&(this.renderers.aspect.render(this.svgManager.getGroup("aspects"),t),!0)}}class f{constructor(t){this.config=t.config,this.svgManager=t.svgManager}updateConfig(t){return this.config.mergeConfig(t),t.aspectSettings&&this.config.updateAspectSettings(t.aspectSettings),console.log("ChartStateManager: Updated configuration"),!0}togglePlanetVisibility(t,e){return this.config.togglePlanetVisibility(t,e),!0}toggleHousesVisibility(t){return this.config.toggleHousesVisibility(t),!0}toggleAspectsVisibility(t){return this.config.toggleAspectsVisibility(t),!0}setHouseRotation(t){return this.config.houseSettings.rotationAngle=t,!0}setHouseSystem(t){return this.config.setHouseSystem(t)}getAvailableHouseSystems(){return this.config.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.config.getHouseSystem()}togglePrimaryPlanets(t){if(this.config.togglePrimaryPlanetsVisibility(t),this.svgManager){const e=this.svgManager.getGroup("primaryPlanets");e&&(e.style.display=t?"block":"none")}return console.log("ChartStateManager: Primary planets "+(t?"enabled":"disabled")),!0}toggleSecondaryPlanets(t){if(this.config.toggleSecondaryPlanetsVisibility(t),this.svgManager){const e=this.svgManager.getGroup("secondaryPlanets");e&&(e.style.display=t?"block":"none");const n=document.querySelector(".chart-innermost-circle");n&&(n.style.display=t?"block":"none")}return console.log("ChartStateManager: Secondary planets "+(t?"enabled":"disabled")),!0}}class b{constructor(t){if(!t||!t.container)throw new Error("ChartManager: Container element or selector is required");if(this.options=t,this.container="string"==typeof t.container?document.querySelector(t.container):t.container,!this.container)throw new Error(`ChartManager: Container not found: ${t.container}`);this.config=new r(t.config||{}),this.planets=t.planets||{},this.houses=t.houses||[],t.aspectSettings&&this.config.updateAspectSettings(t.aspectSettings),e.initializeServices();const n=e.getSvgUtils();this.svgManager=new l({svgUtils:n}),this.renderingCoordinator=new k({config:this.config,svgManager:this.svgManager,planets:this.planets,houses:this.houses}),this.stateManager=new f({config:this.config,svgManager:this.svgManager}),console.log("ChartManager: Initialized")}_initialize(){const t={width:this.config.svg.width,height:this.config.svg.height,viewBox:this.config.svg.viewBox};this.svgManager.initialize(this.container,t),this.svgManager.createStandardGroups()}render(){return this.svgManager.getSVG()||this._initialize(),this.renderingCoordinator.renderAll(),console.log("ChartManager: Chart rendered"),this}update(t){return t.planets&&(this.planets=t.planets,this.renderingCoordinator.updatePlanets(this.planets)),t.houses&&(this.houses=t.houses,this.renderingCoordinator.updateHouses(this.houses)),t.config&&this.stateManager.updateConfig(t.config),this.render(),this}togglePlanet(t,e){return this.stateManager.togglePlanetVisibility(t,e),this.render(),this}toggleHouses(t){return this.stateManager.toggleHousesVisibility(t),this.render(),this}toggleAspects(t){return this.stateManager.toggleAspectsVisibility(t),this.render(),this}setHouseRotation(t){return this.stateManager.setHouseRotation(t),this.render(),this}destroy(){this.svgManager.getSVG()&&this.svgManager.getSVG().remove(),this.renderingCoordinator=null,this.stateManager=null,this.planets={},this.houses=[],console.log("ChartManager: Destroyed")}updateData(t){return t.planets&&("object"!=typeof t.planets||Array.isArray(t.planets)?console.warn("ChartManager.updateData: Invalid planets data format. Expected object."):(this.planets={...this.planets,...t.planets},this.renderingCoordinator.updatePlanets(this.planets),console.log("ChartManager: Updated planets data."))),t.houses&&(Array.isArray(t.houses)?(this.houses=t.houses,this.renderingCoordinator.updateHouses(this.houses),console.log("ChartManager: Updated houses data.")):console.warn("ChartManager.updateData: Invalid houses data format. Expected array.")),this.render(),this}updateConfig(t){return this.stateManager.updateConfig(t),console.log("ChartManager: Updated configuration."),this.render(),this}setHouseSystem(t){return this.stateManager.setHouseSystem(t),this.render(),this}getAvailableHouseSystems(){return this.stateManager.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.stateManager.getCurrentHouseSystem()}togglePrimaryPlanets(t){return this.stateManager.togglePrimaryPlanets(t),this.render(),this}toggleSecondaryPlanets(t){return this.stateManager.toggleSecondaryPlanets(t),this.render(),this}}class A{constructor(t){if(!t||!t.container)throw new Error("NocturnaWheel: Container element or selector is required");if(this.options=t,this.container="string"==typeof t.container?document.querySelector(t.container):t.container,!this.container)throw new Error(`NocturnaWheel: Container not found: ${t.container}`);this.config=new r(t.config||{}),this.planets=t.planets||{},this.secondaryPlanets=t.secondaryPlanets||{},this.houses=t.houses||[],this.houses.length>0&&this.houses[0]&&"number"==typeof this.houses[0].lon&&(console.log(`NocturnaWheel: Auto-rotating wheel to Ascendant at ${this.houses[0].lon}°`),this.config.houseSettings.rotationAngle=this.houses[0].lon),t.aspectSettings&&this.config.updateAspectSettings(t.aspectSettings),t.primaryAspectSettings&&this.config.updatePrimaryAspectSettings(t.primaryAspectSettings),t.secondaryAspectSettings&&this.config.updateSecondaryAspectSettings(t.secondaryAspectSettings),t.synastryAspectSettings&&this.config.updateSynastryAspectSettings(t.synastryAspectSettings),e.initializeServices();const n=e.getSvgUtils();this.svgManager=new l({svgUtils:n}),this.renderers={},console.log("NocturnaWheel: Initialized")}_initialize(){const t={width:this.config.svg.width,height:this.config.svg.height,viewBox:this.config.svg.viewBox};this.svgManager.initialize(this.container,t),this.svgManager.createStandardGroups(),this._initializeRenderers()}_initializeRenderers(){this.rendererFactory=new m(this.config,this.svgManager.svgNS),this.renderers.zodiac=this.rendererFactory.createZodiacRenderer({assetBasePath:this.config.assets.basePath});const t=this.config.getHouseCusps(),e=t&&t.length>0?t:this.houses;this.renderers.house=this.rendererFactory.createHouseRenderer({houseData:e}),this.renderers.planet=this.rendererFactory.createPlanetRenderer({assetBasePath:this.config.assets.basePath}),this.renderers.aspect=this.rendererFactory.createAspectRenderer({assetBasePath:this.config.assets.basePath})}render(){if(this.svgManager.getSVG()||this._initialize(),Object.values(this.svgManager.getAllGroups()).forEach(t=>{t.innerHTML=""}),this.config.zodiacSettings.enabled&&this.renderers.zodiac.render(this.svgManager.getGroup("zodiac")),this.config.houseSettings.enabled){const t=this.svgManager.getGroup("houses"),e=this.svgManager.getGroup("houseDivisions"),n=this.config.getHouseCusps();n&&n.length>0&&(this.renderers.house.houseData=n),this.renderers.house.renderDivisions(e,this.config.houseSettings.rotationAngle),this.renderers.house.renderNumbers(t,this.config.houseSettings.rotationAngle)}let t=[],e=[];if(this.config.planetSettings.enabled){const n=!1!==this.config.planetSettings.primaryEnabled,i=!1!==this.config.planetSettings.secondaryEnabled;if(n&&Object.keys(this.planets).length>0){const e=this.svgManager.getGroup("primaryPlanets"),n=Object.entries(this.planets).filter(([t,e])=>!1!==this.config.planetSettings.visible?.[t]).map(([t,e])=>({name:t,position:e.lon,color:e.color||"#000000",retrograde:!!e.retrograde}));t=this.renderers.planet.primaryRenderer.render(e,n,0,{config:this.config})}if(i&&Object.keys(this.secondaryPlanets).length>0){const t=this.svgManager.getGroup("secondaryPlanets"),n=Object.entries(this.secondaryPlanets).filter(([t,e])=>!1!==this.config.planetSettings.visible?.[t]).map(([t,e])=>({name:t,position:e.lon,color:e.color||"#000000",retrograde:!!e.retrograde}));e=this.renderers.planet.secondaryRenderer.render(t,n,0,{config:this.config})}}if(this.config.primaryAspectSettings.enabled&&t.length>=2){const e=this.svgManager.getGroup("primaryAspects");this.renderers.aspect.render(e,t,this.config.primaryAspectSettings)}if(this.config.secondaryAspectSettings.enabled&&e.length>=2){const t=this.svgManager.getGroup("secondaryAspects");this.renderers.aspect.render(t,e,this.config.secondaryAspectSettings)}if(this.config.synastryAspectSettings.enabled&&t.length>=1&&e.length>=1){const n=this.svgManager.getGroup("synastryAspects");this.renderers.aspect.renderCrossAspects(n,t,e,this.config.synastryAspectSettings)}return this}update(t){return t.planets&&(this.planets=t.planets),t.houses&&(this.houses=t.houses,this.renderers.house&&(this.renderers.house.houseData=this.houses)),t.config&&this.config.mergeConfig(t.config),this.render(),this}togglePlanet(t,e){return this.config.togglePlanetVisibility(t,e),this.render(),this}toggleHouses(t){return this.config.toggleHousesVisibility(t),this.render(),this}toggleAspects(t){return this.config.toggleAspectsVisibility(t),this.render(),this}togglePrimaryAspects(t){return this.config.togglePrimaryAspectsVisibility(t),this.render(),this}toggleSecondaryAspects(t){return this.config.toggleSecondaryAspectsVisibility(t),this.render(),this}toggleSynastryAspects(t){return this.config.toggleSynastryAspectsVisibility(t),this.render(),this}setHouseRotation(t){return this.config.houseSettings.rotationAngle=t,this.render(),this}destroy(){this.svgManager.getSVG()&&this.svgManager.getSVG().remove(),this.renderers={},this.planets={},this.houses=[],console.log("NocturnaWheel: Destroyed")}updateData(t){if(t.planets)if("object"!=typeof t.planets||Array.isArray(t.planets))console.warn("NocturnaWheel.updateData: Invalid planets data format. Expected object.");else{for(const e in t.planets)this.planets[e]?this.planets[e]={...this.planets[e],...t.planets[e]}:this.planets[e]=t.planets[e];Object.keys(this.planets).forEach(t=>{})}if(t.secondaryPlanets)if("object"!=typeof t.secondaryPlanets||Array.isArray(t.secondaryPlanets))console.warn("NocturnaWheel.updateData: Invalid secondaryPlanets data format. Expected object.");else for(const e in t.secondaryPlanets)this.secondaryPlanets[e]?this.secondaryPlanets[e]={...this.secondaryPlanets[e],...t.secondaryPlanets[e]}:this.secondaryPlanets[e]=t.secondaryPlanets[e];return t.houses&&(Array.isArray(t.houses)?(this.houses=t.houses,this.renderers.house&&(this.renderers.house.houseData=this.houses)):console.warn("NocturnaWheel.updateData: Invalid houses data format. Expected array.")),this.render(),this}updateConfig(t){return this.config.mergeConfig(t),t.aspectSettings&&this.config.updateAspectSettings(t.aspectSettings),this.render(),this}setHouseSystem(t){return this.config.setHouseSystem(t),this.render(),this}getAvailableHouseSystems(){return this.config.getAvailableHouseSystems()}getCurrentHouseSystem(){return this.config.getHouseSystem()}togglePrimaryPlanets(t){this.config.togglePrimaryPlanetsVisibility(t);const e=this.svgManager.getGroup("primaryPlanets");return e&&(e.style.display=t?"block":"none"),this}toggleSecondaryPlanets(t){this.config.toggleSecondaryPlanetsVisibility(t);const e=this.svgManager.getGroup("secondaryPlanets");e&&(e.style.display=t?"block":"none");const n=document.querySelector(".chart-innermost-circle");return n&&(n.style.display=t?"block":"none"),this}}class y{constructor(t,e={}){this.wheelChart=t,this.chart=t.chart,this.options=e,this.svgUtils=new a,console.log("ChartRenderer: Initialized with chart",this.chart)}renderInnerElements(){if(!this.chart||!this.chart.svgManager)return void console.error("ChartRenderer: Invalid chart or missing svgManager");if(!this.chart.svgManager.getSVG())return void console.error("ChartRenderer: SVG not found");const t=this.chart.svgManager.getGroup("zodiac");if(!t)return void console.error("ChartRenderer: Zodiac group not found");const e=t.querySelector(".chart-innermost-circle");e&&t.removeChild(e);const n=this.chart.config.svg.center.x,i=this.chart.config.svg.center.y,s=this.chart.config.radius.innermost,r=this.chart?.secondaryPlanets&&"object"==typeof this.chart.secondaryPlanets&&Object.keys(this.chart.secondaryPlanets).length>0;!1!==this.chart.config.planetSettings.secondaryEnabled&&r&&this.drawInnermostCircle(t,this.svgUtils,n,i,s),console.log("ChartRenderer: Innermost circle rendered (if enabled). Planet rendering is now handled by NocturnaWheel.")}drawInnermostCircle(t,e,n,i,s){const r=e.createSVGElement("circle",{cx:n,cy:i,r:s,fill:"transparent",stroke:"#999","stroke-width":"0.5",class:"zodiac-element chart-innermost-circle"});t.appendChild(r)}renderPlanets(t,e,n,i){return console.warn("ChartRenderer: renderPlanets is deprecated. Planet rendering is now handled by NocturnaWheel."),[]}drawPlanetsAndIcons(t,e,n,i,s){return console.warn("ChartRenderer: drawPlanetsAndIcons is deprecated, use renderPlanets instead"),this.renderPlanets(e,n,i,s)}drawPlanetDot(t,e,n,i,s,r){console.warn("ChartRenderer: drawPlanetDot is deprecated")}drawPlanetIcon(t,e,n,i,s){console.warn("ChartRenderer: drawPlanetIcon is deprecated")}drawConnector(t,e,n,i,s,r,a,l){console.warn("ChartRenderer: drawConnector is deprecated")}}class v{constructor(t,e=null){if(!t||!t.container)throw new Error("WheelChart: Container element or selector is required");this.options=t;const n=t.config||{};if("function"==typeof e?(console.log("WheelChart: Using provided chart factory function"),this.chart=e(t)):(console.log("WheelChart: Using default chart creation"),this.chart=new A({...t,config:n})),!this.chart||"function"!=typeof this.chart.render)throw new Error("WheelChart: Invalid chart instance created. Missing required methods.");this.renderer=new y(this,t),console.log("WheelChart: Initialized")}render(){return this.chart.render(),setTimeout(()=>{try{console.log("WheelChart: Rendering inner elements"),this.renderer.renderInnerElements()}catch(t){console.error("WheelChart: Error rendering inner elements:",t)}},0),console.log("WheelChart: Chart rendered with inner circle"),this}update(t){return this.chart.update(t),this.renderer.renderInnerElements(),this}_delegateToChart(t,...e){if("function"==typeof this.chart[t])return this.chart[t](...e);throw new Error(`WheelChart: Method ${t} not found in NocturnaWheel`)}_delegateAndRedraw(t,...e){const n=this._delegateToChart(t,...e);return this.renderer.renderInnerElements(),n}togglePlanet(t,e){return this._delegateAndRedraw("togglePlanet",t,e)}toggleHouses(t){return this._delegateAndRedraw("toggleHouses",t)}toggleAspects(t){return this._delegateAndRedraw("toggleAspects",t)}togglePrimaryAspects(t){return this._delegateAndRedraw("togglePrimaryAspects",t)}toggleSecondaryAspects(t){return this._delegateAndRedraw("toggleSecondaryAspects",t)}toggleSynastryAspects(t){return this._delegateAndRedraw("toggleSynastryAspects",t)}togglePrimaryPlanets(t){return this._delegateAndRedraw("togglePrimaryPlanets",t)}toggleSecondaryPlanets(t){const e=this._delegateToChart("toggleSecondaryPlanets",t);try{const e="string"==typeof this.options.container?document.querySelector(this.options.container):this.options.container;if(e){const n=e.querySelector(".chart-innermost-circle");n?(console.log("WheelChart: Setting innermost circle display to "+(t?"block":"none")),n.style.display=t?"block":"none"):console.log("WheelChart: No innermost circle found to toggle visibility")}}catch(t){console.error("WheelChart: Error toggling innermost circle visibility:",t)}return this.renderer.renderInnerElements(),e}setHouseRotation(t){return this._delegateAndRedraw("setHouseRotation",t)}destroy(){return this._delegateToChart("destroy")}setHouseSystem(t){return this._delegateAndRedraw("setHouseSystem",t)}get config(){return this.chart.config}updateData(t){return this._delegateAndRedraw("updateData",t)}getCurrentHouseSystem(){return this.chart.getCurrentHouseSystem()}}const w=new n({useInline:!0,basePath:"./assets/svg/zodiac/"});i&&Object.keys(i.planets||{}).length>0?(w.setInlineData(i),console.log("IconProvider: Initialized with inline icons -","Planets:",Object.keys(i.planets).length,"Signs:",Object.keys(i.signs).length,"Aspects:",Object.keys(i.aspects).length)):console.warn("IconProvider: IconData not loaded, will use external paths"),e.register("iconProvider",w),e.initializeServices();var x={ChartManager:b,NocturnaWheel:A,WheelChart:v,ChartConfig:r,ServiceRegistry:e,SvgUtils:a,AstrologyUtils:g,IconProvider:n,IconData:i};t.AstrologyUtils=g,t.ChartConfig=r,t.ChartManager=b,t.IconData=i,t.IconProvider=n,t.NocturnaWheel=A,t.ServiceRegistry=e,t.SvgUtils=a,t.VERSION="0.2.0",t.WheelChart=v,t.default=x,Object.defineProperty(t,"__esModule",{value:!0})});
|
|
2
2
|
//# sourceMappingURL=nocturna-wheel.min.js.map
|