vector_salad 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +16 -0
  3. data/Gemfile +9 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +89 -0
  6. data/Rakefile +2 -0
  7. data/bin/vector_salad +72 -0
  8. data/examples/birthday.png +0 -0
  9. data/examples/birthday.rb +45 -0
  10. data/examples/birthday.svg +630 -0
  11. data/examples/boolean_operations.png +0 -0
  12. data/examples/boolean_operations.rb +23 -0
  13. data/examples/boolean_operations.svg +151 -0
  14. data/examples/bp_logo.png +0 -0
  15. data/examples/bp_logo.rb +18 -0
  16. data/examples/bp_logo.svg +25 -0
  17. data/examples/bunny_card.png +0 -0
  18. data/examples/bunny_card.rb +219 -0
  19. data/examples/bunny_card.svg +134 -0
  20. data/examples/chill.png +0 -0
  21. data/examples/chill.rb +16 -0
  22. data/examples/chill.svg +86 -0
  23. data/examples/circle_line_segments.png +0 -0
  24. data/examples/circle_line_segments.rb +11 -0
  25. data/examples/circle_line_segments.svg +28 -0
  26. data/examples/circles.png +0 -0
  27. data/examples/circles.rb +14 -0
  28. data/examples/circles.svg +11 -0
  29. data/examples/clip_operations.png +0 -0
  30. data/examples/clip_operations.rb +14 -0
  31. data/examples/clip_operations.svg +8 -0
  32. data/examples/cog_menu.png +0 -0
  33. data/examples/cog_menu.rb +32 -0
  34. data/examples/cog_menu.svg +37 -0
  35. data/examples/cubic_bezier_handles.png +0 -0
  36. data/examples/cubic_bezier_handles.rb +21 -0
  37. data/examples/cubic_bezier_handles.svg +14 -0
  38. data/examples/cubic_circle.png +0 -0
  39. data/examples/cubic_circle.rb +26 -0
  40. data/examples/cubic_circle.svg +29 -0
  41. data/examples/face.png +0 -0
  42. data/examples/face.rb +4 -0
  43. data/examples/face.svg +10 -0
  44. data/examples/flower.png +0 -0
  45. data/examples/flower.rb +23 -0
  46. data/examples/flower.svg +207 -0
  47. data/examples/fox.png +0 -0
  48. data/examples/fox.rb +110 -0
  49. data/examples/fox.svg +31 -0
  50. data/examples/fresh_vector_salad_gui.png +0 -0
  51. data/examples/galaxies.png +0 -0
  52. data/examples/galaxies.rb +60 -0
  53. data/examples/galaxies.svg +5806 -0
  54. data/examples/gold_stars.png +0 -0
  55. data/examples/gold_stars.rb +9 -0
  56. data/examples/gold_stars.svg +12 -0
  57. data/examples/paths.png +0 -0
  58. data/examples/paths.rb +87 -0
  59. data/examples/paths.svg +13 -0
  60. data/examples/pepsi_logo.png +0 -0
  61. data/examples/pepsi_logo.rb +21 -0
  62. data/examples/pepsi_logo.svg +10 -0
  63. data/examples/polygons.png +0 -0
  64. data/examples/polygons.rb +9 -0
  65. data/examples/polygons.svg +13 -0
  66. data/examples/quadratic_bezier_handle.png +0 -0
  67. data/examples/quadratic_bezier_handle.rb +18 -0
  68. data/examples/quadratic_bezier_handle.svg +13 -0
  69. data/examples/rects.png +0 -0
  70. data/examples/rects.rb +10 -0
  71. data/examples/rects.svg +11 -0
  72. data/examples/simple_path.png +0 -0
  73. data/examples/simple_path.rb +29 -0
  74. data/examples/simple_path.svg +8 -0
  75. data/examples/space.png +0 -0
  76. data/examples/space.rb +171 -0
  77. data/examples/space.svg +46453 -0
  78. data/examples/spiro_nodes.png +0 -0
  79. data/examples/spiro_nodes.rb +20 -0
  80. data/examples/spiro_nodes.svg +13 -0
  81. data/examples/squares.png +0 -0
  82. data/examples/squares.rb +14 -0
  83. data/examples/squares.svg +11 -0
  84. data/examples/stars.png +0 -0
  85. data/examples/stars.rb +3 -0
  86. data/examples/stars.svg +30006 -0
  87. data/examples/transforms.png +0 -0
  88. data/examples/transforms.rb +58 -0
  89. data/examples/transforms.svg +121 -0
  90. data/examples/triangles.png +0 -0
  91. data/examples/triangles.rb +8 -0
  92. data/examples/triangles.svg +9 -0
  93. data/lib/contracts_contracts.rb +32 -0
  94. data/lib/vector_salad.rb +5 -0
  95. data/lib/vector_salad/canvas.rb +27 -0
  96. data/lib/vector_salad/dsl.rb +41 -0
  97. data/lib/vector_salad/export_with_magic.rb +29 -0
  98. data/lib/vector_salad/exporters/base_exporter.rb +92 -0
  99. data/lib/vector_salad/exporters/svg_exporter.rb +174 -0
  100. data/lib/vector_salad/interpolate.rb +57 -0
  101. data/lib/vector_salad/magic.rb +17 -0
  102. data/lib/vector_salad/mixins/at.rb +28 -0
  103. data/lib/vector_salad/shape_proxy.rb +14 -0
  104. data/lib/vector_salad/standard_shapes/basic_shape.rb +29 -0
  105. data/lib/vector_salad/standard_shapes/circle.rb +64 -0
  106. data/lib/vector_salad/standard_shapes/clip.rb +51 -0
  107. data/lib/vector_salad/standard_shapes/custom.rb +28 -0
  108. data/lib/vector_salad/standard_shapes/difference.rb +28 -0
  109. data/lib/vector_salad/standard_shapes/exclusion.rb +28 -0
  110. data/lib/vector_salad/standard_shapes/flip.rb +24 -0
  111. data/lib/vector_salad/standard_shapes/hexagon.rb +15 -0
  112. data/lib/vector_salad/standard_shapes/intersection.rb +28 -0
  113. data/lib/vector_salad/standard_shapes/iso_tri.rb +39 -0
  114. data/lib/vector_salad/standard_shapes/jitter.rb +33 -0
  115. data/lib/vector_salad/standard_shapes/move.rb +24 -0
  116. data/lib/vector_salad/standard_shapes/multi_path.rb +82 -0
  117. data/lib/vector_salad/standard_shapes/n.rb +112 -0
  118. data/lib/vector_salad/standard_shapes/oval.rb +51 -0
  119. data/lib/vector_salad/standard_shapes/path.rb +249 -0
  120. data/lib/vector_salad/standard_shapes/pentagon.rb +15 -0
  121. data/lib/vector_salad/standard_shapes/polygon.rb +37 -0
  122. data/lib/vector_salad/standard_shapes/rect.rb +34 -0
  123. data/lib/vector_salad/standard_shapes/rotate.rb +24 -0
  124. data/lib/vector_salad/standard_shapes/scale.rb +34 -0
  125. data/lib/vector_salad/standard_shapes/square.rb +34 -0
  126. data/lib/vector_salad/standard_shapes/transform.rb +20 -0
  127. data/lib/vector_salad/standard_shapes/triangle.rb +15 -0
  128. data/lib/vector_salad/standard_shapes/union.rb +28 -0
  129. data/lib/vector_salad/version.rb +3 -0
  130. data/vector_salad.gemspec +34 -0
  131. metadata +262 -0
@@ -0,0 +1,14 @@
1
+ <svg version="1.1"
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ width="400"
4
+ height="300">
5
+
6
+ <rect x="0" y="0" width="400" height="300" fill="none"/>
7
+ <path d="M 20 280 C 150 100, 350 50, 380 280" fill="red" stroke="black" stroke-width="4"/>
8
+ <path d="M 20 280 L 150 100" stroke="blue" stroke-width="2"/>
9
+ <circle cx="150" cy="100" r="4" fill="blue"/>
10
+ <path d="M 380 280 L 350 50" stroke="blue" stroke-width="2"/>
11
+ <circle cx="350" cy="50" r="4" fill="blue"/>
12
+ <circle cx="20" cy="280" r="4" fill="green"/>
13
+ <circle cx="380" cy="280" r="4" fill="green"/>
14
+ </svg>
Binary file
@@ -0,0 +1,26 @@
1
+ square(240, fill: :none)
2
+
3
+ cubic = Circle.new(100,
4
+ fill: :red,
5
+ stroke: :black,
6
+ stroke_width: 4
7
+ )[120, 120]
8
+ canvas << cubic
9
+
10
+ handle = []
11
+ nodes = cubic.to_path.nodes
12
+ (nodes + [nodes[0]]).each do |node|
13
+ if handle.size == 2
14
+ path(*handle.map(&:at), stroke: :blue, stroke_width: 2)
15
+ handle = handle[1..1]
16
+ end
17
+ if handle.size == 1 && handle[0].type == :cubic && node.type == :cubic
18
+ handle = []
19
+ end
20
+ handle << node.clone
21
+ end
22
+
23
+ nodes.each do |node|
24
+ color = node.type == :node ? :green : :blue
25
+ circle(4, fill: color)[*node.at]
26
+ end
@@ -0,0 +1,29 @@
1
+ <svg version="1.1"
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ width="240"
4
+ height="240">
5
+
6
+ <rect x="0" y="0" width="240" height="240" fill="none"/>
7
+ <circle cx="120" cy="120" r="100" fill="red" stroke="black" stroke-width="4"/>
8
+ <path d="M 220 120 L 220 175.1915024494 Z" stroke="blue" stroke-width="2"/>
9
+ <path d="M 175.1915024494 220 L 120 220 Z" stroke="blue" stroke-width="2"/>
10
+ <path d="M 120 220 L 64.80849755060001 220 Z" stroke="blue" stroke-width="2"/>
11
+ <path d="M 20 175.1915024494 L 20 120 Z" stroke="blue" stroke-width="2"/>
12
+ <path d="M 20 120 L 20 64.80849755060001 Z" stroke="blue" stroke-width="2"/>
13
+ <path d="M 64.80849755060001 20 L 120 20 Z" stroke="blue" stroke-width="2"/>
14
+ <path d="M 120 20 L 175.1915024494 20 Z" stroke="blue" stroke-width="2"/>
15
+ <path d="M 220 64.80849755060001 L 220 120 Z" stroke="blue" stroke-width="2"/>
16
+ <circle cx="220" cy="120" r="4" fill="green"/>
17
+ <circle cx="220" cy="175.1915024494" r="4" fill="blue"/>
18
+ <circle cx="175.1915024494" cy="220" r="4" fill="blue"/>
19
+ <circle cx="120" cy="220" r="4" fill="green"/>
20
+ <circle cx="64.80849755060001" cy="220" r="4" fill="blue"/>
21
+ <circle cx="20" cy="175.1915024494" r="4" fill="blue"/>
22
+ <circle cx="20" cy="120" r="4" fill="green"/>
23
+ <circle cx="20" cy="64.80849755060001" r="4" fill="blue"/>
24
+ <circle cx="64.80849755060001" cy="20" r="4" fill="blue"/>
25
+ <circle cx="120" cy="20" r="4" fill="green"/>
26
+ <circle cx="175.1915024494" cy="20" r="4" fill="blue"/>
27
+ <circle cx="220" cy="64.80849755060001" r="4" fill="blue"/>
28
+ <circle cx="220" cy="120" r="4" fill="green"/>
29
+ </svg>
data/examples/face.png ADDED
Binary file
data/examples/face.rb ADDED
@@ -0,0 +1,4 @@
1
+ oval(80, 100, fill: "pink")[200, 200]
2
+ oval(8, 6, fill: "darkgreen")[170, 200]
3
+ oval(8, 5, fill: "brown")[230, 200]
4
+ oval(70, 40, fill: "fuchsia")[200, 140]
data/examples/face.svg ADDED
@@ -0,0 +1,10 @@
1
+ <svg version="1.1"
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ width="280"
4
+ height="300">
5
+
6
+ <ellipse cx="200" cy="200" rx="80" ry="100" fill="pink"/>
7
+ <ellipse cx="170" cy="200" rx="8" ry="6" fill="darkgreen"/>
8
+ <ellipse cx="230" cy="200" rx="8" ry="5" fill="brown"/>
9
+ <ellipse cx="200" cy="140" rx="70" ry="40" fill="fuchsia"/>
10
+ </svg>
Binary file
@@ -0,0 +1,23 @@
1
+ def petal(size, **options)
2
+ path(
3
+ N.n(0, 0),
4
+ N.s(-size / 10.0, size / 2.0),
5
+ N.n(0, size),
6
+ N.s(size / 10.0, size / 2.0),
7
+ **options
8
+ )
9
+ end
10
+
11
+ square(600, fill: "rgb(25, 0, 45)") # background
12
+
13
+ (layers = 8).times do |layer|
14
+ (repeats = 25).times do |repeat|
15
+ red = 25 + (230.0 / layers * (layer + 1)) # linear
16
+ blue = 75 + (180.0 / (layers**2) * ((layer + 1)**2)) # exponential
17
+ angle = 360.0 / repeats
18
+ twist = angle / 2.0
19
+
20
+ petal(250 - 250.0 / layers * layer, fill: "rgb(#{red}, 0, #{blue})")
21
+ .rotate(angle * repeat + twist * layer).move(300, 300)
22
+ end
23
+ end
@@ -0,0 +1,207 @@
1
+ <svg version="1.1"
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ width="600"
4
+ height="600">
5
+
6
+ <rect x="0" y="0" width="600" height="600" fill="rgb(25, 0, 45)"/>
7
+ <path d="M 300.0 300.0 C 283.5503700125099 339.47911196997615, 275.0 382.23096203252584, 275.0 425.0 C 275.0 467.76903796747416, 283.5503700125099 510.52088803002385, 300.0 550.0 C 316.4496299874901 510.52088803002385, 325.0 467.76903796747416, 325.0 425.0 C 325.0 382.23096203252584, 316.4496299874901 339.47911196997615, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
8
+ <path d="M 300.0 300.0 C 273.98130524881714 333.75758395792934, 254.81530509101034 372.7740842791789, 244.0 414.0 C 233.08288118403888 455.6140105557539, 230.6859472437891 499.44365974889297, 237.0 542.0 C 263.06999249476274 507.9033229856376, 282.2338459956405 468.54898097490656, 293.0 427.0 C 303.70496629330074 385.6871560004377, 306.0997417088054 342.2390877477099, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
9
+ <path d="M 300.0 300.0 C 266.1559487598631 326.2774643906793, 237.72847726675505 359.49993107539603, 217.0 397.0 C 196.2521876592961 434.5350481754391, 183.23654880105406 476.3220992466372, 179.0 519.0 C 212.29686208051578 492.01428938579477, 240.31042514701 458.53466523315535, 261.0 421.0 C 281.58281684163103 383.6590132858954, 294.9030023731271 342.332283816382, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
10
+ <path d="M 300.0 300.0 C 260.95910916068965 317.58429682809026, 225.40927165847552 342.87937351235803, 196.0 374.0 C 166.59438540987136 405.1167566108431, 143.35040486158874 442.0336668934096, 128.0 482.0 C 167.04089083931035 464.4157031719097, 202.59072834152448 439.12062648764197, 232.0 408.0 C 261.4056145901286 376.8832433891569, 284.64959513841126 339.9663331065904, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
11
+ <path d="M 300.0 300.0 C 257.88805198213487 306.9708192424341, 217.1873270252861 322.36184968830133, 181.0 345.0 C 144.5789351979488 367.7843725214859, 112.7603045859536 397.89232406832, 88.0 433.0 C 130.11194801786513 426.0291807575659, 170.8126729747139 410.63815031169867, 207.0 388.0 C 243.4210648020512 365.2156274785141, 275.23969541404637 335.1076759316799, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
12
+ <path d="M 300.0 300.0 C 257.3028039590788 295.99456451739945, 213.79945457542846 300.7902093313451, 173.0 314.0 C 132.24491708600948 327.1954242913266, 94.22453386348332 348.7745607149226, 62.0 377.0 C 104.44235093233748 380.1545822816728, 147.48444733760073 375.03052318580814, 188.0 362.0 C 228.87962979296555 348.85238312597795, 267.1560359808873 327.6636582719498, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
13
+ <path d="M 300.0 300.0 C 259.45827826339956 285.52253861966403, 215.96802197033162 279.35856528678823, 173.0 282.0 C 130.34415966629723 284.62224352464864, 88.2399414982294 295.9184971794961, 50.0 315.0 C 90.38769492881795 328.6867028618723, 133.42920903707108 334.49389127330323, 176.0 332.0 C 218.88302660045127 329.48781727112316, 261.25647073743636 318.5527349131915, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
14
+ <path d="M 300.0 300.0 C 263.9924966478006 276.4061166131297, 223.3004853360847 259.992532218488, 181.0 252.0 C 139.13762788507432 244.09024777818672, 95.73262618754995 244.43201944509636, 54.0 253.0 C 89.67978117717297 276.5260417003925, 130.0292052217897 292.93936673549086, 172.0 301.0 C 214.1760021403348 309.1000440333069, 257.9557014468979 308.7580151324744, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
15
+ <path d="M 300.0 300.0 C 271.05786703383785 268.27806835734464, 235.84747576581472 242.29758547996835, 197.0 224.0 C 158.21020305597432 205.72958187521405, 115.8241352446278 195.13306492237743, 73.0 193.0 C 101.94213296616215 224.7219316426554, 137.15252423418525 250.70241452003165, 176.0 269.0 C 214.78979694402568 287.2704181247859, 257.17586475537223 297.8669350776226, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
16
+ <path d="M 300.0 300.0 C 279.7220000449136 262.1892209510123, 252.04660521532728 228.3637383815179, 219.0 201.0 C 186.05273353646982 173.7185175596782, 147.7911409820033 152.8796144719777, 107.0 140.0 C 126.81291989797552 177.82952933779924, 154.172643408572 211.68718718216238, 187.0 239.0 C 220.12274657452522 266.55858135220404, 258.78609984670777 287.429949047807, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
17
+ <path d="M 300.0 300.0 C 289.64475650751973 258.35395041717555, 271.20140744947975 218.73490429249708, 246.0 184.0 C 220.91886931219128 149.43087223461276, 189.16261232225486 119.72340601822066, 153.0 97.0 C 162.8074864159357 138.6493895067455, 180.93387116480324 178.32223159860655, 206.0 213.0 C 231.1752036957657 247.82866815851565, 263.33101618511324 277.5898988667416, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
18
+ <path d="M 300.0 300.0 C 300.81689091599134 257.0290648960808, 292.9461362237144 213.91101745143325, 277.0 174.0 C 261.0814703504357 134.15807806156255, 237.12915407442637 97.54525175394825, 207.0 67.0 C 206.43118317730742 109.63287696533885, 214.293308078119 152.36181664366268, 230.0 192.0 C 245.9073737350692 232.14463389009708, 269.8509183485716 269.08610272235796, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
19
+ <path d="M 300.0 300.0 C 311.4462069988916 258.4940628728435, 314.5255289135719 214.6992623085016, 309.0 172.0 C 303.4988382900636 129.48903851048428, 289.47400466475915 88.09867586019563, 268.0 51.0 C 256.5537930011084 92.50593712715653, 253.47447108642808 136.3007376914984, 259.0 179.0 C 264.5011617099364 221.51096148951572, 278.52599533524085 262.9013241398044, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
20
+ <path d="M 300.0 300.0 C 320.9925329813984 262.76167355035153, 334.66145080831353 221.4131971239334, 340.0 179.0 C 345.3757109731371 136.2915634944393, 342.29914689971855 92.53598556137557, 331.0 51.0 C 309.37903813703326 88.02588416854144, 295.3402252773079 129.4575026082188, 290.0 172.0 C 284.63297092912535 214.7560277690012, 288.05798759531876 258.59624109627663, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
21
+ <path d="M 300.0 300.0 C 329.6978330441209 268.91737071719604, 353.27693361781775 232.01095242793144, 369.0 192.0 C 384.59117800082686 152.32466784002008, 392.4476453621764 109.6264756587725, 392.0 67.0 C 361.74129682388894 97.43313631895612, 337.76390818751065 134.0842875202773, 322.0 174.0 C 306.2307152959677 213.92932633011245, 298.69482610083605 257.089418993139, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
22
+ <path d="M 300.0 300.0 C 336.25931623435116 277.4110574719715, 368.0465945540969 247.67457130188677, 393.0 213.0 C 417.9900026868544 178.27457417071938, 436.1066537110424 138.6230360800438, 446.0 97.0 C 409.74068376564884 119.5889425280285, 377.9534054459031 149.32542869811323, 353.0 184.0 C 328.0099973131456 218.72542582928062, 309.8933462889576 258.3769639199562, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
23
+ <path d="M 300.0 300.0 C 340.8456834412907 287.26141404185273, 379.14162289980743 266.4038041581963, 412.0 239.0 C 444.79282474484137 211.65086634189188, 472.1443194748949 177.80339161345063, 492.0 140.0 C 451.1543165587093 152.7385859581473, 412.85837710019257 173.5961958418037, 380.0 201.0 C 347.20717525515863 228.34913365810814, 319.8556805251051 262.19660838654937, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
24
+ <path d="M 300.0 300.0 C 342.4865312923619 297.7296593384859, 384.51256723213857 287.1377315813064, 423.0 269.0 C 461.8431645218147 250.6946249412222, 497.0516956939789 224.7155145617612, 526.0 193.0 C 483.1613918737479 195.00657795892064, 440.74304385677334 205.61116496316424, 402.0 224.0 C 363.4460311381084 242.29909327820354, 328.5622317724414 268.29094378595545, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
25
+ <path d="M 300.0 300.0 C 341.71977173949784 308.6603511118961, 385.14902617501286 309.0023137452466, 427.0 301.0 C 468.9795893879357 292.9730937066435, 509.3374646796306 276.5563308761235, 545.0 253.0 C 503.28022826050216 244.3396488881039, 459.85097382498714 243.99768625475338, 418.0 252.0 C 376.0204106120643 260.0269062933565, 335.6625353203694 276.4436691238765, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
26
+ <path d="M 300.0 300.0 C 338.4105482682264 318.4975660321671, 380.4448323451648 329.4333147351104, 423.0 332.0 C 465.5711737554013 334.5676506616848, 508.63148345865875 328.75792633664213, 549.0 315.0 C 510.7822585259895 295.8654429953135, 468.6631782007123 284.56520193243426, 426.0 282.0 C 383.3608312202366 279.43624167808923, 340.21574969843783 285.5998247526319, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
27
+ <path d="M 300.0 300.0 C 332.4833393306739 327.64122300225955, 370.4299374630855 348.8366201573003, 411.0 362.0 C 451.48863246185476 375.1369590057179, 494.5588291595489 380.26436337449104, 537.0 377.0 C 504.78512672392714 348.7618969629548, 466.76100249710714 327.1806372666515, 426.0 314.0 C 385.51645795247987 300.90908343003906, 342.3697544153769 296.11500525924987, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
28
+ <path d="M 300.0 300.0 C 324.3601209655962 335.0983919744781, 355.8541183399569 365.223085115171, 392.0 388.0 C 428.12100674982804 410.76124024399263, 468.85633134010413 426.16535458485333, 511.0 433.0 C 486.21727751805486 397.91048251381903, 454.4041716622931 367.8077586933133, 418.0 345.0 C 382.0986700282986 322.50727915581956, 341.7620302651245 307.124662296982, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
29
+ <path d="M 300.0 300.0 C 314.9079791103932 339.95245182769634, 337.82726844961616 376.89697792674224, 367.0 408.0 C 396.2996573761331 439.2383462801503, 431.88382050499484 464.55784696799424, 471.0 482.0 C 455.58489788790973 442.0635271047389, 432.3507241537622 405.1621923505047, 403.0 374.0 C 373.83505443514036 343.03505212263536, 338.65298918414493 317.75861689376484, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
30
+ <path d="M 300.0 300.0 C 304.6206360614004 342.294340247712, 317.610803928153 383.65776950763484, 338.0 421.0 C 358.54463868381896 458.62691919829257, 386.5867659269011 492.1406810253907, 420.0 519.0 C 415.65847675161564 476.3398509170822, 402.6513247083861 434.58004698881894, 382.0 397.0 C 361.4740312608668 359.64806831522935, 333.41488273580603 326.4561487185111, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
31
+ <path d="M 300.0 300.0 C 293.40628035667874 342.1586457787132, 295.4610265148947 385.65077279428334, 306.0 427.0 C 316.6035654624742 468.6026511612534, 335.78749617957084 507.9982231695768, 362.0 542.0 C 368.1757708963146 499.43273586699036, 365.78085285204475 455.63994877177123, 355.0 414.0 C 344.35693482859875 372.8922421450438, 325.5520429859003 333.91482996199613, 300.0 300.0 Z" fill="rgb(53.75, 0, 77.8125)"/>
32
+ <path d="M 300.0 300.0 C 281.17276055488213 332.1382468821841, 268.8530909721419 368.0706164985098, 264.0 405.0 C 259.0899393228918 442.3628919798486, 261.82932585039663 480.71430336491653, 272.0 517.0 C 290.2833661312121 484.33061794327773, 302.2353714371788 448.13311615949283, 307.0 411.0 C 311.74698458491525 374.00439212104936, 309.35700642441145 336.1061670044886, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
33
+ <path d="M 300.0 300.0 C 273.7440664716466 326.5237110931039, 252.86813141751261 358.3509563395704, 239.0 393.0 C 225.05819607463405 427.8331118570981, 218.211726899556 465.4886923200273, 219.0 503.0 C 245.27633367690402 476.10783542321053, 266.143513848112 443.9518528642999, 280.0 409.0 C 293.70135638166823 374.4394492915397, 300.5391475880666 337.17348721666855, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
34
+ <path d="M 300.0 300.0 C 268.0970356701297 319.2923133258061, 240.05496896153068 344.9405450714759, 218.0 375.0 C 195.88990867793837 405.1345830375151, 179.81497836520964 439.6785822201875, 171.0 476.0 C 202.90296432987031 456.7076866741939, 230.94503103846932 431.0594549285241, 253.0 401.0 C 275.11009132206163 370.8654169624849, 291.18502163479036 336.3214177798125, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
35
+ <path d="M 300.0 300.0 C 263.91080083461 310.32638411108513, 229.98404616429468 328.14649767529113, 201.0 352.0 C 172.05829752425387 375.8186540061717, 148.0716017232661 405.6306902159708, 131.0 439.0 C 166.66096097474517 427.83513684282724, 200.13535581244633 409.7316375938664, 229.0 386.0 C 257.89288463804223 362.24514396172356, 282.145890599273 332.8682635016413, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
36
+ <path d="M 300.0 300.0 C 262.39607022300163 301.0521613415503, 225.0300775372441 309.9651504225567, 191.0 326.0 C 157.17255135724173 341.9393715745041, 126.67274368569555 364.89990094521863, 102.0 393.0 C 139.29165724389895 391.0836695382276, 176.19379397925508 381.85813535438854, 210.0 366.0 C 243.89311743459092 350.10109541632363, 274.6487782491021 327.5469441523487, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
37
+ <path d="M 300.0 300.0 C 263.20548644659993 292.39508333751843, 224.92443880691056 292.0532882693069, 188.0 299.0 C 151.45753966742785 305.8748489093667, 116.27063138630714 319.8812881280652, 85.0 340.0 C 121.48236161022797 347.41768944400155, 159.38991867435666 347.75919896710184, 196.0 341.0 C 232.8723889395856 334.1923720404179, 268.4016384570353 320.1856486729618, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
38
+ <path d="M 300.0 300.0 C 266.3880153274676 283.3263815201106, 229.4431072586042 273.40598953865657, 192.0 271.0 C 154.49474316896834 268.59001690332866, 116.52035253596709 273.7216913131937, 81.0 286.0 C 114.80210371285642 302.0365102688306, 151.66422698411267 311.59335704286, 189.0 314.0 C 226.4403648460934 316.413384887766, 264.33141938741664 311.6343329636351, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
39
+ <path d="M 300.0 300.0 C 271.39067091163287 275.4397692502962, 237.86824479801842 256.62616275796154, 202.0 245.0 C 166.33229655526895 233.43883976519368, 128.37385433931328 228.9932564426043, 91.0 232.0 C 119.60932908836715 256.5602307497038, 153.13175520198158 275.37383724203846, 189.0 287.0 C 224.66770344473105 298.5611602348063, 262.6261456606867 303.00674355739574, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
40
+ <path d="M 300.0 300.0 C 278.57885611563097 268.93339571640456, 250.85255020643385 242.23399002606658, 219.0 222.0 C 187.4410863749522 201.95253945494977, 151.85903831372892 188.26713635447928, 115.0 182.0 C 136.30798196415336 212.55236569027312, 163.6559165537123 238.8747527327236, 195.0 259.0 C 226.82599769756231 279.4346722815744, 262.74794185185124 293.46133618943963, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
41
+ <path d="M 300.0 300.0 C 286.84029601000793 264.86359034672125, 266.6614227804845 232.37218429918346, 241.0 205.0 C 215.33857721951549 177.62781570081654, 184.21523037397932 155.3968536682907, 150.0 140.0 C 163.15970398999207 175.13640965327878, 183.33857721951549 207.62781570081654, 209.0 235.0 C 234.66142278048451 262.37218429918346, 265.78476962602065 284.6031463317093, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
42
+ <path d="M 300.0 300.0 C 295.8899012546044 262.5543868972133, 284.2585509360983 225.94984324779708, 266.0 193.0 C 247.88583581229028 160.31072073360065, 223.26470860775345 131.24411222824463, 194.0 108.0 C 198.38838256305908 145.07802032480808, 210.00262473647666 181.28712827722762, 228.0 214.0 C 246.135107677315 246.96322060523232, 270.7391362644693 276.35136586211104, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
43
+ <path d="M 300.0 300.0 C 304.9267181232714 262.6827390363099, 302.5348851061179 224.41341076185324, 293.0 188.0 C 283.5765315381815 152.01208571654436, 267.1847337320399 117.8625069537494, 245.0 88.0 C 239.65307973485378 124.91162789178577, 241.7054136271603 162.8798048994567, 251.0 199.0 C 260.387509165931 235.48130739549762, 277.1568473967328 270.0466780344971, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
44
+ <path d="M 300.0 300.0 C 313.8939833975092 265.1094554777486, 321.063442846564 227.55514407793805, 321.0 190.0 C 320.9371202612585 152.7781889383048, 313.7706627843887 115.58086203455215, 300.0 81.0 C 285.5901241309587 115.41262593382922, 278.06579851994996 152.69223918837253, 278.0 190.0 C 277.9336135911828 227.6410937993474, 285.46137646903514 265.279908188609, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
45
+ <path d="M 300.0 300.0 C 322.3746837219516 269.88954468327813, 338.78303899250835 235.3636304681484, 348.0 199.0 C 357.16155538132097 162.85496107349863, 359.21198640523005 124.9219871311798, 354.0 88.0 C 331.6754219204219 117.77157292116274, 315.2650477196626 151.95985250607782, 306.0 188.0 C 296.63024752147066 224.4474389690501, 294.57778171486154 262.7601340257534, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
46
+ <path d="M 300.0 300.0 C 328.829226763168 276.1772474446502, 353.06716851502205 246.81861377339038, 371.0 214.0 C 388.8999638799595 181.24153675195532, 400.50586126679195 145.05844489888943, 405.0 108.0 C 375.6219219800683 131.118800094231, 350.9719119924818 160.21950632957618, 333.0 193.0 C 314.9336251240158 225.95279253078075, 303.6325552031566 262.59565560750605, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
47
+ <path d="M 300.0 300.0 C 333.8270696369875 284.427761761023, 364.5821434288554 262.21576402245176, 390.0 235.0 C 415.60621125709037 207.58255820543266, 435.7752528939876 175.1069826883947, 449.0 140.0 C 414.7091277312511 155.25411262142063, 383.5509299722894 177.50996816353612, 358.0 205.0 C 332.57051134556474 232.35937413838036, 312.7164394004515 264.87897473813484, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
48
+ <path d="M 300.0 300.0 C 336.90076825452286 293.3054335170066, 372.45804745362614 279.2876599865908, 404.0 259.0 C 435.32648281373935 238.8509292991125, 462.668884383145 212.53386778855958, 484.0 182.0 C 447.10846105390004 188.1304869827945, 411.4914686391839 201.8293302192238, 380.0 222.0 C 348.42121097432965 242.22659955341172, 321.0194536814074 268.9433129140109, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
49
+ <path d="M 300.0 300.0 C 337.0455259231193 302.8884763213284, 374.6483717083921 298.4445036376144, 410.0 287.0 C 445.87333450771996 275.38660262321156, 479.3989158723518 256.5712253267345, 508.0 232.0 C 470.6278866023516 228.88145838318096, 432.64017701377765 233.330469416077, 397.0 245.0 C 361.4408890033365 256.6429874394918, 328.2483545586358 275.4634966607139, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
50
+ <path d="M 300.0 300.0 C 335.34198459434396 311.56051985765333, 372.88895691504206 316.33922542574214, 410.0 314.0 C 447.3425218528623 311.6461837416002, 484.2176640030572 302.0859617026608, 518.0 286.0 C 482.5000124973242 273.64731266605486, 444.50536407256527 268.51290071676317, 407.0 271.0 C 369.8844127490697 273.4612519497239, 333.2788184831452 283.3823943208623, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
51
+ <path d="M 300.0 300.0 C 331.25395581366286 320.14868909633947, 366.44905243189055 334.1583877501971, 403.0 341.0 C 439.5991068573358 347.85062671331303, 477.53025828988626 347.5089046283351, 514.0 340.0 C 482.74604418633714 319.85131090366053, 447.55094756810945 305.8416122498029, 411.0 299.0 C 374.4008931426642 292.14937328668697, 336.46974171011374 292.4910953716649, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
52
+ <path d="M 300.0 300.0 C 324.97158395524355 327.53451503558995, 355.4006532997838 350.0998923023277, 389.0 366.0 C 422.7597825416843 381.9760302202341, 459.69382471252135 391.2095407629434, 497.0 393.0 C 472.32363409495906 364.90354930367806, 441.8249443022108 341.9438614821709, 408.0 326.0 C 374.2719400838228 310.10180633081654, 337.2680857378516 301.1934710253049, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
53
+ <path d="M 300.0 300.0 C 317.4325566481815 332.8612051296242, 341.3616421302201 362.25979586470015, 370.0 386.0 C 398.7760569677229 409.85435190554836, 432.2848372923134 427.97644738721465, 468.0 439.0 C 450.88724965429253 405.6554460774467, 426.90871249530886 375.8535498941384, 398.0 352.0 C 369.28112781407583 328.3030937229912, 335.7230327314064 310.49675755667687, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
54
+ <path d="M 300.0 300.0 C 308.35362246464473 336.2957613534676, 324.1017149573948 370.87309487015796, 346.0 401.0 C 367.9271033771113 431.16655240030065, 396.00174255930494 456.84457604255095, 428.0 476.0 C 419.09900164329025 439.70564299579564, 403.0339924682588 405.1829637047706, 381.0 375.0 C 359.1683060084417 345.0941521011178, 331.49438023531246 319.47014675562775, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
55
+ <path d="M 300.0 300.0 C 298.9735571968666 337.1145901481182, 305.4766170980556 374.42161800230815, 319.0 409.0 C 332.69865787520547 444.02654833476913, 353.59115861499913 476.221549474779, 380.0 503.0 C 380.66438896702493 465.49453424102666, 373.8237920202939 427.87125103400626, 360.0 393.0 C 346.31751792550597 358.4852108243866, 325.8063674753633 326.69292762666544, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
56
+ <path d="M 300.0 300.0 C 290.14745752936335 336.0088570524314, 287.41292830541175 373.95045003475957, 292.0 411.0 C 296.60130631600475 448.1645222945437, 308.566721940776 484.402638186708, 327.0 517.0 C 337.0223506752828 480.6835348884795, 339.75886984039374 442.37226657692594, 335.0 405.0 C 330.31006334005946 368.1690781713643, 318.34660376922903 332.2786994588729, 300.0 300.0 Z" fill="rgb(82.5, 0, 86.25)"/>
57
+ <path d="M 300.0 300.0 C 280.4143422903897 325.45709161142213, 266.03445475768433 354.9016232260094, 258.0 386.0 C 250.01459213759225 416.9085345413927, 248.30325271300038 449.4239836086385, 253.0 481.0 C 271.974956712823 455.29282613989085, 285.9747590120407 425.9273871708, 294.0 395.0 C 302.01807764504144 364.1002186643632, 304.0667419963196 331.6630331024596, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
58
+ <path d="M 300.0 300.0 C 274.78450875359397 319.92073462847304, 253.575873253682 344.8921925557887, 238.0 373.0 C 222.46806006113437 401.0285265504128, 212.54932361191823 432.15283747726335, 209.0 464.0 C 234.21549124640603 444.07926537152696, 255.424126746318 419.1078074442113, 271.0 391.0 C 286.53193993886566 362.9714734495872, 296.4506763880818 331.84716252273665, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
59
+ <path d="M 300.0 300.0 C 270.72454346647726 312.97162872803295, 244.0496427733636 331.7808535757413, 222.0 355.0 C 199.88545716715043 378.2874887552269, 182.44156761379614 405.9924898105543, 171.0 436.0 C 200.27545653352277 423.02837127196705, 226.9503572266364 404.2191464242587, 249.0 381.0 C 271.11454283284957 357.7125112447731, 288.55843238620383 330.0075101894457, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
60
+ <path d="M 300.0 300.0 C 268.1215766974504 305.1263755263466, 237.30522792071582 316.7681072864463, 210.0 334.0 C 182.90337876161988 351.10024437207943, 159.28706343560856 373.6897633795685, 141.0 400.0 C 172.49650570154006 394.58241078910277, 202.91383596174194 382.96230709419416, 230.0 366.0 C 257.35538904886334 348.8690947499033, 281.2909576325113 326.30127294246375, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
61
+ <path d="M 300.0 300.0 C 268.0197156142077 297.51803689551144, 235.56693082032734 301.2757277663818, 205.0 311.0 C 174.38910572744325 320.7382583475765, 145.69200591108824 336.45333681843755, 121.0 357.0 C 152.98028438579232 359.48196310448856, 185.43306917967266 355.7242722336182, 216.0 346.0 C 246.61089427255675 336.26174165242355, 275.30799408891176 320.54666318156245, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
62
+ <path d="M 300.0 300.0 C 269.57320111976435 289.5744035528112, 237.10908789514065 285.1319459536522, 205.0 287.0 C 172.8361340353094 288.8712409445496, 141.05280319885276 297.07339083782875, 112.0 311.0 C 142.42679888023565 321.4255964471888, 174.89091210485935 325.8680540463478, 207.0 324.0 C 239.1638659646906 322.1287590554504, 270.94719680114724 313.92660916217125, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
63
+ <path d="M 300.0 300.0 C 273.0058244200954 282.446400690871, 242.60680021588007 270.15016618130073, 211.0 264.0 C 179.39493584992164 257.8501716286993, 146.60506415007836 257.8501716286993, 115.0 264.0 C 141.99417557990458 281.553599309129, 172.39319978411993 293.84983381869927, 204.0 300.0 C 235.60506415007836 306.1498283713007, 268.39493584992164 306.1498283713007, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
64
+ <path d="M 300.0 300.0 C 278.41808545641305 276.1809357781144, 252.08294581788243 256.68609214959173, 223.0 243.0 C 193.91705418211757 229.31390785040827, 162.1096777355806 221.44756743889914, 130.0 220.0 C 151.58191454358698 243.8190642218856, 177.91705418211757 263.31390785040827, 207.0 277.0 C 236.08294581788243 290.68609214959173, 267.8903222644194 298.5524325611009, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
65
+ <path d="M 300.0 300.0 C 284.9254116791501 271.2755806028402, 264.05097595988804 245.6102907840754, 239.0 225.0 C 214.31144878008388 204.68788838827004, 185.58778383130456 189.30021073713823, 155.0 180.0 C 169.92785461156282 208.2581403579286, 190.43767836854184 233.55358965820275, 215.0 254.0 C 239.92302447522616 274.7466701651882, 269.0000328941545 290.4824629566083, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
66
+ <path d="M 300.0 300.0 C 292.60606814404633 268.7329732384889, 278.92072494404295 238.96735177848154, 260.0 213.0 C 240.97810988229838 186.89380620252103, 216.67990838406814 164.6489738449863, 189.0 148.0 C 196.39393185595367 179.26702676151112, 210.07927505595705 209.03264822151846, 229.0 235.0 C 248.02189011770162 261.10619379747897, 272.32009161593186 283.3510261550137, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
67
+ <path d="M 300.0 300.0 C 300.2794395500298 267.5641195199076, 294.12558720362875 235.08545435834657, 282.0 205.0 C 270.03638453853137 175.31642254660372, 252.27041318834236 147.98415893092837, 230.0 125.0 C 229.96765189063316 157.09579411377445, 236.1127167698752 189.18668848314948, 248.0 219.0 C 259.9560589829856 248.98580113497027, 277.71334384634497 276.64618717212613, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
68
+ <path d="M 300.0 300.0 C 308.0814546146394 268.77089707540705, 310.13011530407033 235.9923260445123, 306.0 204.0 C 301.88595688648763 172.13217090598994, 291.6445479394902 141.0665637667646, 276.0 113.0 C 267.276157252146 144.1009831025605, 264.88000591692 176.96248712851724, 269.0 209.0 C 273.1148073562398 240.99718033105827, 283.725632808899 272.14508730499335, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
69
+ <path d="M 300.0 300.0 C 315.79279991144506 272.0044640757778, 326.0473837272762 240.8988931677567, 330.0 209.0 C 333.9708912342791 176.95362197510684, 331.57760302321566 144.1313836519508, 323.0 113.0 C 307.20720008855494 140.99553592422222, 296.9526162727238 172.1011068322433, 293.0 204.0 C 289.0291087657209 236.04637802489316, 291.42239697678434 268.86861634804916, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
70
+ <path d="M 300.0 300.0 C 321.8347468198739 276.4816520528919, 339.2293174708244 248.85498101902922, 351.0 219.0 C 362.76938264790067 189.1483159801628, 368.90861204976 157.0878957704531, 369.0 125.0 C 346.60165369473737 147.87488798964387, 328.81181679806525 175.24386783067786, 317.0 205.0 C 305.0508900706553 235.1019987392269, 299.231482884362 267.622215368513, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
71
+ <path d="M 300.0 300.0 C 327.2710672392648 283.171641760142, 351.2004350280316 260.9515145277157, 370.0 235.0 C 388.845423293025 208.98518119439854, 402.5210156777271 179.2407677576714, 410.0 148.0 C 382.22365128053957 164.50993994229617, 357.8918892966192 186.78549668813878, 339.0 213.0 C 320.29092041928186 238.96083541090724, 306.9326420015658 268.7600718811969, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
72
+ <path d="M 300.0 300.0 C 330.6313925251992 290.31430535424204, 359.3412421176514 274.59224486313724, 384.0 254.0 C 408.52772349593926 233.51718044462993, 429.0293710474544 208.2318151310946, 444.0 180.0 C 413.3595361053797 189.15992843104615, 384.6009506433811 204.56631349997397, 360.0 225.0 C 335.20206395458183 245.59730367111246, 314.6514810350179 271.28553232056737, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
73
+ <path d="M 300.0 300.0 C 331.7724105535351 298.4145022266988, 363.2194035006214 290.5527539899272, 392.0 277.0 C 421.07897560503625 263.3067395888525, 447.41238891800504 243.81317388964183, 469.0 220.0 C 436.87627659598616 221.31992681733576, 405.03587720256644 229.19443419420298, 376.0 243.0 C 347.2104550273022 256.6884432616488, 321.2019781235382 276.19480093947175, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
74
+ <path d="M 300.0 300.0 C 331.27998749181165 306.05350595416456, 363.72001250818835 306.05350595416456, 395.0 300.0 C 426.61512354220764 293.88163634481947, 457.02195207013966 281.5822450301503, 484.0 264.0 C 452.4070804271328 257.7565685016109, 419.5929195728672 257.7565685016109, 388.0 264.0 C 356.71405157842196 270.1827674831298, 326.64887280923074 282.48215879779895, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
75
+ <path d="M 300.0 300.0 C 328.7199399338442 313.87103250595965, 360.1640082141061 322.0738329268975, 392.0 324.0 C 424.10952782185325 325.9427167728673, 456.5928357666576 321.49763252778877, 487.0 311.0 C 457.9681827040209 297.0212562649737, 426.17072878738173 288.815461705841, 394.0 287.0 C 362.2201298636984 285.206595267693, 330.1002835430947 289.6487016737339, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
76
+ <path d="M 300.0 300.0 C 324.3320967524003 320.524009480257, 352.69922996219333 336.2455531868893, 383.0 346.0 C 413.54013895396963 355.8315046356845, 446.02129434345875 359.59248052288854, 478.0 357.0 C 453.31573059330464 336.4427204149087, 424.6156724272417 320.726021895398, 394.0 311.0 C 363.7497721399138 301.39007295341366, 331.65167633504433 297.6339128060353, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
77
+ <path d="M 300.0 300.0 C 318.3086855477454 326.29294730054727, 341.9196905056245 348.8773868254751, 369.0 366.0 C 396.0200401286733 383.08450544774996, 426.4713012625033 394.717571498876, 458.0 400.0 C 439.6913144522546 373.70705269945273, 416.0803094943755 351.1226131745249, 389.0 334.0 C 361.9799598713267 316.91549455225004, 331.5286987374967 305.28242850112395, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
78
+ <path d="M 300.0 300.0 C 310.9990351193364 329.99234320316094, 328.1182100953561 357.72540666431286, 350.0 381.0 C 371.9404717782805 404.337010384339, 398.65018637969166 423.1707835007187, 428.0 436.0 C 416.4939529200643 406.0221369197844, 399.05993869593937 378.33282021087996, 377.0 355.0 C 355.19510597285597 331.93694080182127, 328.8882648719455 313.1463400154567, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
79
+ <path d="M 300.0 300.0 C 303.07270876478873 331.8059579951043, 312.6611070784964 362.9682525146541, 328.0 391.0 C 343.43126945933454 419.2005651304848, 364.6695649826625 444.2069453434355, 390.0 464.0 C 386.34519141482167 432.1718164061982, 376.43492404454713 401.07408086499197, 361.0 373.0 C 345.62688473701854 345.03834111563026, 324.78525576589203 320.09671956001984, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
80
+ <path d="M 300.0 300.0 C 295.43873919391575 331.5867994308113, 297.148198153146 364.06651965618545, 305.0 395.0 C 312.8636583101314 425.98019085445804, 326.88228504316 455.3851152212984, 346.0 481.0 C 350.56126080608425 449.4132005691887, 348.851801846854 416.93348034381455, 341.0 386.0 C 333.1363416898686 355.01980914554196, 319.11771495684 325.6148847787016, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
81
+ <path d="M 300.0 300.0 C 287.56820591773936 329.3247582897344, 281.0664801822581 361.14899478445864, 281.0 393.0 C 280.93282407742157 425.18433806482, 287.4381024778309 457.3683469931609, 300.0 487.0 C 311.9171646482139 457.19646702059873, 318.063728153199 425.0977464945654, 318.0 393.0 C 317.9369336593 361.23558640077204, 311.793405710898 329.4940253340284, 300.0 300.0 Z" fill="rgb(111.25, 0, 100.3125)"/>
82
+ <path d="M 300.0 300.0 C 281.02712551737284 318.68229892748786, 265.9479395935937 341.30107781315655, 256.0 366.0 C 245.93643301789268 390.986003933239, 241.13543238985332 418.0773646200324, 242.0 445.0 C 260.4143965468775 425.6682941347827, 275.0954114371055 402.7932244221019, 285.0 378.0 C 294.88162544389013 353.2642569926274, 300.0023466220479 326.63650686620684, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
83
+ <path d="M 300.0 300.0 C 276.9821435689681 313.8057275471931, 256.78477173897886 332.29145769667485, 241.0 354.0 C 225.371034880776 375.4942639689902, 214.08004626453356 400.12914822261007, 208.0 426.0 C 230.5123840541866 411.8796850555615, 250.3096813904079 393.4477185701141, 266.0 372.0 C 281.76600896169845 350.4488172867513, 293.37395797060816 325.86727820906015, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
84
+ <path d="M 300.0 300.0 C 274.124726756981 307.2727868818113, 249.78396655622504 319.95740839488127, 229.0 337.0 C 208.32484799863485 353.9533650364484, 191.1884393026711 375.2025118194435, 179.0 399.0 C 204.44610215634603 390.88748970387496, 228.33475980017067 377.91936126865585, 249.0 361.0 C 269.62894641556494 344.11035373304935, 287.0321165631866 323.2947972819724, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
85
+ <path d="M 300.0 300.0 C 273.08567448619783 301.0931743751708, 246.4019943775789 307.5930451708601, 222.0 319.0 C 197.86798511721722 330.28075023068453, 175.98605955140513 346.3502893180778, 158.0 366.0 C 184.56334224200805 364.6452124064095, 210.85551699485745 358.1575329219401, 235.0 347.0 C 259.4227440640788 335.71387840936427, 281.62970858688726 319.65653483133354, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
86
+ <path d="M 300.0 300.0 C 273.7527077951725 294.36373156747726, 246.37997590499842 294.02157241885004, 220.0 299.0 C 193.67227958186635 303.968565928584, 168.35509431560422 314.23228968517674, 146.0 329.0 C 172.353883103704 333.9964050666498, 199.646116896296 333.9964050666498, 226.0 329.0 C 252.1804223779623 324.03648117047703, 277.4181287734419 314.14602866414043, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
87
+ <path d="M 300.0 300.0 C 276.10122217692486 287.90175717884506, 249.73190109523574 280.7101241565662, 223.0 279.0 C 196.28512310816944 277.29096493550344, 169.23180503550896 281.05788264182326, 144.0 290.0 C 168.0911176727206 301.46112061923037, 194.37651428034417 308.28849636147027, 221.0 310.0 C 247.64902151546403 311.71314521949694, 274.61837696267787 308.2993027578243, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
88
+ <path d="M 300.0 300.0 C 279.71593068619677 282.08604790897357, 255.73162468389208 268.3807301933709, 230.0 260.0 C 204.62805926928408 251.7364180319544, 177.58050750708176 248.65505137550096, 151.0 251.0 C 171.19890784875298 268.2849305188549, 194.77364573663854 281.60978236852935, 220.0 290.0 C 245.66596462337048 298.5364308557447, 273.022482077473 301.95599553750753, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
89
+ <path d="M 300.0 300.0 C 284.76492241827407 277.6322248404989, 264.8884100191927 258.4411094206962, 242.0 244.0 C 219.54402357407082 229.83172826581267, 194.21034496117124 220.24601203390472, 168.0 216.0 C 183.125859683657 237.85130857105463, 202.62258570136248 256.6639389390161, 225.0 271.0 C 247.72184277921184 285.55671871439995, 273.39575900658997 295.48396632231953, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
90
+ <path d="M 300.0 300.0 C 290.2408953931953 274.8393099651776, 275.54753592457257 251.60329964270448, 257.0 232.0 C 238.83489792174416 212.80090312112068, 216.9876343428506 197.09818242379094, 193.0 186.0 C 202.56330496030756 210.73525981295896, 216.90467995994004 233.61316755046792, 235.0 253.0 C 253.3586267600567 272.6689320892241, 275.5691379214433 288.72884015976524, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
91
+ <path d="M 300.0 300.0 C 297.1588688710632 273.40792326580583, 288.946160903002 247.40101470027884, 276.0 224.0 C 262.97865184325843 200.46307952478023, 245.17906808083862 179.58279857271083, 224.0 163.0 C 226.8411311289368 189.59207673419417, 235.05383909699796 215.59898529972116, 248.0 239.0 C 261.02134815674157 262.5369204752198, 278.8209319191614 283.41720142728917, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
92
+ <path d="M 300.0 300.0 C 303.420601672804 273.33836248125897, 301.7137191718473 246.0282424659503, 295.0 220.0 C 288.3313771230734 194.14659018171744, 276.7282462968535 169.57525431442818, 261.0 148.0 C 256.94690101455444 174.57386551602713, 258.3163563196163 201.96297161726434, 265.0 228.0 C 271.6799466450972 254.02262608702833, 283.6623300498232 278.6721005196076, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
93
+ <path d="M 300.0 300.0 C 309.94272040107944 274.9342118805908, 315.06332942930624 247.96567099859638, 315.0 221.0 C 314.93745340939853 194.36766172190028, 309.8198147244285 167.75594056005605, 300.0 143.0 C 289.5423009078468 167.5872495375225, 284.0666095483577 194.28124491503226, 284.0 221.0 C 283.9325594572072 248.05208772774904, 289.41183478153545 275.10600964161955, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
94
+ <path d="M 300.0 300.0 C 315.8697742600755 278.5152672075578, 327.4911985753607 253.9051921869537, 334.0 228.0 C 340.5482022769909 201.9379914368952, 341.9158413117087 174.5852107425398, 338.0 148.0 C 322.1302257399245 169.48473279244217, 310.5088014246393 194.0948078130463, 304.0 220.0 C 297.4517977230091 246.0620085631048, 296.0841586882913 273.4147892574602, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
95
+ <path d="M 300.0 300.0 C 320.7489914140286 283.2400632510771, 338.18104143181176 262.3899642101992, 351.0 239.0 C 363.8497301199627 215.55388883442458, 372.05402756482795 189.57361359235142, 375.0 163.0 C 353.70576333598854 179.45387082658965, 335.87581600569416 200.36977057943494, 323.0 224.0 C 310.2467223212227 247.40534202107307, 302.36457220065455 273.45070763686346, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
96
+ <path d="M 300.0 300.0 C 324.0411461666565 288.5549043718292, 345.8843238516167 272.5138207594365, 364.0 253.0 C 382.03991804988095 233.56778425177814, 396.3717042147662 210.70517298874694, 406.0 186.0 C 381.93827135651713 196.96083818983294, 360.0585379870947 212.6868965491053, 342.0 232.0 C 323.68406222600186 251.5883853544606, 309.3151651707959 274.85231392003215, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
97
+ <path d="M 300.0 300.0 C 326.25340568248157 295.32747948331036, 351.5622932727665 285.40913164387433, 374.0 271.0 C 396.36020556681706 256.64063834539274, 415.8514689797012 237.83327891190805, 431.0 216.0 C 404.7583863771227 220.11000669907997, 379.3893800127041 229.70909018831944, 357.0 244.0 C 334.3849270261728 258.43496729566226, 314.83294196735324 277.6439350727482, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
98
+ <path d="M 300.0 300.0 C 326.648737586807 301.83677398480864, 353.6494567695026 298.4189614300371, 379.0 290.0 C 404.2308238460303 281.6207975948916, 427.80822403606624 268.2944409657408, 448.0 251.0 C 421.42199333004885 248.54227973375126, 394.3441383847348 251.62709865157183, 369.0 260.0 C 343.57668412181795 268.3990590868206, 319.92232473670543 282.1117311941322, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
99
+ <path d="M 300.0 300.0 C 325.0550502960507 308.2253990817348, 351.6802969697488 311.6388922450294, 378.0 310.0 C 404.6302827645163 308.34176837574717, 430.9288692040276 301.51096670314683, 455.0 290.0 C 429.78943937345406 280.98231788192584, 402.7150837088453 277.2124708906512, 376.0 279.0 C 349.5954033375686 280.76675415540933, 323.5657073279939 287.959170158055, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
100
+ <path d="M 300.0 300.0 C 322.2372920668719 314.1114651632725, 347.1411814752971 324.0047910926469, 373.0 329.0 C 399.3422068433942 334.0885861679163, 426.6577931566058 334.0885861679163, 453.0 329.0 C 430.66280835537833 314.2008727555946, 405.33674936181757 303.93355154198895, 379.0 299.0 C 352.9451789886275 294.1192609000084, 325.92292956314736 294.46131469020435, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
101
+ <path d="M 300.0 300.0 C 317.99117124031426 319.6443756707765, 339.8715457310286 335.71277568739487, 364.0 347.0 C 388.0993632957382 358.2736156356176, 414.42259869944553 364.76895943653244, 441.0 366.0 C 423.00882875968574 346.3556243292235, 401.1284542689714 330.28722431260513, 377.0 319.0 C 352.9006367042618 307.7263843643824, 326.57740130055447 301.2310405634676, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
102
+ <path d="M 300.0 300.0 C 312.54708093208535 323.289285669772, 329.62632104685207 344.12595860978746, 350.0 361.0 C 370.57665450439947 378.0421513256295, 394.49918615706906 391.0286685085073, 420.0 399.0 C 407.77102280797567 375.2269468186707, 390.6426835400632 353.98780612645925, 370.0 337.0 C 349.48140335564676 320.11431064159876, 325.5094968300733 307.4434457637957, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
103
+ <path d="M 300.0 300.0 C 306.16464525689196 325.844837685834, 317.445967422906 350.45863150259197, 333.0 372.0 C 348.56282095470834 393.55353985424085, 368.3911596441602 412.0144069099374, 391.0 426.0 C 384.8353547431081 400.155162314166, 373.554032577094 375.54136849740803, 358.0 354.0 C 342.43717904529166 332.4464601457592, 322.6088403558398 313.9855930900626, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
104
+ <path d="M 300.0 300.0 C 299.5098023352271 326.58091698323665, 304.2963365379663 353.24875039849786, 314.0 378.0 C 323.7489561457055 402.86677818749126, 338.4539079060173 425.77914488379105, 357.0 445.0 C 357.74038449283387 418.0821708347422, 352.9452947604056 391.0241644874685, 343.0 366.0 C 333.2380255044832 341.4371025310544, 318.5246955638154 318.85385192444807, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
105
+ <path d="M 300.0 300.0 C 292.8688833824931 325.6042097856881, 290.8176218361004 352.6124868131924, 294.0 379.0 C 297.2140700536771 405.6502947031294, 305.7652796398374 431.6459718450566, 319.0 455.0 C 326.3007452973571 429.08860576332654, 328.35410264219604 401.71050783213997, 325.0 375.0 C 321.69536473470566 348.68342726738473, 313.1462354273337 323.0360393452688, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
106
+ <path d="M 300.0 300.0 C 286.37334902910254 322.89410141510507, 277.46749720106936 348.5840586113545, 274.0 375.0 C 270.495028294497 401.7014280827319, 272.55142776674273 429.1200877126751, 280.0 455.0 C 293.08327875515596 431.57328473622476, 301.6209109303956 405.61888292349613, 305.0 379.0 C 308.3428285519148 352.66676047188105, 306.6361764292877 325.70165693437195, 300.0 300.0 Z" fill="rgb(140.0, 0, 120.0)"/>
107
+ <path d="M 300.0 300.0 C 282.87086297038206 312.85240631227845, 268.46488895160104 329.3163766194568, 258.0 348.0 C 247.516853679505 366.7162194076881, 240.99922218279218 387.64124684450286, 239.0 409.0 C 255.58263784564195 395.436091558428, 269.57366857683144 378.71510361139667, 280.0 360.0 C 290.31983250769645 341.4760602943595, 297.1415021827729 321.01105126913023, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
108
+ <path d="M 300.0 300.0 C 280.4795545803448 308.79214841404513, 262.70463582923776 321.439686756179, 248.0 337.0 C 233.2971927049357 352.5583783054215, 221.67520243079437 371.0168334467048, 214.0 391.0 C 233.52044541965518 382.20785158595487, 251.29536417076224 369.560313243821, 266.0 354.0 C 280.7028072950643 338.4416216945785, 292.3247975692056 319.9831665532952, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
109
+ <path d="M 300.0 300.0 C 278.77177304994586 303.1034629146107, 258.20281519856536 310.6454141267836, 240.0 322.0 C 221.86966352041458 333.30937496327414, 206.10360572992573 348.3899519802635, 194.0 366.0 C 214.84933521141588 362.6060231005542, 235.01860739985506 355.0852775387633, 253.0 344.0 C 271.3904210966794 332.66256210268295, 287.4759401441021 317.60377831360637, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
110
+ <path d="M 300.0 300.0 C 278.4875202076204 297.9454265637045, 256.5597365309625 300.34377790333895, 236.0 307.0 C 215.84390932995078 313.5255416040103, 197.01963572821293 324.1355867249898, 181.0 338.0 C 202.1875210847647 339.82302143602124, 223.72942315935617 337.4294767610666, 244.0 331.0 C 264.47151318999033 324.50678970047846, 283.62949295870936 313.90147947136614, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
111
+ <path d="M 300.0 300.0 C 279.5552444916227 292.76140444427637, 257.64820575684183 289.68072712219777, 236.0 291.0 C 214.88330935243448 292.28688158054246, 194.0297525619898 297.7566669682001, 175.0 307.0 C 195.13886606625528 314.0901102497043, 216.68145770647774 317.16762334116464, 238.0 316.0 C 259.451467859033 314.8250962833392, 280.65881081656937 309.35223358462014, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
112
+ <path d="M 300.0 300.0 C 281.78977830640457 288.2452537215945, 261.2934338321936 280.0467159319101, 240.0 276.0 C 219.24747916127728 272.05608201255046, 197.75252083872272 272.05608201255046, 177.0 276.0 C 194.88102456421387 287.6905126921847, 215.03576329718797 295.8890504818691, 236.0 300.0 C 257.06603279295683 304.1309110647238, 278.93396720704317 304.1309110647238, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
113
+ <path d="M 300.0 300.0 C 285.27973711303844 284.19562108914255, 267.52903488266156 271.22395407463637, 248.0 262.0 C 228.58565606861228 252.8302167573419, 207.42719901932995 247.36996977688193, 186.0 246.0 C 200.72026288696156 261.80437891085745, 218.4709651173384 274.77604592536363, 238.0 284.0 C 257.4143439313877 293.16978324265807, 278.5728009806701 298.63003022311807, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
114
+ <path d="M 300.0 300.0 C 289.8093948580077 280.8475663751412, 275.7851882924251 263.74487544150395, 259.0 250.0 C 242.51222891819694 236.498670382525, 223.37441121249446 226.2462680401844, 203.0 220.0 C 213.04157174113448 238.68685348260618, 226.70178288248752 255.42061213076363, 243.0 269.0 C 259.723906884114 282.9340650962587, 279.214421614957 293.53416959899783, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
115
+ <path d="M 300.0 300.0 C 294.7967197814053 279.1851430178883, 285.5779351800578 259.38182794832716, 273.0 242.0 C 260.3414285313522 224.5067383326564, 244.28900368325066 209.47893634719958, 226.0 198.0 C 231.20328021859473 218.81485698211168, 240.4220648199422 238.61817205167284, 253.0 256.0 C 265.6585714686477 273.49326166734363, 281.71099631674934 288.5210636528004, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
116
+ <path d="M 300.0 300.0 C 300.1047936543939 278.4892731972975, 296.0051190502657 256.96598152562444, 288.0 237.0 C 279.96733402520573 216.96531226491496, 268.00794046733745 198.5136764899182, 253.0 183.0 C 252.89520634560606 204.51072680270246, 256.9948809497343 226.03401847437556, 265.0 246.0 C 273.03266597479427 266.0346877350851, 284.99205953266255 284.48632351008183, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
117
+ <path d="M 300.0 300.0 C 305.36035592011444 279.1753762212659, 306.7256918237731 257.3300017627271, 304.0 236.0 C 301.2712906507974 214.64638448088004, 294.4442557917862 193.8239281608958, 284.0 175.0 C 277.9993169739319 195.69544294427502, 276.2861691058512 217.62373565570806, 279.0 239.0 C 281.72748938534346 260.48384935224175, 288.9246860027591 281.38999190759176, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
118
+ <path d="M 300.0 300.0 C 310.5935617119436 281.2474218142613, 317.43385772195154 260.3845189837371, 320.0 239.0 C 322.56614227804846 217.61548101626292, 320.8560682755465 195.7265337842375, 315.0 175.0 C 304.4064382880564 193.75257818573868, 297.56614227804846 214.61548101626292, 295.0 236.0 C 292.43385772195154 257.3845189837371, 294.1439317244535 279.27346621576254, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
119
+ <path d="M 300.0 300.0 C 314.55658014497095 284.3211687282087, 326.1529746132444 265.90336574918615, 334.0 246.0 C 341.8868976268974 225.99550143427922, 345.9806908805039 204.50308685284483, 346.0 183.0 C 330.86076081735007 198.40154374392358, 318.87669207780004 216.89124979922929, 311.0 237.0 C 303.1726269456977 256.9828415180564, 299.4074539929269 278.5470138839257, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
120
+ <path d="M 300.0 300.0 C 317.8776363338461 288.3461684604818, 333.5635033040321 273.34229570639087, 346.0 256.0 C 358.4999929505346 238.56916080343953, 367.70903812876406 218.78676745761328, 373.0 198.0 C 354.61250125662474 209.3415376485865, 338.52795823196504 224.39940771422533, 326.0 242.0 C 313.6338534679551 259.37326220495623, 304.7419695376266 279.2090032803045, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
121
+ <path d="M 300.0 300.0 C 320.41628799343084 293.3667769507278, 339.540156989801 282.78034947059433, 356.0 269.0 C 372.26349641200454 255.38403391622202, 385.91563948453035 238.66015865237793, 396.0 220.0 C 375.5730240702531 226.10661895403078, 356.4006337622541 236.37754233331597, 340.0 250.0 C 323.4680426363879 263.73153578074164, 309.7676540233453 280.8570215470449, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
122
+ <path d="M 300.0 300.0 C 321.08830668177984 298.49534301733246, 341.88808823672764 293.0396626094773, 361.0 284.0 C 380.5233394422574 274.76573794634925, 398.2716462552382 261.795821429171, 413.0 246.0 C 391.55709882837954 247.24487334020682, 370.36755075871815 252.71314380979686, 351.0 262.0 C 331.7644449505238 271.22356345976317, 314.34019015136863 284.20634154540824, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
123
+ <path d="M 300.0 300.0 C 320.741055607037 304.0340205914381, 342.258944392963 304.0340205914381, 363.0 300.0 C 383.97263200436436 295.9209390801905, 404.1352239345381 287.7192067696114, 422.0 276.0 C 401.258944392963 271.9659794085619, 379.741055607037 271.9659794085619, 359.0 276.0 C 338.02736799563564 280.0790609198095, 317.8647760654619 288.2807932303886, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
124
+ <path d="M 300.0 300.0 C 319.0086000752798 309.2951225299275, 339.87631922573223 314.7686226349642, 361.0 316.0 C 382.31927346176616 317.2427791851412, 403.88147564854404 314.1624645870301, 424.0 307.0 C 404.9913999247202 297.7048774700725, 384.12368077426777 292.2313773650358, 363.0 291.0 C 341.68072653823384 289.7572208148588, 320.118524351456 292.8375354129699, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
125
+ <path d="M 300.0 300.0 C 316.01018411370717 313.8769278243014, 334.83809736789783 324.4890243857543, 355.0 331.0 C 375.24378288328455 337.537417578998, 396.8149250355521 339.93421115147214, 418.0 338.0 C 401.98981588629283 324.1230721756986, 383.16190263210217 313.5109756142457, 363.0 307.0 C 342.75621711671545 300.462582421002, 321.1850749644479 298.06578884852786, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
126
+ <path d="M 300.0 300.0 C 312.1238208778527 317.5939951911014, 327.8848024946713 332.6697167376235, 346.0 344.0 C 363.9169481539287 355.2062867502058, 384.1201477879298 362.73968322390107, 405.0 366.0 C 392.8761791221473 348.4060048088986, 377.1151975053287 333.3302832623765, 359.0 322.0 C 341.0830518460713 310.7937132497943, 320.8798522120702 303.26031677609893, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
127
+ <path d="M 300.0 300.0 C 307.23252964840333 319.9683491403247, 318.52974664956696 338.4547042331379, 333.0 354.0 C 347.59427698238017 369.6785335197892, 365.4040371334087 382.35086285802106, 385.0 391.0 C 377.25928645190567 371.0471143542715, 365.647185718681 352.6043661309147, 351.0 337.0 C 336.5396817505952 321.5947129593998, 319.1321575250609 308.9657247957769, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
128
+ <path d="M 300.0 300.0 C 302.3831128488183 320.9754353191263, 308.87500883355585 341.4761594814552, 319.0 360.0 C 329.28046734812995 378.8082867908067, 343.29991184840577 395.56323265698995, 360.0 409.0 C 357.8966777405481 387.6585374278824, 351.3876402377291 366.76110123462144, 341.0 348.0 C 330.7382363943947 329.4662443592094, 316.701576781897 313.03308188604143, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
129
+ <path d="M 300.0 300.0 C 296.80869934749444 320.92113801350047, 297.83515818174334 342.4767735327263, 303.0 363.0 C 308.2755591994854 383.96317757686785, 317.8665723155751 403.83027617448226, 331.0 421.0 C 333.76985231129606 399.6728523991169, 332.4038173642364 377.81629324616233, 327.0 357.0 C 321.6860350748743 336.5298314644526, 312.47259606362445 317.0792379962585, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
130
+ <path d="M 300.0 300.0 C 291.5211231142682 319.4988079519875, 287.06783101508586 340.7375856557803, 287.0 362.0 C 286.9311055938386 383.5957465467517, 291.38819922982293 405.19550801344514, 300.0 425.0 C 307.9660191498756 405.021223972112, 312.063728153199 383.50825170466413, 312.0 362.0 C 311.93725949823175 340.82508065321326, 307.8425627210321 319.66914730434854, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
131
+ <path d="M 300.0 300.0 C 287.06027015896245 316.9252622701419, 277.48698316591503 336.41373936313124, 272.0 357.0 C 266.4588299830858 377.7895608118518, 265.09053537613283 399.6822745230994, 268.0 421.0 C 280.98720972966 403.73396227627796, 290.5580787309242 383.9085907736592, 296.0 363.0 C 301.33257683338167 342.51152520124407, 302.69849057058593 320.9983838402777, 300.0 300.0 Z" fill="rgb(168.75, 0, 145.3125)"/>
132
+ <path d="M 300.0 300.0 C 285.97279296760945 308.04320517106686, 273.632303890926 319.0125287947855, 264.0 332.0 C 254.51831940090395 344.784382132483, 247.66837798122748 359.51175618478743, 244.0 375.0 C 258.02720703239055 366.95679482893314, 270.367696109074 355.9874712052145, 280.0 343.0 C 289.4816805990961 330.215617867517, 296.3316220187725 315.48824381521257, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
133
+ <path d="M 300.0 300.0 C 284.3392352167577 304.21881796159175, 269.58420382017033 311.7679037924039, 257.0 322.0 C 244.5921445275577 332.0887090465338, 234.30614802412057 344.7747714007729, 227.0 359.0 C 242.2447860592554 354.4700073360316, 256.5957506232827 346.9528354215411, 269.0 337.0 C 281.63138263640025 326.8649189718343, 292.2333597583859 314.2109462778514, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
134
+ <path d="M 300.0 300.0 C 283.8019607410423 300.4057646399536, 267.6957367426677 304.17530642680725, 253.0 311.0 C 238.6340008066873 317.67156360268984, 225.62775889322725 327.2551102757657, 215.0 339.0 C 230.84930439522012 338.33045837888136, 246.56238784575945 334.5729819015785, 261.0 328.0 C 275.65819998103035 321.3265915335777, 288.9901008777936 311.75497037692713, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
135
+ <path d="M 300.0 300.0 C 284.27984495830367 296.47580105622615, 267.8532929109019 296.1335812219053, 252.0 299.0 C 235.99404678379025 301.89402114236464, 220.5863944961275 308.05708205742974, 207.0 317.0 C 222.82604531601498 319.8864669150354, 239.17395468398502 319.8864669150354, 255.0 317.0 C 270.86073119533273 314.10720682713645, 286.18833063544565 308.3167803719827, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
136
+ <path d="M 300.0 300.0 C 285.484742303507 292.4165784542463, 269.3490609040188 287.9535176416219, 253.0 287.0 C 237.07488849951324 286.0712081354608, 220.9632842312598 288.4708087711581, 206.0 294.0 C 220.3996760339788 300.83688776248397, 236.0955375093856 304.9314603212858, 252.0 306.0 C 268.1869380111138 307.0875177675429, 284.5788183012387 305.0385327312773, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
137
+ <path d="M 300.0 300.0 C 287.865738040529 289.2046697727324, 273.4610636521466 280.9734272650853, 258.0 276.0 C 242.57585087204265 271.0384471896877, 226.11557802128155 269.3238354344001, 210.0 271.0 C 222.3993479774578 281.1998183507812, 236.72776109643712 289.0463302968889, 252.0 294.0 C 267.42984093851715 299.00478915132237, 283.81297529926553 301.05268094641593, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
138
+ <path d="M 300.0 300.0 C 290.83781993242457 286.4207303840502, 278.83908110483964 274.7648126658249, 265.0 266.0 C 251.35978998117218 257.3611399028709, 235.94505641369605 251.5377961107132, 220.0 249.0 C 229.47296863210838 262.0534685875489, 241.41234391909913 273.3105938581401, 255.0 282.0 C 268.691253928814 290.75565772863683, 284.04725906628175 296.8980597836239, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
139
+ <path d="M 300.0 300.0 C 294.0725074261918 284.8337521696646, 285.1910523282129 270.8283806690056, 274.0 259.0 C 262.93461550681525 247.30444392576607, 249.61964548269157 237.74497826742086, 235.0 231.0 C 240.92749257380817 246.16624783033538, 249.80894767178708 260.1716193309945, 261.0 272.0 C 272.06538449318475 283.69555607423393, 285.38035451730843 293.25502173257917, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
140
+ <path d="M 300.0 300.0 C 297.9946616249453 283.8976212052045, 292.87235705663795 268.18922052906186, 285.0 254.0 C 277.14638867329137 239.84456697498948, 266.5614978275009 227.21098757840082, 254.0 217.0 C 256.0053383750547 233.10237879479553, 261.12764294336205 248.81077947093812, 269.0 263.0 C 276.85361132670863 277.1554330250105, 287.43850217249917 289.7890124215992, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
141
+ <path d="M 300.0 300.0 C 302.1558964023825 284.00989494279366, 301.13010484217176 267.5972299794217, 297.0 252.0 C 292.89074780389655 236.48151947823993, 285.7120300131812 221.78224019248952, 276.0 209.0 C 274.0517565605586 224.67020259544861, 275.07523322872515 240.70467039672477, 279.0 256.0 C 283.0647397368521 271.8408225634484, 290.24103736194417 286.8768747303079, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
142
+ <path d="M 300.0 300.0 C 305.928236025799 285.08831411004695, 309.0 269.04688002255284, 309.0 253.0 C 309.0 236.95311997744716, 305.928236025799 220.91168588995305, 300.0 206.0 C 293.43128482927466 220.73768116495714, 290.0 236.8647198625481, 290.0 253.0 C 290.0 269.1352801374519, 293.43128482927466 285.26231883504283, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
143
+ <path d="M 300.0 300.0 C 309.2874258539239 286.72436214243805, 316.1046076551019 271.7265621798464, 320.0 256.0 C 323.79463842604343 240.6802037193079, 324.8160604085394 224.67792599353783, 323.0 209.0 C 313.14770049764905 221.68872545852122, 305.94925785099525 236.42839373500274, 302.0 252.0 C 298.0350273524829 267.6335684445268, 297.3493102478596 284.09077895548745, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
144
+ <path d="M 300.0 300.0 C 312.1295190146428 289.61849938057145, 322.34985149525613 277.0134226544817, 330.0 263.0 C 337.77195201652063 248.76345957332475, 342.88566231287 233.08141466452003, 345.0 217.0 C 332.3231545637847 227.08535297270868, 321.7097196486772 239.75300109719186, 314.0 254.0 C 306.3205256436483 268.1911078112753, 301.5283547131174 283.93681229730555, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
145
+ <path d="M 300.0 300.0 C 314.2304026996065 293.0845645288765, 327.17948273595556 283.5431371336719, 338.0 272.0 C 349.1329962340562 260.1235158077526, 358.0042413735066 246.1342446263116, 364.0 231.0 C 349.30516011797596 237.60485542081688, 335.95665997054914 247.1883939882002, 325.0 259.0 C 314.04093127412574 270.8142027218333, 305.48410191033605 284.8474028784483, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
146
+ <path d="M 300.0 300.0 C 315.5994849003315 296.7471308017512, 330.59340067727413 290.61325616572924, 344.0 282.0 C 357.5676503218837 273.28327438030254, 369.5009349069675 262.03189177150927, 379.0 249.0 C 363.0235549820677 251.39924482564587, 347.5721491505482 257.2364425842199, 334.0 266.0 C 320.43380691156204 274.75971157738735, 308.75971157738735 286.43380691156204, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
147
+ <path d="M 300.0 300.0 C 315.85758153600176 300.93742751199574, 331.88649640936916 298.8911830600765, 347.0 294.0 C 362.2761293441137 289.05618636847475, 376.60686102220353 281.20840473523504, 389.0 271.0 C 372.88870486679883 269.2074725389437, 356.3959761387971 270.92546511477724, 341.0 276.0 C 325.84753327427757 280.9942738481578, 311.7732417656614 289.23288351173795, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
148
+ <path d="M 300.0 300.0 C 315.09466843803483 304.9641861299149, 331.1423093571841 307.0128211408701, 347.0 306.0 C 362.9112334474256 304.9837591124801, 378.6199635848914 300.885829511402, 393.0 294.0 C 378.0588548847182 288.3957419422435, 361.9258083485441 285.9929477772814, 346.0 287.0 C 329.97781070731645 288.0131467732682, 314.1824621854195 292.477049616413, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
149
+ <path d="M 300.0 300.0 C 313.46765386087696 308.2833774212151, 328.46150178381924 314.07645502780645, 344.0 317.0 C 359.8151121726028 319.97558947033525, 376.1848878273972 319.97558947033525, 392.0 317.0 C 378.43261890953875 308.02353548973633, 363.01532045189515 301.8566161066789, 347.0 299.0 C 331.4722270611475 296.23034662895367, 315.39591639461895 296.5723957920713, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
150
+ <path d="M 300.0 300.0 C 310.63123701613046 311.7412909481619, 323.6364077341406 321.3240483193273, 338.0 328.0 C 352.392967588536 334.6896048275432, 368.1377512630295 338.45466179318294, 384.0 339.0 C 373.36876298386954 327.2587090518381, 360.3635922658594 317.6759516806727, 346.0 311.0 C 331.607032411464 304.3103951724568, 315.8622487369705 300.54533820681706, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
151
+ <path d="M 300.0 300.0 C 307.3452762178081 314.20153661402924, 317.62341263244036 326.87790485874234, 330.0 337.0 C 342.3183766285947 347.07448794384953, 356.70410328966403 354.6098685758382, 372.0 359.0 C 364.6547237821919 344.79846338597076, 354.37658736755964 332.12209514125766, 342.0 322.0 C 329.6816233714053 311.92551205615047, 315.29589671033597 304.3901314241618, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
152
+ <path d="M 300.0 300.0 C 303.2085604494859 315.45806459542047, 309.7311585519991 330.2197339853187, 319.0 343.0 C 328.5003015858073 356.0994129274379, 340.8770993895877 367.10101097524273, 355.0 375.0 C 351.2494843628523 359.53734781175933, 344.4091883528443 344.83071139024224, 335.0 332.0 C 325.5908116471557 319.16928860975776, 313.62029362964176 308.22481499374504, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
153
+ <path d="M 300.0 300.0 C 299.4364418186608 315.99263930695935, 302.17716803440123 332.0944058244344, 308.0 347.0 C 313.82672745405216 361.9155660535701, 322.7344107100696 375.6196941397508, 334.0 387.0 C 333.9493987882082 370.9563721800828, 330.88001299430437 354.92735747858507, 325.0 340.0 C 319.2049996362681 325.28846073950035, 310.6844733331958 311.6556186545847, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
154
+ <path d="M 300.0 300.0 C 295.5901582485205 315.199163246032, 294.2220685031522 331.27421775411034, 296.0 347.0 C 297.8243171414107 363.13606270215246, 302.96156223213893 378.8902809803857, 311.0 393.0 C 315.57907020863274 377.4946335509663, 316.9495051383288 361.0494143946138, 315.0 345.0 C 313.08053918049353 329.19792720685393, 307.94567502028247 313.79333472622073, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
155
+ <path d="M 300.0 300.0 C 291.57443505586707 313.64793406602325, 286.08163115690587 329.09644503185154, 284.0 345.0 C 281.9003761624879 361.04101812251014, 283.27427142272774 377.52776124538855, 288.0 393.0 C 295.8833859526687 378.816011315182, 301.00665461403145 363.1046540870028, 303.0 347.0 C 304.9396364046215 331.32927200129467, 303.91629638674584 315.29694505457553, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
156
+ <path d="M 300.0 300.0 C 288.86436488192436 311.4917147353668, 279.9813004395699 325.15796772360443, 274.0 340.0 C 268.0000985416345 354.8881889481975, 264.9247238195517 370.948479163519, 265.0 387.0 C 276.13563511807564 375.5082852646332, 285.0186995604301 361.84203227639557, 291.0 347.0 C 296.9999014583655 332.1118110518025, 300.0752761804483 316.051520836481, 300.0 300.0 Z" fill="rgb(197.5, 0, 176.25)"/>
157
+ <path d="M 300.0 300.0 C 290.24555551934424 304.17931745713355, 281.34540559706784 310.34095971101726, 274.0 318.0 C 266.5878695471011 325.728614167829, 260.76574696148475 334.9755147449843, 257.0 345.0 C 266.7544444806557 340.82068254286645, 275.65459440293216 334.65904028898274, 283.0 327.0 C 290.4121304528989 319.271385832171, 296.23425303851525 310.02448525501563, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
158
+ <path d="M 300.0 300.0 C 289.38588652497293 301.5517314573054, 279.1014075992827 305.32270706339176, 270.0 311.0 C 260.9348317602073 316.65468748163704, 253.05180286496287 324.19497599013175, 247.0 333.0 C 257.23457993179943 331.16405595267514, 267.1224221901363 327.4134950960646, 276.0 322.0 C 285.3242994973989 316.31409662810023, 293.5262740429369 308.79561996135703, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
159
+ <path d="M 300.0 300.0 C 289.2818586046028 298.71856223420684, 278.2932018057075 299.74874880910323, 268.0 303.0 C 257.6714454229958 306.26241785623074, 248.05442616907786 311.75785742989814, 240.0 319.0 C 250.79136737960837 319.65668502390827, 261.702320237957 318.2928159166147, 272.0 315.0 C 282.1412934027998 311.7571906387217, 291.6819198457494 306.64614075857014, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
160
+ <path d="M 300.0 300.0 C 289.8247522322641 296.170380453441, 278.85848500940614 294.45690119986944, 268.0 295.0 C 257.2681971543559 295.53676265553236, 246.6513770045725 298.2765872103152, 237.0 303.0 C 247.1752477677359 306.82961954655906, 258.14151499059386 308.54309880013056, 269.0 308.0 C 279.7318028456441 307.46323734446764, 290.3486229954275 304.7234127896848, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
161
+ <path d="M 300.0 300.0 C 290.8868740925423 294.13700990569157, 280.64260158423383 290.03930090236815, 270.0 288.0 C 259.46107992497883 285.9805662131696, 248.53892007502117 285.9805662131696, 238.0 288.0 C 247.1131259074577 293.86299009430843, 257.35739841576617 297.96069909763185, 268.0 300.0 C 278.53892007502117 302.0194337868304, 289.46107992497883 302.0194337868304, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
162
+ <path d="M 300.0 300.0 C 292.6398685565192 292.09781054457125, 283.7645174413308 285.6119770373182, 274.0 281.0 C 264.2928280343061 276.41510837867094, 253.71359950966496 273.68498488844097, 243.0 273.0 C 250.36013144348078 280.90218945542875, 259.2354825586692 287.3880229626818, 269.0 292.0 C 278.7071719656939 296.58489162132906, 289.28640049033504 299.31501511155903, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
163
+ <path d="M 300.0 300.0 C 294.69369045466874 290.4205312467728, 287.5197760173993 281.88015691669005, 279.0 275.0 C 270.71391823264895 268.30856319843696, 261.1612751449576 263.19107583003085, 251.0 260.0 C 256.15053805534706 269.1159852325101, 262.9622426993149 277.29003080527156, 271.0 284.0 C 279.52726586039387 291.1186139488966, 289.4306980192284 296.58257651928807, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
164
+ <path d="M 300.0 300.0 C 297.1237126549655 289.5980039964569, 292.35604186820615 279.72211450959816, 286.0 271.0 C 279.71873483043356 262.38049823929634, 271.890022422964 254.89216463215158, 263.0 249.0 C 265.3295671331234 259.40779922818194, 269.78018662911853 269.3361042577096, 276.0 278.0 C 282.3740752220313 286.87877495420247, 290.60150823390126 294.42058854841656, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
165
+ <path d="M 300.0 300.0 C 300.1782838943812 289.07499676726474, 298.1239110651122 278.11834167783024, 294.0 268.0 C 289.8899151787109 257.91558210396676, 283.72789158815027 248.67254671812583, 276.0 241.0 C 275.8217161056188 251.92500323273526, 277.8760889348878 262.88165832216976, 282.0 273.0 C 286.11008482128915 283.08441789603324, 292.27210841184973 292.32745328187417, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
166
+ <path d="M 300.0 300.0 C 302.64014566605016 289.58009544740963, 303.3221797632681 278.66754989192276, 302.0 268.0 C 300.6565145977758 257.16055293277805, 297.2438418947809 246.581267553494, 292.0 237.0 C 288.7255863353652 247.2876375299483, 287.69476915406176 258.28302079718543, 289.0 269.0 C 290.3363251077652 279.9722877241875, 294.1214536623169 290.63946819610595, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
167
+ <path d="M 300.0 300.0 C 305.39628811815646 290.49104604954044, 308.8224812633815 279.8698472993428, 310.0 269.0 C 311.1616609225808 258.2765384962548, 310.13455028571013 247.32069170296796, 307.0 237.0 C 301.60371188184354 246.50895395045956, 298.1775187366185 257.1301527006572, 297.0 268.0 C 295.8383390774192 278.7234615037452, 296.86544971428987 289.67930829703204, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
168
+ <path d="M 300.0 300.0 C 307.2781613625655 292.1604789756333, 313.0763366396465 282.95161235909285, 317.0 273.0 C 321.00475558959096 262.8427129036552, 323.053113469358 251.91813754489772, 323.0 241.0 C 315.14381389476694 248.55839109805402, 308.9553663577295 257.84106240361024, 305.0 268.0 C 301.0522729785717 278.1393167740076, 299.3334624149433 289.13970438122914, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
169
+ <path d="M 300.0 300.0 C 308.9881165505352 294.2397133533983, 316.8461250433021 286.7233574037952, 323.0 278.0 C 329.1446408764795 269.28973226452064, 333.5857988083592 259.3825338010967, 336.0 249.0 C 327.0118834494648 254.76028664660168, 319.1538749566979 262.2766425962048, 313.0 271.0 C 306.8553591235205 279.71026773547936, 302.4142011916408 289.6174661989033, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
170
+ <path d="M 300.0 300.0 C 310.1978636754293 296.41756082091604, 319.73621391818665 290.9670749679118, 328.0 284.0 C 336.00274580524456 277.25300420142946, 342.8067287859583 269.08822462457294, 348.0 260.0 C 337.7865120351266 263.0533094770154, 328.20031688112704 268.188771166658, 320.0 275.0 C 311.7340213181939 281.8657678903708, 304.8838270116726 290.4285107735225, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
171
+ <path d="M 300.0 300.0 C 310.3744136150466 299.18097615781545, 320.5952891842038 296.45540933937355, 330.0 292.0 C 339.75843352840207 287.37701724894373, 348.6312309358821 280.8930499127083, 356.0 273.0 C 345.2706990819399 273.5578239442298, 334.6593791217931 276.29622909523545, 325.0 281.0 C 315.5286223842937 285.61222091969483, 306.97977034914453 292.10934846640816, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
172
+ <path d="M 300.0 300.0 C 310.2135517210477 301.9247422696199, 320.7864482789523 301.9247422696199, 331.0 300.0 C 341.65088129061365 297.9928430394588, 351.9030466788376 293.89197688416925, 361.0 288.0 C 350.4732313836318 285.8869424209695, 339.5267686163682 285.8869424209695, 329.0 288.0 C 318.6782492862493 290.0719039592683, 308.7678227442995 294.17277011455786, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
173
+ <path d="M 300.0 300.0 C 309.31953004052605 304.6632709879971, 319.5959572737361 307.4036515835198, 330.0 308.0 C 340.85975597006365 308.62246940410586, 351.8477540469212 306.90559470459687, 362.0 303.0 C 352.3718639695474 298.2199533625136, 341.7388694161066 295.4759547680772, 331.0 295.0 C 320.4703581530077 294.5333183551236, 309.8489588832385 296.2464472696025, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
174
+ <path d="M 300.0 300.0 C 307.9586720982294 306.62618830231946, 317.16940957821134 311.74326468008724, 327.0 315.0 C 337.2696171275209 318.40217864707796, 348.2089117325067 319.7695904727012, 359.0 319.0 C 350.9580775418316 311.7418065264168, 341.3360350098495 306.24349650814133, 331.0 303.0 C 321.02314104512635 299.8692146309959, 310.39205752956127 298.8404000972315, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
175
+ <path d="M 300.0 300.0 C 306.07290316339567 308.78825326284067, 313.95064862354633 316.32348805081085, 323.0 322.0 C 331.8155170110812 327.5298314287906, 341.73471444953543 331.29228562958355, 352.0 333.0 C 345.92709683660433 324.21174673715933, 338.04935137645367 316.67651194918915, 329.0 311.0 C 320.1844829889188 305.4701685712094, 310.26528555046457 301.70771437041645, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
176
+ <path d="M 300.0 300.0 C 303.3225179997173 310.0048274949419, 308.8196751860269 319.28128024683934, 316.0 327.0 C 323.2356502947978 334.7781936478323, 332.17266184186013 340.9653554881063, 342.0 345.0 C 338.1685654139772 335.00557630012526, 332.3566303915864 325.7748559704458, 325.0 318.0 C 317.9001816816907 310.4965559090316, 309.3679083200028 304.35331908861633, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
177
+ <path d="M 300.0 300.0 C 300.8377202637333 310.4853118724417, 303.927649831681 320.78507709893404, 309.0 330.0 C 314.1660253114293 339.3851022445385, 321.3837073299392 347.6338816942641, 330.0 354.0 C 328.58227727970035 343.4921727789555, 325.170518156387 333.2568954090154, 320.0 324.0 C 314.8926342667853 314.8561678002124, 308.0729329331458 306.67252619984504, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
178
+ <path d="M 300.0 300.0 C 298.2125909677817 310.2567446162796, 298.5552694000635 320.8797760170157, 301.0 331.0 C 303.5396497768986 341.51315207541376, 308.3475357963969 351.4723445443746, 315.0 360.0 C 316.3647253326055 349.33511940851946, 315.68202777720535 338.41195852211735, 313.0 328.0 C 310.41880652101025 317.9794925059258, 305.9889774041 308.438322100273, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
179
+ <path d="M 300.0 300.0 C 295.4103073606201 309.64469973989515, 293.0 320.3189180512126, 293.0 331.0 C 293.0 341.6810819487874, 295.4103073606201 352.35530026010485, 300.0 362.0 C 303.9511454983383 352.1752430484868, 306.0 341.5894947899013, 306.0 331.0 C 306.0 320.4105052100987, 303.9511454983383 309.8247569515132, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
180
+ <path d="M 300.0 300.0 C 293.5448776229549 308.28596117989116, 288.7556955176859 317.86432539042926, 286.0 328.0 C 283.17670459818993 338.38431253953433, 282.49166410040283 349.3449605041277, 284.0 360.0 C 290.50301086207116 351.37314530375005, 295.28971648281674 341.45782651791995, 298.0 331.0 C 300.6133210435193 320.91631025481877, 301.2959281971456 310.33589937361126, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
181
+ <path d="M 300.0 300.0 C 291.49790870121865 306.497990403338, 284.31188987338174 314.71058334943734, 279.0 324.0 C 273.73328619161873 333.2104128872269, 270.3128766856311 343.47164140518976, 269.0 354.0 C 277.50209129878135 347.502009596662, 284.68811012661826 339.28941665056266, 290.0 330.0 C 295.26671380838127 320.7895871127731, 298.6871233143689 310.52835859481024, 300.0 300.0 Z" fill="rgb(226.25, 0, 212.8125)"/>
182
+ <path d="M 300.0 300.0 C 294.5577892320643 301.16246718670266, 289.3866686290666 303.5756568014349, 285.0 307.0 C 280.86437256536425 310.22837416616255, 277.42968111784853 314.3500039031814, 275.0 319.0 C 280.034347038118 317.5268683689737, 284.8008864723081 315.1435986518786, 289.0 312.0 C 293.36907433272296 308.7291629312402, 297.1207083905662 304.6364712317748, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
183
+ <path d="M 300.0 300.0 C 294.5303232671546 299.7321633222264, 289.00112389413795 300.76888820466706, 284.0 303.0 C 278.96056151609656 305.24820477982377, 274.46563010462273 308.7058443271113, 271.0 313.0 C 276.5184267317551 312.66377090512515, 281.9725744861574 311.3002339665246, 287.0 309.0 C 291.8175939774726 306.7957717576532, 296.241049285093 303.7333796216083, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
184
+ <path d="M 300.0 300.0 C 294.82698882844466 298.495593754565, 289.3200733408581 298.1514115365908, 284.0 299.0 C 278.6379947292457 299.8552768960075, 273.47267753813765 301.92140377245073, 269.0 305.0 C 274.28668942045516 305.8631329666049, 279.71331057954484 305.8631329666049, 285.0 305.0 C 290.22382868983516 304.14713000982283, 295.3092150540256 302.45200122175936, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
185
+ <path d="M 300.0 300.0 C 295.1891954101621 297.0461556582245, 289.63669378981007 295.31099890186454, 284.0 295.0 C 278.5293971718774 294.69816499963883, 272.98967071136457 295.736863710985, 268.0 298.0 C 273.0221400777042 300.3139199118348, 278.4797964435152 301.67833400328755, 284.0 302.0 C 289.3956578814246 302.3144086359477, 294.8477552560833 301.63289646411533, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
186
+ <path d="M 300.0 300.0 C 295.92049176310246 296.4468799227021, 291.1322845560969 293.710761518699, 286.0 292.0 C 280.8677154439031 290.289238481301, 275.3954786358967 289.6052088803002, 270.0 290.0 C 274.07950823689754 293.5531200772979, 278.8677154439031 296.289238481301, 284.0 298.0 C 289.1322845560969 299.710761518699, 294.6045213641033 300.3947911196998, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
187
+ <path d="M 300.0 300.0 C 297.03789090305787 295.11652284017646, 292.88347715982354 290.96210909694213, 288.0 288.0 C 283.4559757768071 285.2437885859322, 278.288946226995 283.52144540266147, 273.0 283.0 C 276.29083244450203 287.35201374255126, 280.3787895311053 291.09930773860435, 285.0 294.0 C 289.58581609590993 296.8784755317088, 294.69408108109366 298.92178152578225, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
188
+ <path d="M 300.0 300.0 C 297.9839476803454 294.7908089087589, 294.9020582607671 289.9967587005259, 291.0 286.0 C 287.29548437688027 282.2055781696536, 282.85556833254236 279.13179013895814, 278.0 277.0 C 280.3185596104628 281.7557074232854, 283.36479083468777 286.15581919161036, 287.0 290.0 C 290.77193127998027 293.9887624556589, 295.17716915691466 297.3774069763777, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
189
+ <path d="M 300.0 300.0 C 299.54927582687753 294.3838743655822, 297.82726981322264 288.87345512188654, 295.0 284.0 C 292.25571936273343 279.26959596674067, 288.47437060423897 275.1444882302013, 284.0 272.0 C 284.73244326904995 277.24917676152455, 286.4364485583252 282.3611926293504, 289.0 287.0 C 291.76353783789835 292.000687516197, 295.52570064340273 296.4468799227021, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
190
+ <path d="M 300.0 300.0 C 300.65216200495047 294.6656816801676, 300.31128209142804 289.2116030638087, 299.0 284.0 C 297.64552982623263 278.6167487883892, 295.25582483158837 273.4959523712943, 292.0 269.0 C 291.34783799504953 274.3343183198324, 291.68871790857196 279.7883969361913, 293.0 285.0 C 294.35447017376737 290.3832512116108, 296.74417516841163 295.5040476287057, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
191
+ <path d="M 300.0 300.0 C 301.97704479995406 294.91322848345146, 303.0 289.4574674165399, 303.0 284.0 C 303.0 278.5425325834601, 301.97704479995406 273.08677151654854, 300.0 268.0 C 297.3868942599801 272.8995732625373, 296.0 278.44715030245777, 296.0 284.0 C 296.0 289.55284969754223, 297.3868942599801 295.1004267374627, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
192
+ <path d="M 300.0 300.0 C 302.78129163807824 295.3618857374925, 304.815339281017 290.2767666301456, 306.0 285.0 C 307.1754704888807 279.7641688872984, 307.5143905799927 274.3414474295062, 307.0 269.0 C 303.59474417078263 273.3993367234609, 301.18443681016254 278.56428106764685, 300.0 284.0 C 298.85575862449036 289.2512505983211, 298.85575862449036 294.7487494016789, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
193
+ <path d="M 300.0 300.0 C 304.0380586421173 296.2753827388563, 307.4357827450139 291.8583414050907, 310.0 287.0 C 312.4711505930281 282.31798905846307, 314.1677139095003 277.2282991090464, 315.0 272.0 C 310.42077975617786 275.0133891778549, 306.60457614092746 279.17652039449166, 304.0 284.0 C 301.3605220081933 288.8881152148365, 299.971338343623 294.4448498731176, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
194
+ <path d="M 300.0 300.0 C 304.4239763431151 297.22449120769573, 308.4722251260242 293.8509505552715, 312.0 290.0 C 315.57115219075547 286.1016983783747, 318.60823525330466 281.71480062135925, 321.0 277.0 C 316.07484925694547 278.99415070846504, 311.60017812467845 282.09199995388065, 308.0 286.0 C 304.3273058419042 289.98671633518205, 301.5701108854313 294.8118075090096, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
195
+ <path d="M 300.0 300.0 C 304.9510743244567 298.77779042485326, 309.700417670096 296.74235756243644, 314.0 294.0 C 318.5981343298322 291.0672201425678, 322.6792038794406 287.3262397220934, 326.0 283.0 C 320.68812281164145 283.3829880104459, 315.4792945569544 285.1192640953416, 311.0 288.0 C 306.3853280448518 290.9678001793332, 302.5560822353795 295.14515924421215, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
196
+ <path d="M 300.0 300.0 C 305.066252164721 300.27656286904016, 310.18319669755056 299.5943035979962, 315.0 298.0 C 320.1366064777521 296.2998454213801, 324.92743584356106 293.56222864091785, 329.0 290.0 C 323.60627486721495 289.4847399354258, 318.1009311128042 290.17290790472714, 313.0 292.0 C 308.1752830259593 293.72815551715075, 303.71695978472803 296.4717390502162, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
197
+ <path d="M 300.0 300.0 C 304.8251820710901 301.5621657789809, 309.93408216397484 302.2433524580322, 315.0 302.0 C 320.52681344426423 301.7345074120266, 325.9984622136617 300.3665952196772, 331.0 298.0 C 326.0422297582237 295.6497767365974, 320.47241767171846 294.60543697037764, 315.0 295.0 C 309.68812281164145 295.3829880104459, 304.4792945569544 297.1192640953416, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
198
+ <path d="M 300.0 300.0 C 304.3489151719185 302.4221806020812, 309.1005892366994 304.11920705378867, 314.0 305.0 C 319.2769661358469 305.94866806936574, 324.7230338641531 305.94866806936574, 330.0 305.0 C 325.5532434762023 301.8773397115763, 320.3736238885595 299.80549187651917, 315.0 299.0 C 310.0057523927239 298.2513756153364, 304.8506758074776 298.5950473876862, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
199
+ <path d="M 300.0 300.0 C 303.38283267773244 303.72269670843923, 307.47901801013325 306.7948357077398, 312.0 309.0 C 316.97713629851626 311.42765913861194, 322.46598131843297 312.7998703935911, 328.0 313.0 C 324.5392102078408 308.7012672810178, 320.0426208274883 305.24235237305436, 315.0 303.0 C 310.3027122093089 300.91121030418185, 305.1393386128757 299.87853558489525, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
200
+ <path d="M 300.0 300.0 C 302.4620869288397 304.6299005195711, 305.88998237775365 308.7433750582678, 310.0 312.0 C 314.1185526172444 315.2633877539979, 318.91815822645503 317.6631905586033, 324.0 319.0 C 321.5379130711603 314.3700994804289, 318.11001762224635 310.2566249417322, 314.0 307.0 C 309.8814473827556 303.7366122460021, 305.08184177354497 301.3368094413967, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
201
+ <path d="M 300.0 300.0 C 301.0160976366763 305.0108741160467, 303.07219297574295 309.8084299072022, 306.0 314.0 C 309.1322881062398 318.4843136994224, 313.2607492713546 322.26873643411096, 318.0 325.0 C 316.7455175310992 319.58541611172865, 314.3440646058775 314.4394455576822, 311.0 310.0 C 308.0010081799389 306.0186591820938, 304.2482977744826 302.60710426804263, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
202
+ <path d="M 300.0 300.0 C 299.6129844880728 305.0663257519342, 300.299083086236 310.212065238158, 302.0 315.0 C 303.8736165840838 320.2740694743558, 306.9797848362165 325.10588675545114, 311.0 329.0 C 311.0205401183995 323.541286465356, 309.9966411644169 318.08049204411594, 308.0 313.0 C 306.12915230782477 308.23959187798056, 303.40654884850494 303.8153612565858, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
203
+ <path d="M 300.0 300.0 C 298.31077276692713 304.7911808578706, 297.62511630114903 309.9336043512062, 298.0 315.0 C 298.41595562074895 320.62146541317475, 300.14110776613893 326.14195227842276, 303.0 331.0 C 304.8568267862492 325.9073794759489, 305.5461255253674 320.39298956300314, 305.0 315.0 C 304.46465752792886 309.7134930882974, 302.7436301693646 304.55041101260474, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
204
+ <path d="M 300.0 300.0 C 296.779355357893 304.3877773828955, 294.69386241978145 309.6015097281743, 294.0 315.0 C 293.3074970658604 320.38791300203434, 294.0025493402562 325.94833119720107, 296.0 331.0 C 298.68493231973315 326.0591819769016, 300.39390918919077 320.5904559946371, 301.0 315.0 C 301.54286751994545 309.99270253393064, 301.2027488869463 304.89092303894324, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
205
+ <path d="M 300.0 300.0 C 296.14600247905 303.6502909171146, 293.06006517104487 308.10775591756646, 291.0 313.0 C 288.87810740226683 318.03907189477616, 287.847711057579 323.53451906644494, 288.0 329.0 C 291.871641369068 324.9774337914231, 294.9478414183445 320.19223371477074, 297.0 315.0 C 298.884283780324 310.23251182445097, 299.90568957585714 305.12548284678525, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
206
+ <path d="M 300.0 300.0 C 295.3500039031814 302.42968111784853, 291.22837416616255 305.86437256536425, 288.0 310.0 C 284.5756568014349 314.3866686290666, 282.16246718670266 319.5577892320643, 281.0 325.0 C 285.6364712317748 322.1207083905662, 289.7291629312402 318.36907433272296, 293.0 314.0 C 296.1435986518786 309.8008864723081, 298.5268683689737 305.034347038118, 300.0 300.0 Z" fill="rgb(255.0, 0, 255.0)"/>
207
+ </svg>
data/examples/fox.png ADDED
Binary file
data/examples/fox.rb ADDED
@@ -0,0 +1,110 @@
1
+ WIDTH, HEIGHT = 400, 600
2
+ (stripes = 15).times do |i|
3
+ c = Random.rand(0..25)
4
+ col1 = "rgb(#{30 - c}, #{30 - c}, #{150 - c})"
5
+ col2 = "rgb(#{150 - c}, #{30 - c}, #{30 - c})"
6
+ #col = [col1, col2].sample
7
+ col = i.odd? ? col1 : col2
8
+ rect(WIDTH, HEIGHT - HEIGHT / stripes * i, fill: col)
9
+ end
10
+ #rect(WIDTH, HEIGHT, fill: '#811')
11
+ #rect(WIDTH, HEIGHT / 2, fill: '#118')
12
+
13
+ def fox(size, at:, **options)
14
+ x, y = at
15
+ h = size
16
+ w = size / 2.5
17
+
18
+ contrast = options.merge(fill: 'white')
19
+
20
+ # tail
21
+ tail = path(
22
+ N.n(w / 2, h / 2),
23
+ N.s(w / 2 - w / 6, h + w / 3),
24
+ N.s(-w / 3, h + w / 6),
25
+ tip_n = N.n(-w - w / 3, h + w / 2), # tip
26
+ N.s(-w / 4 * 3, h + w / 4 * 3),
27
+ N.s(w / 2 + w * 0.8, h),
28
+ N.n(w / 2, h / 2 - w / 12),
29
+ **options
30
+ ).move(x, y)
31
+ # tail tip
32
+ intersection(**contrast) do
33
+ canvas << tail.shape
34
+ circle(w.round)[*tip_n.move(x, y).at]
35
+ end
36
+
37
+ # body
38
+ body = path(
39
+ N.s(0, 0),
40
+ N.l(-w / 2, h / 2),
41
+ N.r(-w / 2, h - w / 2),
42
+ N.s(-w / 3, h),
43
+ N.l(-w / 6, h - w / 2),
44
+ N.n(-w / 6, h / 2 + w / 6),
45
+ N.s(0, h / 2),
46
+ N.n(w / 6, h / 2 + w / 6),
47
+ N.r(w / 6, h - w / 2),
48
+ N.s(w / 3, h),
49
+ N.l(w / 2, h - w / 2),
50
+ N.r(w / 2, h / 2),
51
+ **options
52
+ ).move(x, y)
53
+ # feet
54
+ intersection(**contrast) do
55
+ canvas << body.shape
56
+ square(h)[x - w, y + size - size / 3]
57
+ end
58
+
59
+ # head
60
+ head = path(
61
+ N.s(0, 0), # chin
62
+ N.g(w / 6, -w / 12),
63
+ N.s(w / 2, -w),
64
+ N.s(w / 3 + w / 12, -w - w / 12 * 3),
65
+ N.s(w / 3, -w - w / 3), # ear tip
66
+ N.s(w / 3 - w / 12, -w - w / 12 * 3),
67
+ N.n(w / 6, -w),
68
+ N.s(0, -w - w / 200), # head bump
69
+ N.n(-w / 6, -w),
70
+ N.s(-w / 3 + w / 12, -w - w / 12 * 3),
71
+ N.s(-w / 3, -w - w / 3), # ear tip
72
+ N.s(-w / 3 - w / 12, -w - w / 12 * 3),
73
+ N.s(-w / 2, -w),
74
+ N.g(-w / 6, -w / 12),
75
+ **options
76
+ ).move(x, y + w / 2)
77
+ # ears
78
+ ear = difference(**contrast, stroke: "none") do
79
+ difference do
80
+ canvas << head.shape.clone
81
+ circle(w * 1.08)[x, y + w / 2]
82
+ end.scale(0.6).move(0.32 * x, 0.22 * y)
83
+ square(size)[x - w / 6, y - w]
84
+ end
85
+ ear2 = ear.shape.to_path.paths.first.flip_y.move(x * 2, 0)
86
+ ear2.options = { fill: "white" }
87
+ canvas << ear2
88
+ # nose
89
+ intersection do
90
+ canvas << head.shape.clone
91
+ circle(w / 9)[x, y + w / 2]
92
+ end
93
+
94
+ # eyes
95
+ circle(w / 18)[x - w / 7, y - w / 6]
96
+ circle(w / 18)[x + w / 7, y - w / 6]
97
+ end
98
+
99
+ fox(HEIGHT / 2, at: [WIDTH / 2, HEIGHT / 4],
100
+ fill: 'orangered',
101
+ stroke: 'black',
102
+ stroke_width: 4
103
+ )
104
+
105
+ # show nodes
106
+ canvas.flat_map do |shape|
107
+ shape.to_path.nodes.map do |n|
108
+ #Circle.new(3, at: n.at, fill: 'grey')
109
+ end if shape.class == VectorSalad::StandardShapes::Path
110
+ end.each { |n| canvas << n }
data/examples/fox.svg ADDED
@@ -0,0 +1,31 @@
1
+ <svg version="1.1"
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ width="400"
4
+ height="600">
5
+
6
+ <rect x="0" y="0" width="400" height="600" fill="rgb(143, 23, 23)"/>
7
+ <rect x="0" y="0" width="400" height="560" fill="rgb(13, 13, 133)"/>
8
+ <rect x="0" y="0" width="400" height="520" fill="rgb(130, 10, 10)"/>
9
+ <rect x="0" y="0" width="400" height="480" fill="rgb(13, 13, 133)"/>
10
+ <rect x="0" y="0" width="400" height="440" fill="rgb(140, 20, 20)"/>
11
+ <rect x="0" y="0" width="400" height="400" fill="rgb(30, 30, 150)"/>
12
+ <rect x="0" y="0" width="400" height="360" fill="rgb(150, 30, 30)"/>
13
+ <rect x="0" y="0" width="400" height="320" fill="rgb(21, 21, 141)"/>
14
+ <rect x="0" y="0" width="400" height="280" fill="rgb(145, 25, 25)"/>
15
+ <rect x="0" y="0" width="400" height="240" fill="rgb(19, 19, 139)"/>
16
+ <rect x="0" y="0" width="400" height="200" fill="rgb(126, 6, 6)"/>
17
+ <rect x="0" y="0" width="400" height="160" fill="rgb(24, 24, 144)"/>
18
+ <rect x="0" y="0" width="400" height="120" fill="rgb(133, 13, 13)"/>
19
+ <rect x="0" y="0" width="400" height="80" fill="rgb(13, 13, 133)"/>
20
+ <rect x="0" y="0" width="400" height="40" fill="rgb(130, 10, 10)"/>
21
+ <path d="M 260.0 300.0 C 284.07379853323187 303.5952096093461, 306.5790893738076 316.78454105184574, 321.4804532968139 336.0309085321756 C 336.38181721982016 355.2772760125055, 343.51491386699644 380.36842010640953, 340.96680512336786 404.575453170881 C 338.41869637973923 428.78248623535245, 326.2174841765101 451.83843992395055, 307.63526267235034 467.5602194645787 C 289.0530411681906 483.28199900520684, 264.29474522376455 491.4962160492851, 240.0 490.0 C 212.5061687964893 488.3067650586931, 187.1026626396414 474.92173512649623, 160.0 470.0 C 138.36212374420475 466.0706482220252, 115.74157871913992 467.6806857824106, 94.87836360663718 474.6350908199115 C 74.01514849413444 481.58949585741243, 54.95268993785133 493.87379282414304, 40.0 510.0 C 62.196734387461674 522.4147514140828, 85.70191491569055 532.4884002118953, 110.0 540.0 C 156.3761883095586 554.3369061829543, 206.91992080348396 559.1220685015194, 253.3993999298306 545.1236492634062 C 276.63913949300377 538.1244396443496, 298.5823668101268 526.444962603958, 316.63309790170246 510.22011939007035 C 334.68382899327804 493.99527617618276, 348.7502677673545 473.1628109868071, 356.0 450.0 C 366.49026535817063 416.48372299895453, 361.9747970646153 378.57126450150946, 343.9059105615512 348.4564536630693 C 325.8370240584871 318.34164282462916, 294.5097810518263 296.5162491550473, 260.0 290.0 L 260.0 300.0 Z" fill="orangered" stroke="black" stroke-width="4"/>
22
+ <path d=" M 153.09056854248047 550.1284093856812 L 145.43493366241455 548.8174800872803 L 136.4718885421753 546.996244430542 L 127.57034587860107 544.9105701446533 L 118.74236392974854 542.5739812850952 L 110.0 540.0 L 100.9263916015625 537.0634851455688 L 91.93316078186035 533.889368057251 L 83.02634716033936 530.4802370071411 L 74.21199321746826 526.8386812210083 L 65.49613952636719 522.9672908782959 L 56.88482856750488 518.8686542510986 L 48.38410186767578 514.5453605651855 L 40.0 510.0 L 45.79539394378662 504.1356678009033 L 51.94902038574219 498.64895248413086 L 58.43381977081299 493.5572900772095 L 65.22273445129395 488.87811946868896 L 72.28870487213135 484.6288766860962 L 79.6046724319458 480.8269987106323 L 87.1435775756836 477.48992443084717 L 94.87836265563965 474.6350898742676 L 102.77909183502197 472.2780866622925 L 110.81246089935303 470.4244022369385 L 118.94636154174805 469.0763244628906 L 127.14868354797363 468.2361364364624 L 135.3873176574707 467.90612411499023 L 143.63015460968018 468.08857440948486 L 151.84508514404297 468.78577041625977 L 152.73909759521484 468.91888523101807 L 153.1169786453247 469.94317626953125 L 154.12678146362305 472.91796016693115 L 155.058367729187 475.91815853118896 L 155.9110984802246 478.9417142868042 L 156.6843900680542 481.9865560531616 L 157.37771129608154 485.0505962371826 L 157.9905881881714 488.1317367553711 L 158.5226001739502 491.2278633117676 L 158.9733829498291 494.336856842041 L 159.34262657165527 497.4565839767456 L 159.63007926940918 500.5849084854126 L 159.83554363250732 503.7196846008301 L 159.95887851715088 506.8587656021118 L 160.0 510.0 L 159.95887851715088 513.1412334442139 L 159.83554363250732 516.2803144454956 L 159.63007926940918 519.4150905609131 L 159.34262657165527 522.5434150695801 L 158.9733829498291 525.6631422042847 L 158.5226001739502 528.7721357345581 L 157.9905881881714 531.8682622909546 L 157.37771129608154 534.9494028091431 L 156.6843900680542 538.0134429931641 L 155.9110984802246 541.0582847595215 L 155.058367729187 544.0818405151367 L 154.12678146362305 547.0820388793945 L 153.1169786453247 550.0568227767944 Z" fill="white" stroke="black" stroke-width="4"/>
23
+ <path d="M 200.0 150.0 C 192.53659529536864 150.0, 185.13080164798615 152.08393185406212, 178.56907706907552 155.64007869237375 C 172.0073524901649 159.1962255306854, 166.27527634220513 164.19650590706954, 161.56108899089247 169.9825967637566 C 152.13271428826735 181.55477847713064, 146.82900894338303 196.0194280071241, 143.93286582600516 210.6625832061963 C 138.14057959199502 239.94889360396996, 139.99999999934022 270.1463811819832, 140.0 300.0 L 140.0 390.0 C 140.0 401.6656257487559, 138.93471881807665 413.38042666697146, 140.1782027769554 424.9795892123472 C 140.79994475620617 430.77917048444164, 142.25718989256484 436.62642322592455, 145.52216848384083 441.4598092873623 C 147.15465777947875 443.87650231808107, 149.2391284555649 446.0090004042575, 151.71898876784738 447.54383568423486 C 154.1988490801299 449.0786709642122, 157.08359356311624 449.99999999993787, 160.0 450.0 C 162.91640643718898 450.0, 165.80115092049687 449.0786709642394, 168.28101123307158 447.54383568415426 C 170.7608715456463 446.0090004040691, 172.84534222199605 443.8765023177139, 174.4778315178563 441.45980928677704 C 177.74281010957657 436.6264232249033, 179.20005524621203 430.77917048283985, 179.8217972256512 424.97958921015214 C 181.06528118359086 413.3804266654164, 180.00000000086555 401.6656257480194, 180.0 390.0 L 180.0 320.0 C 180.0 314.764012244017, 182.15546192780374 309.56026682473436, 185.85786437626905 305.85786437626905 C 189.56026682473436 302.15546192780374, 194.764012244017 300.0, 200.0 300.0 C 205.235987755983 300.0, 210.43973317526564 302.15546192780374, 214.14213562373095 305.85786437626905 C 217.84453807219626 309.56026682473436, 220.0 314.764012244017, 220.0 320.0 L 220.0 390.0 C 220.0 401.6656257487559, 218.93471881807665 413.38042666697146, 220.1782027769554 424.9795892123472 C 220.79994475620617 430.77917048444164, 222.25718989256484 436.62642322592455, 225.52216848384083 441.4598092873623 C 227.15465777947875 443.87650231808107, 229.2391284555649 446.0090004042575, 231.71898876784738 447.54383568423486 C 234.1988490801299 449.0786709642122, 237.08359356311624 449.99999999993787, 240.0 450.0 C 242.91640643718898 450.0, 245.80115092049687 449.0786709642394, 248.28101123307158 447.54383568415426 C 250.7608715456463 446.0090004040691, 252.84534222199605 443.8765023177139, 254.4778315178563 441.45980928677704 C 257.74281010957657 436.6264232249033, 259.200055246212 430.77917048283985, 259.8217972256512 424.97958921015214 C 261.06528118359086 413.3804266654164, 260.00000000086555 401.6656257480194, 260.0 390.0 L 260.0 300.0 C 260.0 270.1463811814745, 261.8594204067095 239.94889360290566, 256.06713417195346 210.662583204761 C 253.17099105475404 196.01942800610274, 247.86728571011813 181.5547784765027, 238.4389110078448 169.98259676341044 C 233.7247236567082 164.1965059068644, 227.9926475089496 159.1962255305916, 221.43092293025543 155.6400786923433 C 214.8691983515613 152.08393185409503, 207.46340470441086 150.00000000004744, 200.0 150.0 Z" fill="orangered" stroke="black" stroke-width="4"/>
24
+ <path d=" M 240.0 450.0 L 237.824462890625 449.8320598602295 L 235.6957893371582 449.3474807739258 L 233.64896774291992 448.575119972229 L 231.7189884185791 447.5438356399536 L 229.93411254882812 446.2855453491211 L 228.30281448364258 444.8325185775757 L 225.52216815948486 441.4598083496094 L 223.3971929550171 437.6612558364868 L 221.85897159576416 433.58202171325684 L 220.81635665893555 429.321626663208 L 220.17820262908936 424.97958850860596 L 219.62576293945312 416.26111030578613 L 219.62279415130615 407.5147180557251 L 220.0 390.0 L 220.0 350.0 L 260.0 350.0 L 260.0 390.0 L 260.37720489501953 407.5147180557251 L 260.37423610687256 416.26111030578613 L 259.8217964172363 424.97958850860596 L 259.18364238739014 429.321626663208 L 258.1410274505615 433.58202171325684 L 256.6028060913086 437.6612558364868 L 254.47783088684082 441.4598083496094 L 251.6971845626831 444.8325185775757 L 250.06588649749756 446.2855453491211 L 248.28101062774658 447.5438356399536 L 246.35103130340576 448.575119972229 L 244.30420970916748 449.3474807739258 L 242.17553615570068 449.8320598602295 Z M 160.0 450.0 L 157.824462890625 449.8320598602295 L 155.6957893371582 449.3474807739258 L 153.64896774291992 448.575119972229 L 151.7189884185791 447.5438356399536 L 149.93411254882812 446.2855453491211 L 148.30281448364258 444.8325185775757 L 145.52216815948486 441.4598083496094 L 143.3971929550171 437.6612558364868 L 141.85897159576416 433.58202171325684 L 140.81635665893555 429.321626663208 L 140.17820262908936 424.97958850860596 L 139.62576293945312 416.26111030578613 L 139.62279415130615 407.5147180557251 L 140.0 390.0 L 140.0 350.0 L 180.0 350.0 L 180.0 390.0 L 180.37720489501953 407.5147180557251 L 180.37423610687256 416.26111030578613 L 179.82179641723633 424.97958850860596 L 179.18364238739014 429.321626663208 L 178.14102745056152 433.58202171325684 L 176.6028060913086 437.6612558364868 L 174.47783088684082 441.4598083496094 L 171.6971845626831 444.8325185775757 L 170.06588649749756 446.2855453491211 L 168.28101062774658 447.5438356399536 L 166.35103130340576 448.575119972229 L 164.30420970916748 449.3474807739258 L 162.17553615570068 449.8320598602295 Z" fill="white" stroke="black" stroke-width="4"/>
25
+ <path d="M 200.0 210.0 C 203.83419145760882 210.0, 207.62564863821186 208.89218760026228, 211.01009659247973 207.09037290988687 C 214.3945445467476 205.28855821951146, 217.3900030764616 202.8087257240109, 220.0 200.0 C 226.73250647083785 192.75487111070004, 231.00938928311083 183.6033587835116, 234.91193358196853 174.51552713906 C 238.8144778808254 165.42769549460635, 242.40796874943723 156.210667820763, 246.12689379303734 147.04616387769235 C 249.84581883425477 137.88165993204734, 253.6491932099563 128.72907190324574, 256.4878610293785 119.25487003486055 C 259.3265288488007 109.78066816647537, 261.1437714966013 99.82396675460065, 260.0 90.0 C 258.77615192061813 79.48824750933096, 254.22366574448105 69.703370147809, 250.0 60.0 C 249.00153196774636 57.706138344311185, 247.9971572095378 55.37066128014706, 246.40124563573318 53.44405650607732 C 245.60328984883088 52.48075411904248, 244.65934017807308 51.62856506193902, 243.57226660168791 51.00973070102892 C 242.48519302530275 50.39089634011883, 241.25082542575302 50.01098549077889, 240.0 50.0 C 238.74359106154472 49.98896547150084, 237.49696550080273 50.35058560577421, 236.39723983579572 50.95827684577554 C 235.29751417078867 51.56596808577687, 234.3407959910534 52.41396528892052, 233.53612588314715 53.37894777523397 C 231.92678566733474 55.308912747860816, 230.93511830295384 57.66755611315546, 230.0 60.0 C 226.07513949207518 69.78968850198905, 222.73392469485358 79.81333289365388, 220.0 90.0 C 213.3555333689816 89.33388805704077, 206.67777222816636 89.0, 200.0 89.0 C 193.32222777183364 89.0, 186.6444666310184 89.33388805704077, 180.0 90.0 C 177.26607530514642 79.81333289365388, 173.92486050792482 69.78968850198905, 170.0 60.0 C 169.06488169704613 57.6675561131554, 168.07321433266517 55.308912747860695, 166.4638741168527 53.3789477752338 C 165.6592040089465 52.41396528892039, 164.7024858292112 51.565968085776774, 163.6027601642042 50.95827684577547 C 162.50303449919718 50.35058560577417, 161.25640893845525 49.988965471500826, 160.0 50.0 C 158.74917457424695 50.010985490778914, 157.51480697469717 50.39089634011888, 156.42773339831197 51.009730701029014 C 155.34065982192678 51.62856506193914, 154.39671015116897 52.48075411904264, 153.59875436426668 53.444056506077516 C 152.00284279046213 55.3706612801472, 150.99846803225358 57.706138344311256, 150.0 60.0 C 145.77633425551895 69.703370147809, 141.2238480793819 79.48824750933096, 140.0 90.0 C 138.8562285067272 99.82396675348704, 140.6734711574526 109.7806681632769, 143.51213897949054 119.25487002932181 C 146.35080680152845 128.72907189536667, 150.15418117959695 137.88165992156652, 153.87310622319788 147.0461638646351 C 157.59203126392757 156.21066780968698, 161.1855221296413 165.4276954854724, 165.0880664256682 174.51552713196466 C 168.99061072169397 183.60335877845884, 173.26749353114178 192.75487110782376, 180.0 200.0 C 182.6099969235384 202.8087257240109, 185.6054554532524 205.28855821951146, 188.98990340752025 207.09037290988687 C 192.37435136178811 208.89218760026228, 196.16580854239115 210.0, 200.0 210.0 Z" fill="orangered" stroke="black" stroke-width="4"/>
26
+ <path d=" M 147.81350803375244 90.17374992370605 L 147.82365608215332 89.21340465545654 L 148.0 87.0 L 148.36469745635986 84.65454196929932 L 148.89091396331787 82.34543418884277 L 150.32503986358643 77.81811332702637 L 152.09664630889893 73.38173580169678 L 154.0 69.0 L 154.94520092010498 66.95058345794678 L 156.15925216674805 65.06643295288086 L 156.9428939819336 64.25862979888916 L 157.85663890838623 63.60583782196045 L 158.89147472381592 63.166152000427246 L 160.0 63.0 L 161.11608123779297 63.14826965332031 L 162.1616554260254 63.574965476989746 L 163.08637714385986 64.22077655792236 L 163.87832355499268 65.02736759185791 L 164.53829860687256 65.9398136138916 L 165.0908613204956 66.92312622070312 L 166.0 69.0 L 167.7003049850464 73.43101406097412 L 169.26796054840088 77.91067886352539 L 170.68751525878906 82.39044666290283 L 169.06022548675537 82.68865871429443 L 167.22062015533447 83.07194137573242 L 165.39081382751465 83.4995641708374 L 163.57187366485596 83.97127628326416 L 161.7648630142212 84.48680400848389 L 159.9708375930786 85.04584503173828 L 158.19084453582764 85.64807319641113 L 156.42592334747314 86.29313659667969 L 154.67710399627686 86.98065853118896 L 152.94540977478027 87.71023845672607 L 151.23184871673584 88.48144912719727 L 149.53742504119873 89.2938404083252 L 147.86312580108643 90.14693927764893 Z" fill="white" stroke="none" stroke-width="4"/>
27
+ <path d="M 252.18649196624756 90.17374992370605 L 252.17634391784668 89.21340465545654 L 252.0 87.0 L 251.63530254364014 84.65454196929932 L 251.10908603668213 82.34543418884277 L 249.67496013641357 77.81811332702637 L 247.90335369110107 73.38173580169678 L 246.0 69.0 L 245.05479907989502 66.95058345794678 L 243.84074783325195 65.06643295288086 L 243.0571060180664 64.25862979888916 L 242.14336109161377 63.60583782196045 L 241.10852527618408 63.166152000427246 L 240.0 63.0 L 238.88391876220703 63.14826965332031 L 237.8383445739746 63.574965476989746 L 236.91362285614014 64.22077655792236 L 236.12167644500732 65.02736759185791 L 235.46170139312744 65.9398136138916 L 234.9091386795044 66.92312622070312 L 234.0 69.0 L 232.2996950149536 73.43101406097412 L 230.73203945159912 77.91067886352539 L 229.31248474121094 82.39044666290283 L 230.93977451324463 82.68865871429443 L 232.77937984466553 83.07194137573242 L 234.60918617248535 83.4995641708374 L 236.42812633514404 83.97127628326416 L 238.2351369857788 84.48680400848389 L 240.0291624069214 85.04584503173828 L 241.80915546417236 85.64807319641113 L 243.57407665252686 86.29313659667969 L 245.32289600372314 86.98065853118896 L 247.05459022521973 87.71023845672607 L 248.76815128326416 88.48144912719727 L 250.46257495880127 89.2938404083252 L 252.13687419891357 90.14693927764893 Z" fill="white"/>
28
+ <path d=" M 200.0 210.0 L 197.13806056976318 209.79875087738037 L 194.32629776000977 209.2208662033081 L 191.59886169433594 208.30514240264893 L 188.9899024963379 207.0903720855713 L 187.31651210784912 206.09057235717773 L 187.47076416015625 205.43973064422607 L 188.86016178131104 202.67321300506592 L 190.85011100769043 200.30168437957764 L 193.3333330154419 198.45299434661865 L 196.17595672607422 197.22680568695068 L 199.22473526000977 196.68922424316406 L 202.31530857086182 196.86922931671143 L 205.28106307983398 197.75711822509766 L 207.96211433410645 199.30502319335938 L 210.2139253616333 201.42949771881104 L 211.91510105133057 204.01601028442383 L 212.67255687713623 206.09710311889648 L 211.0100965499878 207.0903720855713 L 208.40113735198975 208.30514240264893 L 205.67370128631592 209.2208662033081 L 202.8619384765625 209.79875087738037 Z"/>
29
+ <circle cx="182.85714285714286" cy="130.0" r="6.666666666666667"/>
30
+ <circle cx="217.14285714285714" cy="130.0" r="6.666666666666667"/>
31
+ </svg>