mikaelvesavuori/figmagic

View on GitHub
images/arkit.svg

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1370.5906px" preserveAspectRatio="none" style="width:1898px;height:1370px;" version="1.1" viewBox="0 0 1898 1370" width="1898.4929px" zoomAndPan="magnify"><defs/><g><!--MD5=[e80bd461753d6c5ec111731420959425]
cluster Main--><path d="M24.4399,653.0346 L57.6782,653.0346 A4.3992,4.3992 0 0 1 60.611,655.9674 L67.4542,672.556 L109.4908,672.556 A2.9328,2.9328 0 0 1 112.4236,675.4888 L112.4236,722.444 A2.9328,2.9328 0 0 1 109.4908,725.3768 L24.4399,725.3768 A2.9328,2.9328 0 0 1 21.5071,722.444 L21.5071,655.9674 A2.9328,2.9328 0 0 1 24.4399,653.0346 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="21.5071" x2="67.4542" y1="672.556" y2="672.556"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="33.2383" x="25.4175" y="665.8789">Main</text><!--MD5=[ed1d20ea533a2a0e7df5ba3c35e56ced]
cluster Controllers--><path d="M138.8187,447.7393 L218.9817,447.7393 A4.3992,4.3992 0 0 1 221.9145,450.6721 L228.7576,467.2607 L302.0774,467.2607 A2.9328,2.9328 0 0 1 305.0102,470.1935 L305.0102,524.9695 A2.9328,2.9328 0 0 1 302.0774,527.9022 L138.8187,527.9022 A2.9328,2.9328 0 0 1 135.8859,524.9695 L135.8859,450.6721 A2.9328,2.9328 0 0 1 138.8187,447.7393 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="135.8859" x2="228.7576" y1="467.2607" y2="467.2607"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="80.1629" x="139.7963" y="460.5836">Controllers</text><!--MD5=[6326b81c113285a9d7424a8f38b27174]
cluster Usecases--><path d="M331.4053,369.5316 L397.8819,369.5316 A4.3992,4.3992 0 0 1 400.8147,372.4644 L407.6578,389.053 L480,389.053 A2.9328,2.9328 0 0 1 482.9328,391.9857 L482.9328,548.4318 A2.9328,2.9328 0 0 1 480,551.3646 L331.4053,551.3646 A2.9328,2.9328 0 0 1 328.4725,548.4318 L328.4725,372.4644 A2.9328,2.9328 0 0 1 331.4053,369.5316 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="328.4725" x2="407.6578" y1="389.053" y2="389.053"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="66.4766" x="332.3829" y="382.3759">Usecases</text><!--MD5=[ffbffd7b01f9e7601b10668c327c9f05]
cluster Usecase Interactors - Common--><path d="M512.2607,99.7149 L729.2872,99.7149 A4.3992,4.3992 0 0 1 732.22,102.6477 L739.0631,119.2363 L739.0631,119.2363 A2.9328,2.9328 0 0 1 741.9959,122.169 L741.9959,169.1242 A2.9328,2.9328 0 0 1 739.0631,172.057 L512.2607,172.057 A2.9328,2.9328 0 0 1 509.3279,169.1242 L509.3279,102.6477 A2.9328,2.9328 0 0 1 512.2607,99.7149 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="509.3279" x2="739.0631" y1="119.2363" y2="119.2363"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="217.0265" x="513.2383" y="112.5592">Usecase Interactors - Common</text><!--MD5=[5f4ea9338cfb5a43b94aef063f74a3a1]
cluster Usecase Interactors - Elements--><path d="M509.3279,391.0387 L732.22,391.0387 A4.3992,4.3992 0 0 1 735.1527,393.9715 L741.9959,410.5601 L741.9959,410.5601 A2.9328,2.9328 0 0 1 744.9287,413.4929 L744.9287,652.057 A2.9328,2.9328 0 0 1 741.9959,654.9898 L509.3279,654.9898 A2.9328,2.9328 0 0 1 506.3951,652.057 L506.3951,393.9715 A2.9328,2.9328 0 0 1 509.3279,391.0387 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="506.3951" x2="741.9959" y1="410.5601" y2="410.5601"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="222.8921" x="510.3055" y="403.883">Usecase Interactors - Elements</text><!--MD5=[c9d6d11dd58d037c4533bde0faa05891]
cluster Usecase Interactors - Graphics--><path d="M547.943,195.5193 L768.8798,195.5193 A4.3992,4.3992 0 0 1 771.8126,198.4521 L778.6558,215.0407 L890.5906,215.0407 A2.9328,2.9328 0 0 1 893.5234,217.9735 L893.5234,364.6436 A2.9328,2.9328 0 0 1 890.5906,367.5764 L547.943,367.5764 A2.9328,2.9328 0 0 1 545.0102,364.6436 L545.0102,198.4521 A2.9328,2.9328 0 0 1 547.943,195.5193 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="545.0102" x2="778.6558" y1="215.0407" y2="215.0407"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="220.9369" x="548.9206" y="208.3637">Usecase Interactors - Graphics</text><!--MD5=[bd6a86439868c6e4c6565fa054fa9128]
cluster Usecase Interactors - Tokens--><path d="M515.1935,678.4521 L725.3768,678.4521 A4.3992,4.3992 0 0 1 728.3096,681.3849 L735.1527,697.9735 L735.1527,697.9735 A2.9328,2.9328 0 0 1 738.0855,700.9063 L738.0855,801.6293 A2.9328,2.9328 0 0 1 735.1527,804.5621 L515.1935,804.5621 A2.9328,2.9328 0 0 1 512.2607,801.6293 L512.2607,681.3849 A2.9328,2.9328 0 0 1 515.1935,678.4521 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="512.2607" x2="735.1527" y1="697.9735" y2="697.9735"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="210.1833" x="516.1711" y="691.2965">Usecase Interactors - Tokens</text><!--MD5=[114f4823940f317c08f5bedd633c9afd]
cluster Entities--><path d="M963.9104,23.4623 L1018.6558,23.4623 A4.3992,4.3992 0 0 1 1021.5886,26.3951 L1028.4318,42.9837 L1883.8289,42.9837 A2.9328,2.9328 0 0 1 1886.7617,45.9165 L1886.7617,1355.9267 A2.9328,2.9328 0 0 1 1883.8289,1358.8595 L963.9104,1358.8595 A2.9328,2.9328 0 0 1 960.9776,1355.9267 L960.9776,26.3951 A2.9328,2.9328 0 0 1 963.9104,23.4623 " fill="#FFFFFF" style="stroke: #000000; stroke-width: 1.4663951120162932;"/><line style="stroke: #000000; stroke-width: 1.4663951120162932;" x1="960.9776" x2="1028.4318" y1="42.9837" y2="42.9837"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="54.7454" x="964.888" y="36.3066">Entities</text><ellipse cx="67.0408" cy="696.9066" fill="#F8F8F8" rx="29.8921" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="38.1263" x="47.9777" y="700.3129">index</text><ellipse cx="220.6454" cy="495.681" fill="#F8F8F8" rx="69.1179" ry="16.1698" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="113.4012" x="163.9448" y="499.0873">FigmagicController</text><ellipse cx="405.4724" cy="469.2004" fill="#F8F8F8" rx="61.3583" ry="14.6179" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="94.8269" x="358.0589" y="472.6067">createElements</text><ellipse cx="405.5652" cy="415.3534" fill="#F8F8F8" rx="60.9623" ry="14.5387" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="93.8493" x="358.6405" y="418.7597">createGraphics</text><ellipse cx="405.7096" cy="522.0381" fill="#F8F8F8" rx="56.7076" ry="13.6878" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="83.0957" x="364.1618" y="525.4444">createTokens</text><ellipse cx="625.188" cy="143.8075" fill="#F8F8F8" rx="52.3163" ry="12.8095" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="71.3646" x="589.5057" y="147.2138">createPage</text><ellipse cx="625.1445" cy="438.1531" fill="#F8F8F8" rx="64.9816" ry="15.3426" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="103.6253" x="573.3319" y="441.5595">processElements</text><ellipse cx="625.21" cy="499.3638" fill="#F8F8F8" rx="97.3078" ry="21.8078" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="175.9674" x="537.2263" y="502.7701">processGraphicElementsMap</text><ellipse cx="624.9614" cy="560.3161" fill="#F8F8F8" rx="57.4665" ry="13.8395" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="85.0509" x="582.4359" y="563.7224">writeElements</text><ellipse cx="625.416" cy="618.8673" fill="#F8F8F8" rx="88.7154" ry="20.0893" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="157.3931" x="546.7194" y="622.2736">writeGraphicElementsMap</text><ellipse cx="828.0711" cy="339.1062" fill="#F8F8F8" rx="46.4825" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="61.5886" x="797.2768" y="342.5125">getFileList</text><ellipse cx="828.0999" cy="289.2488" fill="#F8F8F8" rx="29.8921" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="38.1263" x="809.0367" y="292.6551">getIds</text><ellipse cx="828.1058" cy="239.3913" fill="#F8F8F8" rx="49.9388" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="66.4766" x="794.8675" y="242.7977">getIdString</text><ellipse cx="625.2258" cy="284.5889" fill="#F8F8F8" rx="64.574" ry="15.261" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="102.6477" x="573.9019" y="287.9953">processGraphics</text><ellipse cx="625.0699" cy="338.3256" fill="#F8F8F8" rx="57.0862" ry="13.7635" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="84.0733" x="583.0332" y="341.7319">writeGraphics</text><ellipse cx="625.2256" cy="724.6052" fill="#F8F8F8" rx="60.1747" ry="14.3812" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="91.8941" x="579.2786" y="728.0115">processTokens</text><ellipse cx="625.4101" cy="776.4547" fill="#F8F8F8" rx="53.0272" ry="12.9517" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="73.3198" x="588.7502" y="779.861">writeTokens</text><ellipse cx="1273.7521" cy="1218.9541" fill="#F8F8F8" rx="51.2674" ry="12.5997" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="68.4318" x="1239.5362" y="1222.3604">baseConfig</text><ellipse cx="1761.8568" cy="79.0353" fill="#F8F8F8" rx="109.7183" ry="24.2899" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="202.3625" x="1660.6756" y="82.4416">classRepresentsTextOnlyElement</text><ellipse cx="1523.1106" cy="67.5549" fill="#F8F8F8" rx="52.3163" ry="12.8095" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="71.3646" x="1487.4283" y="70.9612">cleanArrays</text><ellipse cx="1040.7272" cy="1244.3608" fill="#F8F8F8" rx="29.8921" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="38.1263" x="1021.664" y="1247.7671">Config</text><ellipse cx="1274.0269" cy="1326.7402" fill="#F8F8F8" rx="72.0717" ry="16.7606" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="120.2444" x="1213.9047" y="1330.1465">createConfiguration</text><ellipse cx="1523.084" cy="234.8164" fill="#F8F8F8" rx="62.5545" ry="14.8571" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="97.7597" x="1474.2042" y="238.2227">createCssString</text><ellipse cx="1040.7868" cy="165.2409" fill="#F8F8F8" rx="64.1676" ry="15.1798" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="101.6701" x="989.9518" y="168.6472">FigmagicElement</text><ellipse cx="1523.0656" cy="291.3178" fill="#F8F8F8" rx="73.7785" ry="17.1019" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="124.1548" x="1460.9882" y="294.7241">getBackgroundColor</text><ellipse cx="1522.9583" cy="901.2189" fill="#F8F8F8" rx="60.9623" ry="14.5387" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="93.8493" x="1476.0336" y="904.6253">getBorderColor</text><ellipse cx="1523.2628" cy="955.1454" fill="#F8F8F8" rx="61.7557" ry="14.6974" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="95.8045" x="1475.3606" y="958.5517">getFileContents</text><ellipse cx="1523.0944" cy="122.3948" fill="#F8F8F8" rx="77.2288" ry="17.792" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="131.9756" x="1457.1066" y="125.8012">getIntersectingValues</text><!--MD5=[e70285eaa0526d6466ef82db4656c283]
entity _getPaddingX--><rect fill="#F8F8F8" height="33.2077" rx="2.9328" ry="2.9328" style="stroke: #000000; stroke-width: 0.48879837067209775;" width="96.7821" x="1474.7047" y="829.002"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="77.2301" x="1484.4807" y="849.6671">getPaddingX</text><!--MD5=[f345c25989ec37881288da3d5cfbccb2]
entity _getPaddingY--><rect fill="#F8F8F8" height="33.2077" rx="2.9328" ry="2.9328" style="stroke: #000000; stroke-width: 0.48879837067209775;" width="95.8045" x="1475.1935" y="771.3238"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="76.2525" x="1484.9695" y="791.9889">getPaddingY</text><ellipse cx="1523.0393" cy="734.0661" fill="#F8F8F8" rx="51.2674" ry="12.5997" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="68.4318" x="1488.8234" y="737.4724">getShadow</text><ellipse cx="1761.5861" cy="573.6451" fill="#F8F8F8" rx="60.5678" ry="14.4598" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="92.8717" x="1715.1503" y="577.0514">getTokenMatch</text><ellipse cx="1523.2308" cy="179.9048" fill="#F8F8F8" rx="64.1676" ry="15.1798" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="101.6701" x="1472.3957" y="183.3111">getUniqueValues</text><ellipse cx="1273.8131" cy="1045.0518" fill="#F8F8F8" rx="86.033" ry="19.5528" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="151.5275" x="1198.0493" y="1048.4581">makeBorderWidthTokens</text><ellipse cx="1273.8797" cy="985.5295" fill="#F8F8F8" rx="67.0365" ry="15.7535" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="108.5132" x="1219.6231" y="988.9358">makeColorTokens</text><ellipse cx="1273.7316" cy="928.506" fill="#F8F8F8" rx="67.866" ry="15.9194" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="110.4684" x="1218.4974" y="931.9123">makeDelayTokens</text><ellipse cx="1273.6004" cy="869.824" fill="#F8F8F8" rx="75.0668" ry="17.3596" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="127.0876" x="1210.0566" y="873.2303">makeDurationTokens</text><ellipse cx="1273.8677" cy="811.6126" fill="#F8F8F8" rx="69.9573" ry="16.3377" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="115.3564" x="1216.1895" y="815.019">makeEasingTokens</text><ellipse cx="1274.0314" cy="752.5985" fill="#F8F8F8" rx="75.4978" ry="17.4458" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="128.0652" x="1209.9988" y="756.0049">makeFontSizeTokens</text><ellipse cx="1273.8612" cy="695.1796" fill="#F8F8F8" rx="64.574" ry="15.261" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="102.6477" x="1222.5374" y="698.5859">makeFontTokens</text><ellipse cx="1273.6387" cy="636.2838" fill="#F8F8F8" rx="82.9259" ry="18.9314" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="144.6843" x="1201.2966" y="639.6901">makeFontWeightTokens</text><ellipse cx="1273.9322" cy="571.7233" fill="#F8F8F8" rx="90.0626" ry="20.3588" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="160.3259" x="1193.7693" y="575.1296">makeLetterSpacingTokens</text><ellipse cx="1273.9293" cy="508.1789" fill="#F8F8F8" rx="80.2837" ry="18.403" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="138.8187" x="1204.52" y="511.5853">makeLineHeightTokens</text><ellipse cx="1273.9448" cy="446.0069" fill="#F8F8F8" rx="84.6983" ry="19.2859" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="148.5947" x="1199.6474" y="449.4132">makeMediaQueryTokens</text><ellipse cx="1273.8394" cy="385.0815" fill="#F8F8F8" rx="73.3506" ry="17.0163" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="123.1772" x="1212.2508" y="388.4878">makeOpacityTokens</text><ellipse cx="1273.7332" cy="326.4045" fill="#F8F8F8" rx="70.8004" ry="16.5063" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="117.3116" x="1215.0774" y="329.8108">makeRadiusTokens</text><ellipse cx="1273.7785" cy="267.8555" fill="#F8F8F8" rx="73.7785" ry="17.1019" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="124.1548" x="1211.7011" y="271.2618">makeShadowTokens</text><ellipse cx="1273.7785" cy="1164.3117" fill="#F8F8F8" rx="73.7785" ry="17.1019" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="124.1548" x="1211.7011" y="1167.718">makeSpacingTokens</text><ellipse cx="1273.7332" cy="1105.5491" fill="#F8F8F8" rx="70.8004" ry="16.5063" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="117.3116" x="1215.0774" y="1108.9554">makeZindexTokens</text><ellipse cx="1523.2165" cy="516.9773" fill="#F8F8F8" rx="80.2837" ry="18.403" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="138.8187" x="1453.8071" y="520.3836">parseBackgroundColor</text><ellipse cx="1523.1669" cy="406.7922" fill="#F8F8F8" rx="67.0365" ry="15.7535" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="108.5132" x="1468.9102" y="410.1985">parseBorderColor</text><ellipse cx="1523.0203" cy="349.8668" fill="#F8F8F8" rx="70.8004" ry="16.5063" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="117.3116" x="1464.3645" y="353.2731">parseBorderRadius</text><ellipse cx="1523.0188" cy="576.5712" fill="#F8F8F8" rx="67.866" ry="15.9194" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="110.4684" x="1467.7846" y="579.9775">parseBorderWidth</text><ellipse cx="1523.3144" cy="1326.6425" fill="#F8F8F8" rx="54.4753" ry="13.2413" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="77.2301" x="1484.6993" y="1330.0488">parseCliArgs</text><ellipse cx="1273.5939" cy="130.0752" fill="#F8F8F8" rx="78.9706" ry="18.1404" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="135.8859" x="1205.6509" y="133.4815">parseCssFromElement</text><ellipse cx="1523.2027" cy="683.166" fill="#F8F8F8" rx="53.386" ry="13.0234" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="74.2974" x="1486.0541" y="686.5723">parseHeight</text><ellipse cx="1522.9925" cy="631.6046" fill="#F8F8F8" rx="57.0862" ry="13.7635" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="84.0733" x="1480.9558" y="635.0109">parsePadding</text><ellipse cx="1523.1027" cy="460.4495" fill="#F8F8F8" rx="56.7076" ry="13.6878" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="83.0957" x="1481.5549" y="463.8558">parseShadow</text><ellipse cx="1273.9898" cy="199.466" fill="#F8F8F8" rx="120.4257" ry="26.4314" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="224.8473" x="1161.5662" y="202.8723">parseTypographyStylingFromElement</text><ellipse cx="1273.8677" cy="71.5719" fill="#F8F8F8" rx="69.9573" ry="16.3377" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="115.3564" x="1216.1895" y="74.9782">processNestedCss</text><ellipse cx="1761.7002" cy="955.0284" fill="#F8F8F8" rx="80.7226" ry="18.4908" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="139.7963" x="1691.8021" y="958.4348">sliceOutObjectFromFile</text><ellipse cx="1040.811" cy="724.2793" fill="#F8F8F8" rx="28.5096" ry="12.5889" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="36.1711" x="1022.7255" y="727.6856">Token</text><ellipse cx="1761.591" cy="517.0433" fill="#F8F8F8" rx="58.6175" ry="14.0697" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="87.9837" x="1717.5992" y="520.4496">updateParsing</text><ellipse cx="1273.8737" cy="1270.6933" fill="#F8F8F8" rx="58.2322" ry="13.9927" style="stroke: #383838; stroke-width: 0.48879837067209775;"/><text fill="#000000" font-family="Tahoma, sans-serif" font-size="11.7312" lengthAdjust="spacingAndGlyphs" textLength="87.0061" x="1230.3707" y="1274.0996">validateConfig</text><!--MD5=[1a5ad59192fdc81389105f48518e93ce]
link cleanArrays to classRepresentsTextOnlyElement--><path d="M1574.5369,69.9568 C1596.5132,71.042 1623.2016,72.3715 1649.4208,73.6717 " fill="none" id="cleanArrays-&gt;classRepresentsTextOnlyElement" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1654.3185,73.9161,1645.7326,69.559,1649.437,73.665,1645.3309,77.3694,1654.3185,73.9161" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[21e238070261533280eec9f33fe5e091]
link Config to baseConfig--><path d="M1069.9796,1241.3641 C1107.6758,1237.22 1174.9637,1229.8226 1221.6538,1224.6902 " fill="none" id="Config-&gt;baseConfig" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1226.6688,1224.1378,1217.4979,1221.2059,1221.8098,1224.6686,1218.3471,1228.9804,1226.6688,1224.1378" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[4a496dfbe29387ae312870dd7e483a9d]
link Config to createConfiguration--><path d="M1059.7735,1254.4209 C1081.5251,1266.0132 1119.3385,1285.1308 1153.5642,1297.2709 C1172.9206,1304.1387 1194.6037,1309.9908 1214.1165,1314.619 " fill="none" id="Config-&gt;createConfiguration" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1219.024,1315.7692,1211.3522,1309.9515,1214.2654,1314.652,1209.5648,1317.5652,1219.024,1315.7692" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[846553e3ea1e134117c976006c031ed4]
link Config to validateConfig--><path d="M1069.5202,1247.6647 C1105.5544,1251.7784 1169.1862,1259.0429 1215.6904,1264.3523 " fill="none" id="Config-&gt;validateConfig" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1220.6957,1264.9242,1212.4018,1260.0341,1215.8397,1264.3657,1211.5082,1267.8037,1220.6957,1264.9242" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[594ff9a34a74a2e9c01b029559b0f874]
link createConfiguration to parseCliArgs--><path d="M1345.9943,1326.5988 C1383.2603,1326.5988 1428.3373,1326.5988 1463.5503,1326.5988 " fill="none" id="createConfiguration-&gt;parseCliArgs" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1468.6729,1326.5988,1459.8745,1322.6884,1463.7849,1326.5988,1459.8745,1330.5092,1468.6729,1326.5988" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[a0158201e805ee7219892e1de70e5960]
link createElements to createPage--><path d="M461.1822,462.6359 C472.6289,458.6659 483.4363,452.4709 490.7536,442.8513 C506.2172,422.5232 485.2243,234.8872 498.5743,213.1161 C517.2269,182.6933 554.3247,164.5882 583.3926,154.5385 " fill="none" id="createElements-&gt;createPage" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="588.3519,152.8766,578.7669,151.9656,583.7174,154.4302,581.2528,159.3808,588.3519,152.8766" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[125096df3920c540cd18eee64bd470c9]
link createElements to processElements--><path d="M458.7803,461.7532 C490.515,457.1897 531.1782,451.3408 564.2454,446.5857 " fill="none" id="createElements-&gt;processElements" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="569.4853,445.832,560.2194,443.2157,564.6472,446.5288,561.3342,450.9566,569.4853,445.832" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[8561b25636a49c82461615f0073a78f0]
link createElements to processGraphicElementsMap--><path d="M459.3346,476.5823 C482.6522,479.8309 510.7083,483.7403 537.0105,487.4043 " fill="none" id="createElements-&gt;processGraphicElementsMap" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="541.8995,488.0857,533.725,482.9984,537.0583,487.4111,532.6456,490.7443,541.8995,488.0857" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[ba991f2d9e42c752e72ea379236e6d2b]
link createElements to writeElements--><path d="M458.7451,477.0144 C470.6943,481.0802 482.3433,487.2547 490.7536,496.6191 C502.0272,509.1725 486.6418,521.8392 498.5743,533.7678 C515.3489,550.5356 539.8886,557.9242 562.8367,560.8326 " fill="none" id="createElements-&gt;writeElements" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="567.7061,561.3869,559.4067,556.506,562.8495,560.8338,558.5217,564.2765,567.7061,561.3869" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[20b7661d6335f6a841b6950a634418b2]
link createElements to writeGraphicElementsMap--><path d="M459.9857,476.4846 C471.7618,480.569 483.0188,486.8842 490.7536,496.6191 C503.2336,512.3272 485.6026,571.2538 498.5743,586.558 C508.3845,598.1328 521.7336,605.849 536.0789,610.9364 " fill="none" id="createElements-&gt;writeGraphicElementsMap" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="540.9786,612.5631,533.8607,606.0794,536.3396,611.0228,531.3962,613.5018,540.9786,612.5631" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[250af0a5938fe4302c6aaad3cd02ea95]
link createGraphics to createPage--><path d="M409.964,400.712 C418.6451,364.6338 445.2738,270.7747 498.5743,213.1161 C523.5969,186.0464 561.6518,167.0811 589.3188,155.8974 " fill="none" id="createGraphics-&gt;createPage" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="594.0122,154.0301,584.3921,153.6365,589.4681,155.8311,587.2735,160.9071,594.0122,154.0301" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[22b05a1c2866d869d212575558cb2fe9]
link createGraphics to processGraphics--><path d="M415.3388,400.8059 C429.6284,377.9682 460.3992,334.2208 498.5743,311.8534 C516.9395,301.09 539.0517,294.5499 559.5725,290.5809 " fill="none" id="createGraphics-&gt;processGraphics" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="564.4741,289.6717,555.1108,287.4287,559.6679,290.5617,556.5348,295.1187,564.4741,289.6717" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[163edf993cf6397f6736819145469053]
link createGraphics to writeGraphics--><path d="M440.6674,403.4112 C480.5895,389.2399 546.5646,365.8069 587.5884,351.2505 " fill="none" id="createGraphics-&gt;writeGraphics" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="592.2174,349.5984,582.6178,348.8555,587.6108,351.233,585.2333,356.226,592.2174,349.5984" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[b6ca0689385c7f179de4b31f551963ed]
link createTokens to createPage--><path d="M458.5701,516.9512 C470.9729,513.1806 482.8849,506.9181 490.7536,496.6191 C509.8842,471.578 482.1898,240.0293 498.5743,213.1161 C517.1291,182.6346 554.2387,164.5393 583.3359,154.4994 " fill="none" id="createTokens-&gt;createPage" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="588.3001,152.8473,578.7158,151.9285,583.6644,154.3972,581.1957,159.3457,588.3001,152.8473" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[092b4615a0347e40450b4cc78e12278f]
link createTokens to processTokens--><path d="M413.6388,535.7778 C427.1511,561.4084 459.1078,617.1539 498.5743,653.0346 C525.8552,677.8372 563.2257,697.6864 590.1028,710.0921 " fill="none" id="createTokens-&gt;processTokens" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="594.6584,712.1704,588.2757,704.9619,590.211,710.1423,585.0306,712.0777,594.6584,712.1704" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[b8f430627af767ca22b39d5df52cf59b]
link createTokens to writeTokens--><path d="M407.824,535.9703 C411.9133,576.1945 429.4983,693.2901 498.5743,750.7943 C517.573,766.6099 543.7413,773.4863 567.2769,776.202 " fill="none" id="createTokens-&gt;writeTokens" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="572.2558,776.7202,563.9091,771.9207,567.394,776.2146,563.1002,779.6995,572.2558,776.7202" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[94080402db329286e3cb0fad82d23893]
link FigmagicController to createElements--><path d="M279.4226,487.2899 C301.265,484.145 326.0686,480.5729 347.8113,477.4416 " fill="none" id="FigmagicController-&gt;createElements" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="352.6895,476.7397,343.4236,474.1234,347.8515,477.4365,344.5384,481.8643,352.6895,476.7397" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[93fb1ca76bb43e2ed089d7baa9df75d9]
link FigmagicController to createGraphics--><path d="M246.9351,480.48 C266.6278,469.1702 294.7914,453.8415 320.6517,442.8513 C333.4856,437.3973 347.7976,432.3676 360.9238,428.1473 " fill="none" id="FigmagicController-&gt;createGraphics" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="365.7004,426.6291,356.1309,425.5667,361.0419,428.1093,358.4993,433.0202,365.7004,426.6291" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[20c913071ef86b77abc11a24428abae5]
link FigmagicController to createTokens--><path d="M279.4226,503.9932 C302.533,507.3209 328.9574,511.1257 351.5643,514.3811 " fill="none" id="FigmagicController-&gt;createTokens" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="356.6253,515.1104,348.4744,509.9855,351.7873,514.4135,347.3593,517.7263,356.6253,515.1104" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[cf1ea1266e6a4b3f0637fb0c686ac307]
link FigmagicElement to parseCssFromElement--><path d="M1094.9572,157.0998 C1126.866,152.2411 1167.7882,146.0138 1202.3365,140.7544 " fill="none" id="FigmagicElement-&gt;parseCssFromElement" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1207.3906,139.9821,1198.1016,137.449,1202.559,140.7222,1199.2858,145.1796,1207.3906,139.9821" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[76e1dc550e810c684815fd3736513951]
link FigmagicElement to parseTypographyStylingFromElement--><path d="M1095.2505,173.1519 C1117.1389,176.3878 1143.231,180.2493 1168.5898,184.0033 " fill="none" id="FigmagicElement-&gt;parseTypographyStylingFromElement" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1173.644,184.756,1165.5099,179.6044,1168.8083,184.0432,1164.3694,187.3416,1173.644,184.756" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[76e6a92e8b8f374d57b61910e92441db]
link FigmagicElement to processNestedCss--><path d="M1062.1295,150.6965 C1083.8811,135.9153 1119.71,113.2937 1153.5642,99.7149 C1172.2265,92.2265 1193.3621,86.4098 1212.6012,82.0399 " fill="none" id="FigmagicElement-&gt;processNestedCss" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1217.4501,80.9646,1208.013,79.0559,1212.6785,82.0249,1209.7095,86.6905,1217.4501,80.9646" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[63adacb7a1907391f979680dce41d23b]
link getFileContents to sliceOutObjectFromFile--><path d="M1584.6941,955.112 C1612.2525,955.112 1645.354,955.112 1675.3662,955.112 " fill="none" id="getFileContents-&gt;sliceOutObjectFromFile" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1680.5475,955.112,1671.7491,951.2016,1675.6595,955.112,1671.7491,959.0224,1680.5475,955.112" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[c556e76eb5c46cfa737a8abbcc22cdf8]
link <b>index</b> to Config--><path d="M72.7641,709.7538 C97.3254,772.189 214.8376,1043.0957 404.7251,1043.0957 C404.7251,1043.0957 404.7251,1043.0957 829.002,1043.0957 C935.1534,1043.0957 1008.8114,1178.3453 1031.9413,1227.1674 " fill="none" id="&lt;b&gt;index&lt;/b&gt;-&gt;Config" style="stroke: #000000; stroke-width: 0.9775967413441955;"/><polygon fill="#000000" points="1034.1409,1231.8833,1033.9571,1222.2569,1032.0708,1227.4554,1026.8723,1225.5691,1034.1409,1231.8833" style="stroke: #000000; stroke-width: 0.9775967413441955;"/><!--MD5=[21c58dea4558e048381d962987728dee]
link <b>index</b> to FigmagicController--><path d="M76.968,685.0323 C102.0997,651.6308 173.0884,557.2839 204.3598,515.7243 " fill="none" id="&lt;b&gt;index&lt;/b&gt;-&gt;FigmagicController" style="stroke: #000000; stroke-width: 0.9775967413441955;"/><polygon fill="#000000" points="207.4382,511.6331,199.0231,516.3116,204.4989,515.5386,205.2719,521.0144,207.4382,511.6331" style="stroke: #000000; stroke-width: 0.9775967413441955;"/><!--MD5=[f1ec0688d735fa77b4814640e682d56f]
link parseBackgroundColor to getTokenMatch--><path d="M1579.5422,530.442 C1619.9267,540.1222 1674.0758,553.1008 1712.6224,562.3381 " fill="none" id="parseBackgroundColor-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1717.7157,563.5591,1710.0778,557.6969,1712.9636,562.4144,1708.2462,565.3002,1717.7157,563.5591" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[5335b6b2c652e4acd5af13c2cd8a7c74]
link parseBackgroundColor to updateParsing--><path d="M1603.5128,517.1487 C1634.2191,517.1487 1668.8554,517.1487 1697.7825,517.1487 " fill="none" id="parseBackgroundColor-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1702.7389,517.1487,1693.9405,513.2383,1697.8509,517.1487,1693.9405,521.0591,1702.7389,517.1487" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[0a06a9a8df843542840338129aa2c240]
link parseBorderColor to getTokenMatch--><path d="M1572.7283,417.2168 C1583.7263,421.3637 1594.6754,427.1052 1603.2587,435.0305 C1642.1181,470.9191 1612.0277,509.0669 1652.1385,543.5438 C1665.7662,555.2554 1683.5878,562.4642 1700.8326,566.8937 " fill="none" id="parseBorderColor-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1705.6815,568.0707,1698.0444,562.2075,1700.9296,566.9253,1696.2118,569.8106,1705.6815,568.0707" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[73e7421c397d6b8e93c2689c02ebe35d]
link parseBorderColor to updateParsing--><path d="M1562.747,419.3352 C1575.7686,423.9094 1590.2859,429.3546 1603.2587,435.0305 C1650.2224,455.5738 1702.602,484.0854 1733.5332,501.5404 " fill="none" id="parseBorderColor-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1737.9324,504.0332,1732.1938,496.3021,1733.6761,501.6298,1728.3483,503.1121,1737.9324,504.0332" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[aadacc07bff0ca96f1723ae92431d048]
link parseBorderRadius to getTokenMatch--><path d="M1575.5829,361.1927 C1585.8379,365.4452 1595.7409,371.2815 1603.2587,379.3075 C1655.3157,434.8917 1597.833,490.1494 1652.1385,543.5438 C1664.8277,556.016 1682.1898,563.4516 1699.3173,567.8547 " fill="none" id="parseBorderRadius-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1704.1369,569.018,1696.4997,563.1548,1699.385,567.8726,1694.6672,570.7579,1704.1369,569.018" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[f52673767be89d4af12f108e271e5780]
link parseBorderRadius to updateParsing--><path d="M1567.7132,362.9132 C1579.6399,367.3026 1592.2998,372.787 1603.2587,379.3075 C1661.2008,413.8059 1717.8916,470.7666 1744.6582,499.463 " fill="none" id="parseBorderRadius-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1748.0798,503.1524,1744.9688,494.0407,1744.7579,499.5668,1739.2318,499.3558,1748.0798,503.1524" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[da66cfc3b0115f64e5ed3dc8a46cc27e]
link parseBorderWidth to getTokenMatch--><path d="M1591.2342,575.9492 C1624.0424,575.5425 1663.3418,575.0556 1695.8371,574.6529 " fill="none" id="parseBorderWidth-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1700.989,574.5893,1692.1465,570.7797,1696.1013,574.6452,1692.2359,578.6,1700.989,574.5893" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[7ac226b5b2f7ac920b0e4e1454d8184f]
link parseBorderWidth to updateParsing--><path d="M1570.2452,565.1428 C1612.2428,554.5574 1673.8509,539.0283 1715.5161,528.5259 " fill="none" id="parseBorderWidth-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1720.5018,527.2697,1711.0171,525.614,1715.7603,528.4572,1712.917,533.2004,1720.5018,527.2697" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[1259c5e986a316ae31cfc77d7102ff96]
link parseCssFromElement to getBackgroundColor--><path d="M1346.053,137.5674 C1363.1511,142.0839 1380.3862,149.191 1394.053,160.3259 C1432.6094,191.7556 1406.2729,227.3988 1442.9328,261.0183 C1450.0497,267.5389 1458.7112,272.7104 1467.666,276.7967 " fill="none" id="parseCssFromElement-&gt;getBackgroundColor" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1472.3682,278.8301,1465.8668,271.7285,1467.8878,276.8761,1462.7402,278.8971,1472.3682,278.8301" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[eeafb02aba5e1ea6a025c011e6e55410]
link parseCssFromElement to getBorderColor--><path d="M1350.5597,134.5955 C1367.1593,139.2196 1383.0354,147.1185 1394.053,160.3259 C1496.0065,282.5646 1345.5055,749.0718 1442.9328,874.9491 C1448.769,882.4912 1456.844,887.8993 1465.6033,891.7735 " fill="none" id="parseCssFromElement-&gt;getBorderColor" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1470.5401,893.7717,1463.8461,886.8513,1466.0077,891.9415,1460.9176,894.1031,1470.5401,893.7717" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[d027cd07cefd42a5dc6e760662606f19]
link parseCssFromElement to getFileContents--><path d="M1350.6086,134.5662 C1367.1984,139.1804 1383.0648,147.0892 1394.053,160.3259 C1503.3287,291.9886 1338.5352,793.1614 1442.9328,928.7169 C1448.6811,936.176 1456.6094,941.5488 1465.2415,945.4143 " fill="none" id="parseCssFromElement-&gt;getFileContents" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1470.1002,947.4105,1463.4474,940.4505,1465.5788,945.5533,1460.4759,947.6848,1470.1002,947.4105" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[01c6526ee3900d5bb7ddfcd66866ed1d]
link parseCssFromElement to _getPaddingX--><path d="M1350.501,134.6444 C1367.1006,139.2684 1382.9963,147.1479 1394.053,160.3259 C1488.1466,272.466 1354.2648,700.7873 1442.9328,817.2709 C1449.6782,826.1377 1459.4444,832.2369 1469.8265,836.4318 " fill="none" id="parseCssFromElement-&gt;_getPaddingX" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1474.6265,838.2276,1467.7627,831.4755,1470.0501,836.5104,1465.0152,838.7978,1474.6265,838.2276" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[e5f3f6dbd3413c2c25960a7c9790b473]
link parseCssFromElement to _getPaddingY--><path d="M1350.4424,134.7031 C1367.042,139.3173 1382.9475,147.187 1394.053,160.3259 C1480.2965,262.3772 1361.6261,653.5655 1442.9328,759.5927 C1449.7857,768.5357 1459.7084,774.6633 1470.2273,778.8601 " fill="none" id="parseCssFromElement-&gt;_getPaddingY" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1475.0859,780.656,1468.2008,773.9257,1470.5041,778.9533,1465.4765,781.2566,1475.0859,780.656" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[10c60f6c37e793e5924ff54cf225bad0]
link parseCssFromElement to getShadow--><path d="M1350.3642,134.7617 C1366.9735,139.376 1382.8986,147.2358 1394.053,160.3259 C1473.3849,253.4811 1366.5141,613.1976 1442.9328,708.7576 C1450.1084,717.7359 1460.4904,723.5888 1471.3711,727.3906 " fill="none" id="parseCssFromElement-&gt;getShadow" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1476.0635,728.8981,1468.8821,722.4849,1471.4096,727.4036,1466.4909,729.9311,1476.0635,728.8981" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[1f197a9036e4512f2782b244f87b8ad0]
link parseCssFromElement to parseBackgroundColor--><path d="M1349.8265,135.2407 C1366.4456,139.8452 1382.5173,147.5682 1394.053,160.3259 C1492.4872,269.1519 1351.0191,372.4644 1442.9328,486.8432 C1447.899,493.0196 1454.2729,497.9379 1461.253,501.8552 " fill="none" id="parseCssFromElement-&gt;parseBackgroundColor" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1465.6619,504.1672,1459.6752,496.6265,1461.3298,501.9033,1456.053,503.5579,1465.6619,504.1672" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[4b521323f4e383ae251d42282441e79f]
link parseCssFromElement to parseBorderColor--><path d="M1349.2008,135.8273 C1365.8297,140.4122 1382.0676,147.9886 1394.053,160.3259 C1463.5308,231.8566 1376.5246,304.9222 1442.9328,379.3075 C1448.9841,386.0823 1456.7853,391.1853 1465.1438,395.0175 " fill="none" id="parseCssFromElement-&gt;parseBorderColor" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1469.8265,397.0216,1463.2878,389.9542,1465.3359,395.0911,1460.199,397.1391,1469.8265,397.0216" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[2b6f9449c25ecb17def86b7861e10db9]
link parseCssFromElement to parseBorderRadius--><path d="M1348.233,136.3943 C1364.9988,140.9597 1381.5299,148.3796 1394.053,160.3259 C1447.9576,211.7475 1391.824,266.4538 1442.9328,320.6517 C1449.2969,327.3971 1457.3523,332.6077 1465.877,336.6159 " fill="none" id="parseCssFromElement-&gt;parseBorderRadius" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1470.6477,338.7275,1464.1916,331.5845,1466.1798,336.7449,1461.0194,338.7331,1470.6477,338.7275" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[8b9727d932795775649b2c8ec8456d12]
link parseCssFromElement to parseBorderWidth--><path d="M1350.0318,135.0452 C1366.6509,139.6595 1382.664,147.4411 1394.053,160.3259 C1509.165,290.6102 1334.136,412.8264 1442.9328,548.4318 C1448.642,555.5428 1456.2672,560.8717 1464.5475,564.8652 " fill="none" id="parseCssFromElement-&gt;parseBorderWidth" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1469.2106,566.9484,1462.7774,559.7849,1464.7491,564.9516,1459.5824,566.9233,1469.2106,566.9484" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[a0bfb092551f4d35bf133022cb5d1ad7]
link parseCssFromElement to parseHeight--><path d="M1350.2859,134.8301 C1366.8953,139.4444 1382.8399,147.2847 1394.053,160.3259 C1466.4733,244.5947 1373.1519,571.461 1442.9328,657.9226 C1449.8542,666.4961 1459.679,672.217 1470.0709,676.0248 " fill="none" id="parseCssFromElement-&gt;parseHeight" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1474.8807,677.6417,1467.7956,671.1221,1470.2495,676.078,1465.2937,678.5319,1474.8807,677.6417" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[a16f1fb0aba3c28f4524f660ab8ab05e]
link parseCssFromElement to parsePadding--><path d="M1350.1784,134.9181 C1366.7878,139.5324 1382.7715,147.3434 1394.053,160.3259 C1524.5523,310.4065 1317.9959,450.3935 1442.9328,605.1324 C1449.5022,613.2709 1458.6623,618.9194 1468.4383,622.8327 " fill="none" id="parseCssFromElement-&gt;parsePadding" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1473.2676,624.6188,1466.3638,617.9077,1468.6811,622.9289,1463.6599,625.2462,1473.2676,624.6188" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[90dbb4b5cef95ece5cd468d25089d592]
link parseCssFromElement to parseShadow--><path d="M1349.5821,135.4656 C1366.2012,140.0603 1382.3413,147.7344 1394.053,160.3259 C1478.4978,251.1446 1361.3328,341.6505 1442.9328,435.0305 C1449.7075,442.7858 1458.8578,448.1929 1468.5263,451.9576 " fill="none" id="parseCssFromElement-&gt;parseShadow" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1473.3067,453.6772,1466.3425,447.0287,1468.7051,452.0288,1463.705,454.3914,1473.3067,453.6772" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[cbddb2cc8864dbb0d18e63b589daae7a]
link parseHeight to getTokenMatch--><path d="M1559.257,673.5348 C1573.1682,669.2745 1589.1617,663.8908 1603.2587,657.9226 C1650.8383,637.7714 1703.2375,608.1893 1733.9731,590.0197 " fill="none" id="parseHeight-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1738.343,587.4242,1728.782,588.5603,1734.1417,589.9226,1732.7795,595.2823,1738.343,587.4242" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[5e0075700990f475dfe641647c9c7238]
link parseHeight to updateParsing--><path d="M1568.1825,676.2232 C1580.6566,672.4595 1593.4925,666.7083 1603.2587,657.9226 C1643.1837,622.0233 1611.5389,582.5831 1652.1385,547.4542 C1666.1279,535.3466 1684.6045,528.0489 1702.3283,523.6595 " fill="none" id="parseHeight-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1707.3043,522.4971,1697.8451,520.7009,1702.5456,523.6142,1699.6324,528.3147,1707.3043,522.4971" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[931459c5decd8399b8b1ca5edcdd25a0]
link parsePadding to getTokenMatch--><path d="M1563.6758,621.8737 C1604.8326,611.8377 1669.266,596.1287 1713.1503,585.4319 " fill="none" id="parsePadding-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1718.1263,584.2177,1708.6515,582.5054,1713.3777,585.3769,1710.5063,590.1031,1718.1263,584.2177" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[57a4e9efd80c524c8db3a85732d05e99]
link parsePadding to updateParsing--><path d="M1565.9242,622.2354 C1578.5939,618.2322 1592.0945,612.6833 1603.2587,605.1324 C1631.0908,586.3048 1623.8468,565.5886 1652.1385,547.4542 C1668.3177,537.0819 1688.0652,530.2064 1706.2582,525.6723 " fill="none" id="parsePadding-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1711.3418,524.4552,1701.8723,522.7141,1706.5897,525.6,1703.7039,530.3174,1711.3418,524.4552" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[8e17c023ba1e252e6a596550cfe64776]
link parseShadow to getTokenMatch--><path d="M1565.4745,469.6688 C1578.2615,473.6847 1591.9479,479.258 1603.2587,486.8432 C1630.8953,505.3696 1624.0521,525.7056 1652.1385,543.5438 C1667.9853,553.6081 1687.2049,560.3858 1705.0363,564.9268 " fill="none" id="parseShadow-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1710.022,566.1488,1702.4024,560.2628,1705.2735,564.9892,1700.5471,567.8604,1710.022,566.1488" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[1d8b57c787cab796d3ef4fe7af010d33]
link parseShadow to updateParsing--><path d="M1563.9397,470.0021 C1605.5267,479.9707 1670.664,495.58 1714.4603,506.0784 " fill="none" id="parseShadow-&gt;updateParsing" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1719.4265,507.2691,1711.789,501.4064,1714.6745,506.124,1709.9569,509.0096,1719.4265,507.2691" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[f2f3e6a18f9d90c98cd0628d58f4ee8c]
link parseTypographyStylingFromElement to getFileContents--><path d="M1366.2697,216.4204 C1376.9743,221.8851 1386.6819,229.0802 1394.053,238.5336 C1488.6061,359.7849 1348.6729,807.2368 1442.9328,928.7169 C1448.7006,936.1554 1456.6485,941.5176 1465.2807,945.38 " fill="none" id="parseTypographyStylingFromElement-&gt;getFileContents" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1470.1491,947.3743,1463.4962,940.4143,1465.6277,945.5172,1460.5248,947.6486,1470.1491,947.3743" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[6f0b64f56d47e712764fd786223e0707]
link parseTypographyStylingFromElement to getTokenMatch--><path d="M1366.3185,216.3813 C1377.0134,221.8558 1386.7112,229.0607 1394.053,238.5336 C1495.6057,369.4436 1322.0041,869.238 1442.9328,982.4847 C1494.9409,1031.1905 1544.5149,1022.8116 1603.2587,982.4847 C1671.9642,935.3215 1738.431,669.2383 1756.0961,593.7913 " fill="none" id="parseTypographyStylingFromElement-&gt;getTokenMatch" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1757.2888,588.6941,1751.4829,596.3748,1756.179,593.4544,1759.0994,598.1505,1757.2888,588.6941" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[85692be134d066bcedf93bce82393b42]
link processElements to FigmagicElement--><path d="M688.1704,433.9855 C747.6005,427.5021 837.4524,410.4528 901.3442,365.6212 C969.1845,318.022 1014.2371,225.8053 1031.6285,185.2155 " fill="none" id="processElements-&gt;FigmagicElement" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="1033.613,180.5328,1026.5875,187.1164,1031.7112,185.0356,1033.792,190.1593,1033.613,180.5328" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[20a99131679788d7f4eb2ae61cf1907a]
link processGraphics to getFileList--><path d="M676.7668,293.7385 C700.0932,298.431 728.0261,304.668 752.7495,311.8534 C767.3274,316.0961 783.1537,321.7662 796.4393,326.8497 " fill="none" id="processGraphics-&gt;getFileList" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="801.2119,328.6974,794.4079,321.885,796.6508,326.9399,791.5959,329.1828,801.2119,328.6974" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[b15f1e1d35a2399b09b9481442c59065]
link processGraphics to getIds--><path d="M689.4393,286.0253 C723.7628,286.8562 764.8238,287.8534 793.1076,288.5475 " fill="none" id="processGraphics-&gt;getIds" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="798.2351,288.6648,789.5343,284.5419,793.3486,288.5461,789.3444,292.3604,798.2351,288.6648" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[415eb3b1ebe17f3bce8d22f05754a7da]
link processGraphics to getIdString--><path d="M672.4927,274.1084 C706.3703,266.5222 751.9527,256.3161 784.8264,248.9646 " fill="none" id="processGraphics-&gt;getIdString" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="789.9891,247.811,780.5493,245.9155,785.219,248.878,782.2565,253.5477,789.9891,247.811" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[601036bb1a2f92d02342e831b8be1354]
link processNestedCss to cleanArrays--><path d="M1343.6774,70.2794 C1382.0969,69.6635 1429.354,68.9206 1465.5837,68.3438 " fill="none" id="processNestedCss-&gt;cleanArrays" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1470.8432,68.2656,1461.9898,64.4813,1465.9557,68.3354,1462.1016,72.3012,1470.8432,68.2656" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[475d8a7a89bfcd076a2c6e9f03efcc0c]
link processNestedCss to createCssString--><path d="M1340.9206,76.1743 C1359.71,80.2607 1379.1055,87.4069 1394.053,99.7149 C1434.5841,133.0802 1404.1124,171.9104 1442.9328,207.2505 C1450.6069,214.2305 1460.1483,219.4509 1469.9242,223.3418 " fill="none" id="processNestedCss-&gt;createCssString" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1474.734,225.1503,1467.8757,218.3927,1470.159,223.4294,1465.1222,225.7127,1474.734,225.1503" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[de6ecbc2333cbf47c89a30217e5e6cfa]
link processNestedCss to getIntersectingValues--><path d="M1326.6379,82.0204 C1365.5658,90.0269 1419.0208,101.0151 1460.1971,109.4713 " fill="none" id="processNestedCss-&gt;getIntersectingValues" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1465.1633,110.488,1457.3246,104.8972,1460.3741,109.5106,1455.7607,112.5601,1465.1633,110.488" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[3757203b8182817e7aecdc393520c075]
link processNestedCss to getUniqueValues--><path d="M1335.8957,78.8334 C1355.389,83.0175 1376.4562,89.5479 1394.053,99.7149 C1421.4648,115.5519 1416.4399,134.2045 1442.9328,151.5275 C1452.5523,157.8232 1463.7556,162.9263 1474.646,166.9735 " fill="none" id="processNestedCss-&gt;getUniqueValues" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1479.2896,168.6452,1472.3394,161.9821,1474.6915,166.9871,1469.6864,169.3391,1479.2896,168.6452" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[0c2e3f364d95cd7f4dbe44f38af526d0]
link processTokens to Token--><path d="M685.3989,724.3992 C773.7668,724.3992 937.1467,724.3992 1006.8171,724.3992 " fill="none" id="processTokens-&gt;Token" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><polygon fill="#000000" points="1012.0668,724.3992,1003.2684,720.4888,1007.1788,724.3992,1003.2684,728.3096,1012.0668,724.3992" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[5e8052e1c3065b8a7f75447e0673530b]
link Token to makeBorderWidthTokens--><path d="M1042.5874,737.3914 C1046.664,782.8321 1066.5971,936.0763 1153.5642,1013.7678 C1164.3959,1023.4411 1177.8574,1030.1846 1191.798,1034.8722 " fill="none" id="Token-&gt;makeBorderWidthTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1196.5393,1036.3835,1189.3393,1029.9911,1191.8811,1034.9025,1186.9697,1037.4443,1196.5393,1036.3835" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[060381e5f69c3fec5a2bdabe2d42d96d]
link Token to makeColorTokens--><path d="M1043.7996,737.0952 C1051.2196,776.4503 1079.3743,897.3292 1153.5642,957.0672 C1167.9642,968.6576 1186.3136,975.6474 1204.2819,979.8227 " fill="none" id="Token-&gt;makeColorTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1209.336,980.9274,1201.5799,975.2226,1204.5616,979.8801,1199.9042,982.8618,1209.336,980.9274" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[bfe110a9102803657e4f9c4b0cad9d91]
link Token to makeDelayTokens--><path d="M1045.8232,736.9633 C1057.3491,769.5231 1092.8065,857.1011 1153.5642,900.3666 C1168.5409,911.0302 1186.9882,917.7258 1204.8587,921.9167 " fill="none" id="Token-&gt;makeDelayTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1209.8835,923.0332,1202.144,917.3058,1205.1121,921.9719,1200.446,924.94,1209.8835,923.0332" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[e96aa8adc6876879c422e8b00d26ccac]
link Token to makeDurationTokens--><path d="M1049.8998,736.6485 C1066.5874,760.3738 1106.7079,812.638 1153.5642,839.7556 C1169.1177,848.7544 1187.3206,855.1117 1204.7511,859.591 " fill="none" id="Token-&gt;makeDurationTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1209.6489,860.8062,1202.0628,854.8771,1204.9071,859.6197,1200.1645,862.4639,1209.6489,860.8062" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[8303d4920480f1ae5f59adce111b756f]
link Token to makeEasingTokens--><path d="M1058.0921,734.704 C1079.3939,747.6435 1118.0187,769.7548 1153.5642,783.055 C1172.6762,790.2051 1194.2029,795.9769 1213.6473,800.3985 " fill="none" id="Token-&gt;makeEasingTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1218.545,801.4934,1210.8059,795.7656,1213.7737,800.4319,1209.1074,803.3997,1218.545,801.4934" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[07309b2cfc61a349d56650cf5fe85e29]
link Token to makeFontSizeTokens--><path d="M1068.1515,727.6516 C1100.5393,731.6226 1156.5947,738.4961 1201.8672,744.0469 " fill="none" id="Token-&gt;makeFontSizeTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1206.765,744.6481,1198.4995,739.71,1201.9123,744.0615,1197.5609,747.4742,1206.765,744.6481" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[1b7966ea8eb3a1ed38a486923e9d01e1]
link Token to makeFontTokens--><path d="M1068.1515,721.0353 C1102.9442,716.6214 1165.0411,708.744 1211.7507,702.8197 " fill="none" id="Token-&gt;makeFontTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1216.7853,702.1804,1207.5652,699.4072,1211.9361,702.7949,1208.5484,707.1659,1216.7853,702.1804" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[1bcf2a892c9ea251b1147f1017206ad1]
link Token to makeFontWeightTokens--><path d="M1058.5613,714.3847 C1080.0489,702.0181 1118.5369,680.9919 1153.5642,667.6986 C1170.8481,661.1379 1190.0481,655.4434 1207.9088,650.7774 " fill="none" id="Token-&gt;makeFontWeightTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1212.9043,649.4879,1203.4099,647.888,1208.1698,650.7033,1205.3546,655.4632,1212.9043,649.4879" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[d61b69138a995338fad7b4dcdf2accad]
link Token to makeLetterSpacingTokens--><path d="M1049.5967,712.1968 C1066.0399,688.0013 1106.1996,633.8131 1153.5642,605.1324 C1167.0648,596.9597 1182.6281,590.7412 1197.9568,586.0282 " fill="none" id="Token-&gt;makeLetterSpacingTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1202.7079,584.6126,1193.1591,583.3791,1198.0237,586.0092,1195.3936,590.8739,1202.7079,584.6126" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[35ac82a72499f1bb3f75a5d757f66ac5]
link Token to makeLineHeightTokens--><path d="M1045.5202,711.7882 C1056.567,678.2175 1091.3499,586.078 1153.5642,539.6334 C1166.6248,529.8848 1182.4619,523.1677 1198.2697,518.5408 " fill="none" id="Token-&gt;makeLineHeightTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1203.1772,517.1712,1193.6518,515.7677,1198.4688,518.4841,1195.7525,523.3011,1203.1772,517.1712" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[a683ea1e230617bf828a4b001e7011f2]
link Token to makeMediaQueryTokens--><path d="M1043.5356,711.6533 C1050.3299,670.953 1077.1259,542.9836 1153.5642,478.0448 C1165.2367,468.1251 1179.6855,461.2292 1194.4473,456.4429 " fill="none" id="Token-&gt;makeMediaQueryTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1199.4623,454.8982,1189.9028,453.7503,1194.7908,456.3367,1192.2043,461.2247,1199.4623,454.8982" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[c5a5aef55e537c6581d81bbe2de777f1]
link Token to makeOpacityTokens--><path d="M1042.167,711.4548 C1044.8749,663.9876 1060.8587,497.9086 1153.5642,414.501 C1166.136,403.1922 1182.3642,396.0733 1198.7682,391.635 " fill="none" id="Token-&gt;makeOpacityTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1203.8615,390.3446,1194.3729,388.7111,1199.1228,391.5432,1196.2907,396.2931,1203.8615,390.3446" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[d9a9a86e2cf1cecdac39faefed05e1a3]
link Token to makeRadiusTokens--><path d="M1041.3263,711.6738 C1040.7886,659.2169 1046.0481,457.7294 1153.5642,355.8452 C1166.3707,343.7132 1183.3515,336.3617 1200.4692,331.9625 " fill="none" id="Token-&gt;makeRadiusTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1205.2986,330.7992,1195.8286,329.0606,1200.5468,331.9452,1197.6622,336.6634,1205.2986,330.7992" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[3cecc04d95805b6410d29e2355ef413b]
link Token to makeShadowTokens--><path d="M1043.2228,711.5457 C1051.5031,646.9276 1091.565,358.2599 1153.5642,297.1894 C1165.4713,285.4582 1181.2692,278.1654 1197.4582,273.688 " fill="none" id="Token-&gt;makeShadowTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1202.4929,272.3878,1192.9942,270.8135,1197.7617,273.6159,1194.9593,278.3834,1202.4929,272.3878" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[06482ea79a44545ae27b4c7255c288ba]
link Token to makeSpacingTokens--><path d="M1043.3597,737.1715 C1052.1385,800.1111 1093.657,1076.5686 1153.5642,1134.9898 C1165.5299,1146.6604 1181.3475,1153.9337 1197.5462,1158.4081 " fill="none" id="Token-&gt;makeSpacingTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1202.5809,1159.7084,1195.0311,1153.7331,1197.8464,1158.493,1193.0865,1161.3082,1202.5809,1159.7084" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><!--MD5=[52dd4996ed0d1bd050353cac0c98c764]
link Token to makeZindexTokens--><path d="M1041.5022,737.3123 C1041.7173,788.7397 1049.7141,980.856 1153.5642,1077.3116 C1166.3218,1089.1611 1183.1071,1096.3317 1200.0391,1100.6048 " fill="none" id="Token-&gt;makeZindexTokens" style="stroke: #000000; stroke-width: 0.48879837067209775; stroke-dasharray: 7.0,7.0;"/><polygon fill="#000000" points="1204.8196,1101.7349,1197.1484,1095.9163,1200.0611,1100.6172,1195.3601,1103.5299,1204.8196,1101.7349" style="stroke: #000000; stroke-width: 0.48879837067209775;"/><script type="text/plantuml"><![CDATA[MD5=[be3a8388265097699a9b020bbb790dd6]
@startuml

scale max 1920 width
left to right direction

skinparam nodesep 25
skinparam ranksep 50
skinparam monochrome true
skinparam shadowing false
skinparam defaultFontName Tahoma
skinparam defaultFontSize 12
skinparam roundCorner 6
skinparam dpi 150
skinparam arrowColor black
skinparam arrowThickness 0.5
skinparam packageTitleAlignment left

skinparam usecase {
  borderThickness 0.5
}

skinparam rectangle {
  borderThickness 0.5
}

skinparam component {
  borderThickness 1
}


package "Main" {
  (<b>index</b>)
}


package "Controllers" {
  (FigmagicController)
}

package "Usecases" {
  (createElements)
  (createGraphics)
  (createTokens)
}

package "Usecase Interactors -Common" {
  (createPage)
}

package "Usecase Interactors -Elements" {
  (processElements)
  (processGraphicElementsMap)
  (writeElements)
  (writeGraphicElementsMap)
}

package "Usecase Interactors -Graphics" {
  (getFileList)
  (getIds)
  (getIdString)
  (processGraphics)
  (writeGraphics)
}

package "Usecase Interactors -Tokens" {
  (processTokens)
  (writeTokens)
}

package "Entities" {
  (baseConfig)
  (classRepresentsTextOnlyElement)
  (cleanArrays)
  (Config)
  (createConfiguration)
  (createCssString)
  (FigmagicElement)
  (getBackgroundColor)
  (getBorderColor)
  (getFileContents)
  (getIntersectingValues)
  rectangle "getPaddingX" as _getPaddingX
  rectangle "getPaddingY" as _getPaddingY
  (getShadow)
  (getTokenMatch)
  (getUniqueValues)
  (makeBorderWidthTokens)
  (makeColorTokens)
  (makeDelayTokens)
  (makeDurationTokens)
  (makeEasingTokens)
  (makeFontSizeTokens)
  (makeFontTokens)
  (makeFontWeightTokens)
  (makeLetterSpacingTokens)
  (makeLineHeightTokens)
  (makeMediaQueryTokens)
  (makeOpacityTokens)
  (makeRadiusTokens)
  (makeShadowTokens)
  (makeSpacingTokens)
  (makeZindexTokens)
  (parseBackgroundColor)
  (parseBorderColor)
  (parseBorderRadius)
  (parseBorderWidth)
  (parseCliArgs)
  (parseCssFromElement)
  (parseHeight)
  (parsePadding)
  (parseShadow)
  (parseTypographyStylingFromElement)
  (processNestedCss)
  (sliceOutObjectFromFile)
  (Token)
  (updateParsing)
  (validateConfig)
}

(cleanArrays) ..> (classRepresentsTextOnlyElement)
(Config) ..> (baseConfig)
(Config) ..> (createConfiguration)
(Config) ..> (validateConfig)
(createConfiguration) ..> (parseCliArgs)
(createElements) --> (createPage)
(createElements) --> (processElements)
(createElements) --> (processGraphicElementsMap)
(createElements) --> (writeElements)
(createElements) --> (writeGraphicElementsMap)
(createGraphics) --> (createPage)
(createGraphics) --> (processGraphics)
(createGraphics) --> (writeGraphics)
(createTokens) --> (createPage)
(createTokens) --> (processTokens)
(createTokens) --> (writeTokens)
(FigmagicController) --> (createElements)
(FigmagicController) --> (createGraphics)
(FigmagicController) --> (createTokens)
(FigmagicElement) ..> (parseCssFromElement)
(FigmagicElement) ..> (parseTypographyStylingFromElement)
(FigmagicElement) ..> (processNestedCss)
(getFileContents) ..> (sliceOutObjectFromFile)
(<b>index</b>) ---[thickness=1]> (Config)
(<b>index</b>) --[thickness=1]> (FigmagicController)
(parseBackgroundColor) ..> (getTokenMatch)
(parseBackgroundColor) ..> (updateParsing)
(parseBorderColor) ..> (getTokenMatch)
(parseBorderColor) ..> (updateParsing)
(parseBorderRadius) ..> (getTokenMatch)
(parseBorderRadius) ..> (updateParsing)
(parseBorderWidth) ..> (getTokenMatch)
(parseBorderWidth) ..> (updateParsing)
(parseCssFromElement) ..> (getBackgroundColor)
(parseCssFromElement) ..> (getBorderColor)
(parseCssFromElement) ..> (getFileContents)
(parseCssFromElement) ..> _getPaddingX
(parseCssFromElement) ..> _getPaddingY
(parseCssFromElement) ..> (getShadow)
(parseCssFromElement) ..> (parseBackgroundColor)
(parseCssFromElement) ..> (parseBorderColor)
(parseCssFromElement) ..> (parseBorderRadius)
(parseCssFromElement) ..> (parseBorderWidth)
(parseCssFromElement) ..> (parseHeight)
(parseCssFromElement) ..> (parsePadding)
(parseCssFromElement) ..> (parseShadow)
(parseHeight) ..> (getTokenMatch)
(parseHeight) ..> (updateParsing)
(parsePadding) ..> (getTokenMatch)
(parsePadding) ..> (updateParsing)
(parseShadow) ..> (getTokenMatch)
(parseShadow) ..> (updateParsing)
(parseTypographyStylingFromElement) ..> (getFileContents)
(parseTypographyStylingFromElement) ..> (getTokenMatch)
(processElements) ----> (FigmagicElement)
(processGraphics) ..> (getFileList)
(processGraphics) ..> (getIds)
(processGraphics) ..> (getIdString)
(processNestedCss) ..> (cleanArrays)
(processNestedCss) ..> (createCssString)
(processNestedCss) ..> (getIntersectingValues)
(processNestedCss) ..> (getUniqueValues)
(processTokens) ----> (Token)
(Token) ..> (makeBorderWidthTokens)
(Token) ..> (makeColorTokens)
(Token) ..> (makeDelayTokens)
(Token) ..> (makeDurationTokens)
(Token) ..> (makeEasingTokens)
(Token) ..> (makeFontSizeTokens)
(Token) ..> (makeFontTokens)
(Token) ..> (makeFontWeightTokens)
(Token) ..> (makeLetterSpacingTokens)
(Token) ..> (makeLineHeightTokens)
(Token) ..> (makeMediaQueryTokens)
(Token) ..> (makeOpacityTokens)
(Token) ..> (makeRadiusTokens)
(Token) ..> (makeShadowTokens)
(Token) ..> (makeSpacingTokens)
(Token) ..> (makeZindexTokens)

@enduml


' View and edit on https://arkit.pro
]]></script></g></svg>