vector_salad 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.yardopts +1 -0
  4. data/README.md +6 -5
  5. data/examples/birthday.png +0 -0
  6. data/examples/birthday.svg +604 -604
  7. data/examples/bunny_card.png +0 -0
  8. data/examples/bunny_card.svg +110 -110
  9. data/examples/circles.png +0 -0
  10. data/examples/circles.svg +2 -2
  11. data/examples/rects.rb +4 -4
  12. data/examples/squares.png +0 -0
  13. data/examples/squares.rb +4 -4
  14. data/examples/squares.svg +6 -6
  15. data/lib/contracts_contracts.rb +4 -4
  16. data/lib/vector_salad/canvas.rb +17 -0
  17. data/lib/vector_salad/dsl.rb +29 -28
  18. data/lib/vector_salad/export_with_magic.rb +1 -0
  19. data/lib/vector_salad/exporters/base_exporter.rb +1 -0
  20. data/lib/vector_salad/exporters/svg_exporter.rb +30 -22
  21. data/lib/vector_salad/interpolate.rb +13 -12
  22. data/lib/vector_salad/magic.rb +4 -3
  23. data/lib/vector_salad/mixins/at.rb +1 -0
  24. data/lib/vector_salad/mixins/mixins.rb +5 -0
  25. data/lib/vector_salad/monkeypatches.rb +4 -0
  26. data/lib/vector_salad/shape_proxy.rb +1 -0
  27. data/lib/vector_salad/standard_shapes/basic_shape.rb +25 -17
  28. data/lib/vector_salad/standard_shapes/circle.rb +9 -3
  29. data/lib/vector_salad/standard_shapes/clip.rb +10 -9
  30. data/lib/vector_salad/standard_shapes/custom.rb +23 -4
  31. data/lib/vector_salad/standard_shapes/difference.rb +5 -6
  32. data/lib/vector_salad/standard_shapes/exclusion.rb +5 -6
  33. data/lib/vector_salad/standard_shapes/flip.rb +8 -2
  34. data/lib/vector_salad/standard_shapes/heart.rb +3 -1
  35. data/lib/vector_salad/standard_shapes/hexagon.rb +3 -2
  36. data/lib/vector_salad/standard_shapes/intersection.rb +5 -6
  37. data/lib/vector_salad/standard_shapes/iso_tri.rb +3 -2
  38. data/lib/vector_salad/standard_shapes/jitter.rb +10 -7
  39. data/lib/vector_salad/standard_shapes/move.rb +7 -1
  40. data/lib/vector_salad/standard_shapes/multi_path.rb +17 -6
  41. data/lib/vector_salad/standard_shapes/n.rb +6 -3
  42. data/lib/vector_salad/standard_shapes/oval.rb +3 -1
  43. data/lib/vector_salad/standard_shapes/path.rb +28 -14
  44. data/lib/vector_salad/standard_shapes/pentagon.rb +2 -1
  45. data/lib/vector_salad/standard_shapes/polygon.rb +3 -1
  46. data/lib/vector_salad/standard_shapes/rect.rb +3 -1
  47. data/lib/vector_salad/standard_shapes/rotate.rb +3 -5
  48. data/lib/vector_salad/standard_shapes/scale.rb +8 -7
  49. data/lib/vector_salad/standard_shapes/square.rb +6 -21
  50. data/lib/vector_salad/standard_shapes/standard_shapes.rb +6 -0
  51. data/lib/vector_salad/standard_shapes/transform.rb +6 -5
  52. data/lib/vector_salad/standard_shapes/triangle.rb +3 -2
  53. data/lib/vector_salad/standard_shapes/union.rb +5 -6
  54. data/lib/vector_salad/version.rb +1 -1
  55. data/lib/vector_salad.rb +1 -1
  56. metadata +4 -2
Binary file
@@ -1,85 +1,85 @@
1
1
  <svg version="1.1"
2
2
  xmlns="http://www.w3.org/2000/svg"
3
- width="610.0"
4
- height="805.0">
3
+ width="600"
4
+ height="800">
5
5
 
6
6
  <rect x="0" y="0" width="600" height="800" fill="skyblue"/>
7
7
  <circle cx="0" cy="0" r="200" fill="yellow"/>
8
- <path d="M 0.0 800.0 L 8.0 800.0 C 5.055573334185301 769.8211674457687, 0.7160745302122233 739.7784834182628, -5.0 710.0 C -10.885137582000734 679.3407650698883, -18.22953121125987 648.9616823306801, -27.0 619.0 C -22.19301149101285 649.311523754757, -17.526278215401632 679.6452900462299, -13.0 710.0 C -8.529597663215377 739.9799879397631, -4.1962039963728275 769.9804056332885, 0.0 800.0 Z" fill="green"/>
9
- <path d="M 8.0 800.0 L 16.0 800.0 C 22.324375257390756 759.1760203157309, 27.32786269383866 718.1474233368581, 31.0 677.0 C 34.651022836855056 636.0891707593433, 36.98596497742545 595.0609017178922, 38.0 554.0 L 23.0 677.0 L 8.0 800.0 Z" fill="green"/>
10
- <path d="M 16.0 800.0 L 24.0 800.0 C 28.996887931964086 746.1013094943895, 32.6650396542652 692.0794386750458, 35.0 638.0 C 37.344375237290755 583.7025053517712, 38.34478352533955 529.3469883677865, 38.0 475.0 C 34.34463314151044 529.3340951101676, 30.677966369116874 583.6674300101815, 27.0 638.0 C 23.34449523217239 692.000757134111, 19.677828461066238 746.00075867222, 16.0 800.0 Z" fill="green"/>
11
- <path d="M 24.0 800.0 L 32.0 800.0 C 34.665951644351935 753.0504171852382, 36.0 706.0252126486441, 36.0 659.0 C 36.0 611.9747873513559, 34.66595164435195 564.9495828147618, 32.0 518.0 L 28.0 659.0 L 24.0 800.0 Z" fill="green"/>
12
- <path d="M 32.0 800.0 L 40.0 800.0 C 39.82665919405873 742.6362262725017, 38.15923908029582 685.2769743590577, 35.0 628.0 C 31.8316492539291 570.5578312274448, 27.162860748257017 513.1984295863307, 21.0 456.0 C 23.166505793107113 513.3273635974896, 25.166517039483807 570.6610193269549, 27.0 628.0 C 28.83314247702382 685.32833264587, 30.499818512190586 742.6619882556064, 32.0 800.0 Z" fill="green"/>
13
- <path d="M 40.0 800.0 L 48.0 800.0 C 49.83012391827985 756.6954195935475, 50.16372245366152 713.3276099939291, 49.0 670.0 C 47.83410975890755 626.591679138921, 45.165313563547045 583.2237409643126, 41.0 540.0 C 41.16666091409857 583.3331196726589, 41.166660914098564 626.6668803273411, 41.0 670.0 C 40.833334155153786 713.3344017049765, 40.49999753453865 756.6681623849443, 40.0 800.0 Z" fill="green"/>
14
- <path d="M 48.0 800.0 L 56.0 800.0 C 57.14260596593045 757.3388206128611, 56.80900674171169 714.6381199128605, 55.0 672.0 C 53.17143861939124 628.9009790750422, 49.835388578325166 585.8659335452899, 45.0 543.0 C 45.83265541795181 585.9972128874584, 46.49932870763207 628.9976400718349, 47.0 672.0 C 47.49674556306459 714.665181369985, 47.83008215617767 757.3322652884584, 48.0 800.0 Z" fill="green"/>
15
- <path d="M 56.0 800.0 L 64.0 800.0 C 70.16001669429782 756.844886954875, 74.83038765660365 713.4771565906066, 78.0 670.0 C 81.15371447317999 626.7409124089965, 82.82169086361048 583.3735262578032, 83.0 540.0 C 78.83151014478861 583.3496066182652, 74.49813501682551 626.6833578978961, 70.0 670.0 C 65.49830876307264 713.3508881869393, 60.831597015607414 756.6846401276878, 56.0 800.0 Z" fill="green"/>
16
- <path d="M 64.0 800.0 L 72.0 800.0 C 79.4907294351994 747.5174423186863, 85.49394120499848 694.8225834504501, 90.0 642.0 C 94.48435072766055 589.4318908586597, 97.48594117621904 536.7373029839664, 99.0 484.0 C 93.49794108905928 536.6842041893331, 87.83123752732884 589.3512137630631, 82.0 642.0 C 76.16472288707155 694.6852586457048, 70.16468376756612 747.3522686946969, 64.0 800.0 Z" fill="green"/>
17
- <path d="M 72.0 800.0 L 80.0 800.0 C 77.11571426726496 748.5580552505312, 72.78008250484241 697.1974943726026, 67.0 646.0 C 61.14488114222611 594.1378657621825, 53.80755650867275 542.4430785712383, 45.0 491.0 C 49.81862306477406 542.6527913580495, 54.48531664739549 594.3197560227868, 59.0 646.0 C 63.48325947282896 697.320530206241, 67.81661745283294 748.6541555078265, 72.0 800.0 Z" fill="green"/>
18
- <path d="M 80.0 800.0 L 88.0 800.0 C 90.49899751641016 742.0387667942169, 91.49944297052495 684.0129304555578, 91.0 626.0 C 90.50033439514362 567.9612093947393, 88.49944269242965 509.9353500160341, 85.0 452.0 C 84.49996009904997 510.00175566655287, 83.83328976427879 568.0020747916464, 83.0 626.0 C 82.16664143967922 684.0027134919354, 81.1666359366139 742.0030326697248, 80.0 800.0 Z" fill="green"/>
19
- <path d="M 88.0 800.0 L 96.0 800.0 C 101.99330331440838 757.1578116799025, 106.66293810021105 714.1304625821492, 110.0 671.0 C 113.32116318042186 628.0750233037462, 115.32242313876021 585.0479341994716, 116.0 542.0 L 102.0 671.0 L 88.0 800.0 Z" fill="green"/>
20
- <path d="M 96.0 800.0 L 104.0 800.0 C 106.99180184557673 749.7221944033771, 108.65923913011282 699.3655884103874, 109.0 649.0 C 109.34289693467667 598.3186941187608, 108.3424287487582 547.628306032224, 106.0 497.0 C 104.33886427313112 547.666848404, 102.6721975932238 598.3335154731827, 101.0 649.0 C 99.33879177620234 699.3335138789436, 97.67212509646848 749.6668476069065, 96.0 800.0 Z" fill="green"/>
21
- <path d="M 104.0 800.0 L 112.0 800.0 C 114.31782756528118 764.3865377938355, 115.31873840202995 728.687384616463, 115.0 693.0 C 114.67806317545478 656.9545056178429, 113.00984782546392 620.9210540580405, 110.0 585.0 C 109.0046909668459 621.0001301007263, 108.0046909555264 657.0001305082285, 107.0 693.0 C 106.00460453259765 728.6667955674093, 105.00460452148664 764.3334626303688, 104.0 800.0 Z" fill="green"/>
22
- <path d="M 112.0 800.0 L 120.0 800.0 C 119.32744901805879 741.2980982662392, 117.32676670580555 682.6114171068109, 114.0 624.0 C 110.66466098455606 565.2375548048932, 105.99639404036063 506.5507703635794, 100.0 448.0 L 106.0 624.0 L 112.0 800.0 Z" fill="green"/>
23
- <path d="M 120.0 800.0 L 128.0 800.0 C 129.4694481314345 768.0224956397799, 129.46944813143446 735.9775043602201, 128.0 704.0 C 126.50885225560569 671.5502779049757, 123.50450881119097 639.1701318929504, 119.0 607.0 C 119.50085907580973 639.3313168936487, 119.83419837490436 671.6652289058285, 120.0 704.0 C 120.16408359558416 735.9997195471507, 120.16408359558415 768.0002804528493, 120.0 800.0 Z" fill="green"/>
24
- <path d="M 128.0 800.0 L 136.0 800.0 C 141.4972703495491 746.4589529903418, 145.49934901803215 692.7643975215276, 148.0 639.0 C 150.49416501127396 585.3750518895312, 151.4946819860169 531.6806409116606, 151.0 478.0 C 147.4991285234888 531.677822782191, 143.83243853008724 585.3448308674322, 140.0 639.0 C 136.16586945484315 692.6788577981581, 132.1658439850211 746.3458661849373, 128.0 800.0 Z" fill="green"/>
25
- <path d="M 136.0 800.0 L 144.0 800.0 C 144.494113718309 748.9852952009325, 143.49354172064116 697.9561233198724, 141.0 647.0 C 138.4992791659055 595.8971697742729, 134.4969779808798 544.8678296651949, 129.0 494.0 C 130.49991994120572 544.9954632804048, 131.83326275899296 595.9958260607665, 133.0 647.0 C 134.16656290162686 697.9965526550582, 135.16657001284162 748.9969153270112, 136.0 800.0 Z" fill="green"/>
26
- <path d="M 144.0 800.0 L 152.0 800.0 C 149.4465572502664 752.5592391620695, 145.44407076452632 705.1964824141452, 140.0 658.0 C 134.4784458050757 610.1317876399484, 127.47396970332335 562.4346408518252, 119.0 515.0 C 123.48530897516645 562.6526878181546, 127.8186716804965 610.3196775767851, 132.0 658.0 C 136.1497751770413 705.3205171433839, 140.14980188200286 752.6541664854293, 144.0 800.0 Z" fill="green"/>
27
- <path d="M 152.0 800.0 L 160.0 800.0 C 159.64041280088085 751.3002792045329, 157.9729450965248 702.6102222373368, 155.0 654.0 C 151.99676323742165 604.8944828375994, 147.66130454610226 555.8704499434494, 142.0 507.0 C 143.66094610247546 556.0001943541383, 145.32761278428615 605.0001947993733, 147.0 654.0 C 148.6610236237332 702.6668597031972, 150.32769030533882 751.3335268060811, 152.0 800.0 Z" fill="green"/>
28
- <path d="M 160.0 800.0 L 168.0 800.0 C 169.4952553214481 759.3516611203055, 169.4952553214481 718.6483388796945, 168.0 678.0 C 166.50067970591618 637.2411553204844, 163.49796088225148 596.5376334885852, 159.0 556.0 C 159.49999720060154 596.6650728696882, 159.83333426646615 637.332194905172, 160.0 678.0 C 160.1666601349626 718.6664389975545, 160.1666601349626 759.3335610024455, 160.0 800.0 Z" fill="green"/>
29
- <path d="M 168.0 800.0 L 176.0 800.0 C 180.99804256170876 744.431700563103, 184.66610902257656 688.7437824753828, 187.0 633.0 C 189.32921929908065 577.3677981527848, 190.32959953428414 521.6799650597907, 190.0 466.0 L 179.0 633.0 L 168.0 800.0 Z" fill="green"/>
30
- <path d="M 176.0 800.0 L 184.0 800.0 C 185.30656057012973 769.0183580937795, 185.3065605701297 737.9816419062205, 184.0 707.0 C 182.67460497318828 675.5717485712207, 180.0046881992912 644.20022647793, 176.0 613.0 L 176.0 707.0 L 176.0 800.0 Z" fill="green"/>
31
- <path d="M 184.0 800.0 L 192.0 800.0 C 195.9911506977547 767.1249050957176, 198.6606876853172 734.0893848746316, 200.0 701.0 C 201.34845021682298 667.6848518306166, 201.34845021682298 634.3151481693834, 200.0 601.0 C 197.34678179372833 634.3344073900181, 194.68011483769013 667.6677443404953, 192.0 701.0 C 189.34651502029294 734.0010634202822, 186.67984806997663 767.0010669304465, 184.0 800.0 Z" fill="green"/>
32
- <path d="M 192.0 800.0 L 200.0 800.0 C 198.12173750491033 768.8664961038306, 194.78352396575076 737.8211101896467, 190.0 707.0 C 185.14559633486064 675.7221990859614, 178.80271374623055 644.6754579942458, 171.0 614.0 C 174.83129821305346 644.980231813946, 178.49803385057996 675.9808149312156, 182.0 707.0 C 185.4977708212037 737.9820243262717, 188.8311667051783 768.9826060472357, 192.0 800.0 Z" fill="green"/>
33
- <path d="M 200.0 800.0 L 208.0 800.0 C 214.49370892165388 750.8333185638796, 219.49677121135886 701.4697706387906, 223.0 652.0 C 226.48823190663015 602.7420032298724, 228.48944635690253 553.378713456487, 229.0 504.0 C 224.49837811385737 553.3487600169742, 219.83167663375372 602.68246137807, 215.0 652.0 C 210.1651542891199 701.3498857956799, 205.16511694006277 750.6835876397103, 200.0 800.0 Z" fill="green"/>
34
- <path d="M 208.0 800.0 L 216.0 800.0 C 214.4882546831839 742.268736321734, 211.48692372135267 684.5764856109781, 207.0 627.0 C 202.49494287173724 569.1908253782706, 196.4922593878925 511.4983674502073, 189.0 454.0 C 192.49951554099127 511.65690057436, 195.83286733107806 569.3238865428614, 199.0 627.0 C 202.16613055082183 684.657864055146, 205.16614715138974 742.3248498216176, 208.0 800.0 Z" fill="green"/>
35
- <path d="M 216.0 800.0 L 224.0 800.0 C 223.44582643418164 766.6008627741352, 221.44332196704102 733.2257883217915, 218.0 700.0 C 214.4903690277053 666.1343734657278, 209.48386436017964 632.4239087043883, 203.0 599.0 C 205.49015279944757 632.6555532796242, 207.82351989098566 666.3227070289596, 210.0 700.0 C 212.153639774057 733.3238780012789, 214.153668105537 766.6576835259455, 216.0 800.0 Z" fill="green"/>
36
- <path d="M 224.0 800.0 L 232.0 800.0 C 232.13219560955838 759.3028944964044, 230.79770867747806 718.6010430679551, 228.0 678.0 C 225.16515580807044 636.8600371246562, 220.82797307910076 595.8236159197891, 215.0 555.0 C 216.82832263271285 595.9932157846416, 218.49500657446126 636.993640751652, 220.0 678.0 C 221.49232727518248 718.6612463043382, 222.82567419693817 759.3283274178874, 224.0 800.0 Z" fill="green"/>
37
- <path d="M 232.0 800.0 L 240.0 800.0 C 240.6606950188828 760.6591000037306, 239.9935223622263 721.2959132609964, 238.0 682.0 C 235.99961655183333 642.5688423880508, 232.6637358226429 603.2054497836037, 228.0 564.0 L 230.0 682.0 L 232.0 800.0 Z" fill="green"/>
38
- <path d="M 240.0 800.0 L 248.0 800.0 C 253.8269773623072 760.5155299499579, 258.16441848699037 720.8112611932427, 261.0 681.0 C 263.8203961379586 641.401939848484, 265.1549799045765 601.6980727916012, 265.0 562.0 C 261.16479789433635 601.683054463702, 257.1647518792901 641.3501774462436, 253.0 681.0 C 248.83161044348046 720.6844544504058, 244.49822717339387 760.3515782304291, 240.0 800.0 Z" fill="green"/>
39
- <path d="M 248.0 800.0 L 256.0 800.0 C 256.6476165971727 749.9939917135611, 255.98064290534398 699.9709648264054, 254.0 650.0 C 252.001958848139 599.590083173515, 248.66706329975057 549.2331603928499, 244.0 499.0 C 244.66443745619932 549.3333628263842, 245.33110412373776 599.6666962255372, 246.0 650.0 C 246.66446688181682 700.0000292981986, 247.33113354934378 750.0000293627193, 248.0 800.0 Z" fill="green"/>
40
- <path d="M 256.0 800.0 L 264.0 800.0 C 266.9918588200207 749.3884983640642, 268.6592860573581 698.6987103490076, 269.0 648.0 C 269.342836456824 596.9854565773794, 268.34237441078005 545.9618922291381, 266.0 495.0 C 264.33882784525485 546.0001793616848, 262.67216116569165 597.00017975632, 261.0 648.0 C 259.3387562944738 698.6668448598604, 257.6720896150784 749.3335119134802, 256.0 800.0 Z" fill="green"/>
41
- <path d="M 264.0 800.0 L 272.0 800.0 C 278.3286834216041 743.1269691757121, 283.3304971843028 686.1062922809464, 287.0 629.0 C 290.65852547600184 572.06454153513, 292.99270017516375 515.0439881698884, 294.0 458.0 L 279.0 629.0 L 264.0 800.0 Z" fill="green"/>
42
- <path d="M 272.0 800.0 L 280.0 800.0 C 277.3188809174099 743.9161896252178, 273.3174033979128 687.8955043522592, 268.0 632.0 C 262.658653240542 575.8528077148708, 255.98950181389424 519.8319357310297, 248.0 464.0 L 260.0 632.0 L 272.0 800.0 Z" fill="green"/>
43
- <path d="M 280.0 800.0 L 288.0 800.0 C 288.79344282301884 768.9915221775514, 288.1257907032184 737.9456986068305, 286.0 707.0 C 283.8371615512318 675.5149875434521, 280.16488430044956 644.1337092185852, 275.0 613.0 C 276.1638497047498 644.3278181607327, 277.16386793682005 675.6617227656002, 278.0 707.0 C 278.8270071568557 737.9962752269191, 279.4936857143885 768.9968281521939, 280.0 800.0 Z" fill="green"/>
44
- <path d="M 288.0 800.0 L 296.0 800.0 C 301.49622665003875 742.1161312284785, 305.4980034657822 684.0903674001988, 308.0 626.0 C 310.5107836521963 567.7056167649351, 311.51123098187713 509.34618920022046, 311.0 451.0 C 307.51120716583335 509.34433248812724, 303.84451777355986 567.678027365206, 300.0 626.0 C 296.17591832558134 684.0119536193873, 292.1758937968763 742.0123092856097, 288.0 800.0 Z" fill="green"/>
45
- <path d="M 296.0 800.0 L 304.0 800.0 C 304.97161588126295 767.3373929145392, 304.63792798506176 734.6359790868248, 303.0 702.0 C 301.33860891478673 668.896514861114, 298.3353257609008 635.860400168369, 294.0 603.0 C 294.3316241969274 636.0000172344945, 294.66495753085684 669.0000172935077, 295.0 702.0 C 295.3316585487994 734.6666837276804, 295.66499188271683 767.3333504515899, 296.0 800.0 Z" fill="green"/>
46
- <path d="M 304.0 800.0 L 312.0 800.0 C 311.9896959419764 762.9681009680892, 310.6552269519621 725.9365864951924, 308.0 689.0 C 305.33102831327426 651.872211926323, 301.32758597665594 614.8403703126035, 296.0 578.0 L 300.0 689.0 L 304.0 800.0 Z" fill="green"/>
47
- <path d="M 312.0 800.0 L 320.0 800.0 C 321.83136310643806 744.6892121976608, 322.1648593405496 689.3288373351523, 321.0 634.0 C 319.833809560276 578.6079377181637, 317.1658367071566 523.2475010159359, 313.0 468.0 C 313.1666631385828 523.3331660043059, 313.1666631385828 578.6668339956941, 313.0 634.0 C 312.8333338373547 689.3341700112614, 312.49999848793584 744.6678380147945, 312.0 800.0 Z" fill="green"/>
48
- <path d="M 320.0 800.0 L 328.0 800.0 C 325.2979273337132 741.2544451172141, 321.2966233733269 682.568653698215, 316.0 624.0 C 310.6517933013014 564.8609515979608, 303.9829108292852 505.8413417206169, 296.0 447.0 C 299.9886567055337 506.000768306627, 303.98865680410245 565.0007697605164, 308.0 624.0 C 311.98878422389623 682.6674306606208, 315.98878432135945 741.3340987567482, 320.0 800.0 Z" fill="green"/>
49
- <path d="M 328.0 800.0 L 336.0 800.0 C 340.6648271642976 750.4346623579873, 343.99975960651733 700.744168968913, 346.0 651.0 C 347.9959294624101 601.363039986763, 348.6629145737099 551.6726491949298, 348.0 502.0 L 338.0 651.0 L 328.0 800.0 Z" fill="green"/>
50
- <path d="M 336.0 800.0 L 344.0 800.0 C 346.65412077696215 761.727808190213, 347.98851029966687 723.3641094124524, 348.0 685.0 C 348.01158953061866 646.3025572641803, 346.67718157291836 607.6047264908701, 344.0 569.0 C 342.67248186886485 607.6668668990126, 341.33914851542664 646.3335341487216, 340.0 685.0 C 338.6723820982031 723.3335318465557, 337.3390487451096 761.6668657479943, 336.0 800.0 Z" fill="green"/>
51
- <path d="M 344.0 800.0 L 352.0 800.0 C 349.77084914704204 759.5531670202424, 346.10108379671897 719.1857481666884, 341.0 679.0 C 335.8094710476669 638.1096132424788, 329.13697108290444 597.4073634574276, 321.0 557.0 C 325.1508217159168 597.6516434415499, 329.1508584040295 638.3186831040291, 333.0 679.0 C 336.81492388330304 719.3196722077273, 340.481623585462 759.6533689314758, 344.0 800.0 Z" fill="green"/>
52
- <path d="M 352.0 800.0 L 360.0 800.0 C 366.6535234669406 763.2063823098854, 371.9913994269978 726.1748678369886, 376.0 689.0 C 379.9778723901861 652.1100984783761, 382.6467756789752 615.0790653464283, 384.0 578.0 L 368.0 689.0 L 352.0 800.0 Z" fill="green"/>
53
- <path d="M 360.0 800.0 L 368.0 800.0 C 364.95542491972947 747.9033098973374, 360.6203194895532 695.8820447352224, 355.0 644.0 C 349.31297625776926 591.5021979171967, 342.31004528426 539.1469520676275, 334.0 487.0 C 338.3194957569082 539.3344778919638, 342.65282929221195 591.6678136644784, 347.0 644.0 C 351.31967087212604 696.0011373335853, 355.6530044048826 748.0011397266638, 360.0 800.0 Z" fill="green"/>
54
- <path d="M 368.0 800.0 L 376.0 800.0 C 378.32217231669296 751.7060884076425, 379.32267140450074 703.3486324969339, 379.0 655.0 C 378.67498177166283 606.2997226977916, 377.0074711476359 557.6084124762051, 374.0 509.0 C 373.0034586518566 557.6667376528876, 372.00345864848947 606.3334044834208, 371.0 655.0 C 370.00341144528375 703.3334038346638, 369.00341144196256 751.6667373285205, 368.0 800.0 Z" fill="green"/>
55
- <path d="M 376.0 800.0 L 384.0 800.0 C 381.10586712502186 754.5444353374585, 376.76962783000386 709.1807011741935, 371.0 664.0 C 365.140166143258 618.1129150419213, 357.8017600403454 572.4146588556023, 349.0 527.0 C 353.81651996887126 572.6511875291785, 358.4832201434177 618.3181820943832, 363.0 664.0 C 367.4809127255547 709.3190648380724, 371.81427668115816 754.6527185274624, 376.0 800.0 Z" fill="green"/>
56
- <path d="M 384.0 800.0 L 392.0 800.0 C 395.4984098953765 765.7758649620447, 397.5009541490749 731.3988552735543, 398.0 697.0 C 398.4984121563327 662.6448248182271, 397.4971432585668 628.2679259949311, 395.0 594.0 C 393.49949489321256 628.3411307834691, 391.83280220582424 662.6750001436686, 390.0 697.0 C 388.16625009007845 731.3427486035235, 386.1662188329126 765.676618518204, 384.0 800.0 Z" fill="green"/>
57
- <path d="M 392.0 800.0 L 400.0 800.0 C 403.99782548088547 767.1256253175334, 406.6673915063715 734.0897457521439, 408.0 701.0 C 409.3282764125623 668.0178233214028, 409.3282764125622 634.9821766785972, 408.0 602.0 L 400.0 701.0 L 392.0 800.0 Z" fill="green"/>
58
- <path d="M 400.0 800.0 L 408.0 800.0 C 414.98931962756643 755.5144321268364, 420.6593073516077 710.8215877138052, 425.0 666.0 C 429.31587173232674 621.4347107520581, 432.31760988796947 576.7421648791559, 434.0 532.0 L 417.0 666.0 L 400.0 800.0 Z" fill="green"/>
59
- <path d="M 408.0 800.0 L 416.0 800.0 C 414.4297387926129 766.5585469273484, 411.42606830817385 733.1844304335808, 407.0 700.0 C 402.4774517235176 666.0922113682063, 396.4697871865449 632.3825381329706, 389.0 599.0 C 392.48444537452104 632.6514767065172, 395.8178234910079 666.3185956830345, 399.0 700.0 C 402.1480117743557 733.3197913651325, 405.1480512183906 766.6535629655203, 408.0 800.0 Z" fill="green"/>
60
- <path d="M 416.0 800.0 L 424.0 800.0 C 422.121602171469 751.5809752174599, 418.7862578607032 703.2184827113558, 414.0 655.0 C 409.1515933892366 606.1554084333497, 402.8143393220108 557.4586140220358, 395.0 509.0 C 398.8215883154193 557.6548291394769, 402.48827975693024 606.321824635894, 406.0 655.0 C 409.48607121823983 703.3226380085739, 412.8194267463576 751.6562931662814, 416.0 800.0 Z" fill="green"/>
61
- <path d="M 424.0 800.0 L 432.0 800.0 C 435.9988471957447 754.7581405501041, 438.6670509347518 709.3986769869839, 440.0 664.0 C 441.33064823119787 618.679686713908, 441.33064823119787 573.320313286092, 440.0 528.0 L 432.0 664.0 L 424.0 800.0 Z" fill="green"/>
62
- <path d="M 432.0 800.0 L 440.0 800.0 C 441.8191277839934 744.021986868622, 442.1526175743314 687.9957020918442, 441.0 632.0 C 439.8392418760929 575.6088191309286, 437.17130581006074 519.248669735999, 433.0 463.0 C 433.1681527643281 519.3331660234579, 433.1681527643281 575.6668339765421, 433.0 632.0 C 432.83283926411946 688.000824753547, 432.49950397408094 744.0011534800137, 432.0 800.0 Z" fill="green"/>
63
- <path d="M 440.0 800.0 L 448.0 800.0 C 449.4798646978256 754.6827707484492, 449.4798646978256 709.3172292515508, 448.0 664.0 C 446.5060355748185 618.2510011563288, 443.50386334062074 572.5512682579854, 439.0 527.0 C 439.50060826163207 572.6652414269254, 439.83394457662934 618.3323165815544, 440.0 664.0 C 440.1648389434103 709.3331335399421, 440.1648389434103 754.6668664600579, 440.0 800.0 Z" fill="green"/>
64
- <path d="M 448.0 800.0 L 456.0 800.0 C 452.57957715203423 765.8444100445704, 447.9087441962899 731.8140556527185, 442.0 698.0 C 435.9553484167658 663.4081851833905, 428.61516338849975 629.042773460145, 420.0 595.0 C 424.64410160657155 629.3363953943351, 429.3107696170261 663.6697386141079, 434.0 698.0 C 438.6445336816373 732.0030329678676, 443.31120166659656 766.0030425725708, 448.0 800.0 Z" fill="green"/>
65
- <path d="M 456.0 800.0 L 464.0 800.0 C 460.6380206507942 755.8746381450785, 455.9686241309689 711.848899529583, 450.0 668.0 C 443.98278042504256 623.7940907652836, 436.6450871808942 579.7679313003936, 428.0 536.0 L 442.0 668.0 L 456.0 800.0 Z" fill="green"/>
66
- <path d="M 464.0 800.0 L 472.0 800.0 C 469.8140951080245 749.2406542666927, 466.14534337997446 698.5451758427284, 461.0 648.0 C 455.82383474821125 597.1520461275842, 449.15333150390046 546.4562214708221, 441.0 496.0 C 445.1657442333421 546.6533997064688, 449.1657727747908 597.3204278981523, 453.0 648.0 C 456.83233008646465 698.6544963371256, 460.499022890242 749.3215241711391, 464.0 800.0 Z" fill="green"/>
67
- <path d="M 472.0 800.0 L 480.0 800.0 C 483.165121211778 763.7560745743903, 484.8336803605682 727.3814851307633, 485.0 691.0 C 485.166256729565 654.6322760485482, 483.8314105557666 618.2577178125406, 481.0 582.0 C 479.83302645413266 618.3391840614597, 478.49967448767563 654.673025147414, 477.0 691.0 C 475.499758368797 727.3407129062936, 473.83306839310575 763.6745543763625, 472.0 800.0 Z" fill="green"/>
68
- <path d="M 480.0 800.0 L 488.0 800.0 C 495.32600177130007 741.8132252441483, 501.32807194773005 683.4597651955233, 506.0 625.0 C 510.65498740361056 566.7522128854333, 513.9894625091694 508.39889853815407, 516.0 450.0 L 498.0 625.0 L 480.0 800.0 Z" fill="green"/>
69
- <path d="M 488.0 800.0 L 496.0 800.0 C 502.49045125448595 760.2051680630559, 507.49509412371555 720.1680251092192, 511.0 680.0 C 514.4821746966797 640.0924859074395, 516.4840078311042 600.0558232189497, 517.0 560.0 C 512.4975453819095 600.0189303728718, 507.8308262988142 640.019379656546, 503.0 680.0 C 498.16437700233007 720.0203185201199, 493.16432073028784 760.0207686964574, 488.0 800.0 Z" fill="green"/>
70
- <path d="M 496.0 800.0 L 504.0 800.0 C 502.4645726097688 745.2660667219436, 499.46313843525127 690.5732662085126, 495.0 636.0 C 490.489781810452 580.8510635537073, 484.486852625284 525.824212689667, 477.0 471.0 C 480.4908237451064 525.9903042342646, 483.8241753014799 580.9906049144271, 487.0 636.0 C 490.1555368415048 690.657983138145, 493.1555530333672 745.3249448565266, 496.0 800.0 Z" fill="green"/>
71
- <path d="M 504.0 800.0 L 512.0 800.0 C 510.3231663038105 744.272530490812, 507.32203725137583 688.5849136289684, 503.0 633.0 C 498.661918979786 577.2087504573676, 492.99310379534245 521.5209777631283, 486.0 466.0 L 495.0 633.0 L 504.0 800.0 Z" fill="green"/>
72
- <path d="M 512.0 800.0 L 520.0 800.0 C 517.2988998950689 763.8714515609208, 513.2954373598651 727.8402887440865, 508.0 692.0 C 502.6474422013643 655.7731118346372, 495.97487946208014 619.7412730425027, 488.0 584.0 L 500.0 692.0 L 512.0 800.0 Z" fill="green"/>
73
- <path d="M 520.0 800.0 L 528.0 800.0 C 528.3158138170185 741.6540040709153, 527.315474686537 683.3008881261666, 525.0 625.0 C 522.6670899881113 566.2601111977804, 518.9991610452895 507.57324811263214, 514.0 449.0 C 514.9971355557398 507.66671544578804, 515.997135557329 566.3333822056937, 517.0 625.0 C 517.9971680090557 683.3333818359065, 518.997168010627 741.666715260899, 520.0 800.0 Z" fill="green"/>
74
- <path d="M 528.0 800.0 L 536.0 800.0 C 533.111811851099 766.8316134492432, 528.7729587493915 733.7895782900864, 523.0 701.0 C 517.1364937072922 667.6961246415592, 509.793523863122 634.6527603427933, 501.0 602.0 C 505.83036180559213 634.9765749823738, 510.49710506067544 667.9771165718914, 515.0 701.0 C 519.496810045826 733.978258640859, 523.8302143048971 766.9787987676318, 528.0 800.0 Z" fill="green"/>
75
- <path d="M 536.0 800.0 L 544.0 800.0 C 545.4821775842253 749.6812161858726, 545.4821775842253 699.3187838141274, 544.0 649.0 C 542.5053899397856 598.2591432317042, 539.5036263403813 547.5626913306543, 535.0 497.0 C 535.5005482376572 547.6653826050625, 535.8338839914588 598.3324171829038, 536.0 649.0 C 536.1650195649273 699.3331529924305, 536.1650195649273 749.6668470075695, 536.0 800.0 Z" fill="green"/>
76
- <path d="M 544.0 800.0 L 552.0 800.0 C 550.6358439745483 747.61112199976, 547.9680769494142 695.2561941315031, 544.0 643.0 C 539.9914176372638 590.2103840702517, 534.6558384267375 537.5215393663051, 528.0 485.0 C 530.6581691074825 537.6670964646428, 533.3248358204291 590.3337640453364, 536.0 643.0 C 538.6582761940389 695.3337604237702, 541.3249429064028 747.6670946539143, 544.0 800.0 Z" fill="green"/>
77
- <path d="M 552.0 800.0 L 560.0 800.0 C 565.1624188019448 762.4989778190159, 568.8329504937992 724.7926068026937, 571.0 687.0 C 573.1571869827605 649.3793922538088, 573.8245499987207 611.6733818520581, 573.0 574.0 C 569.8318595969594 611.6810421884948, 566.4984835325104 649.348191716768, 563.0 687.0 C 559.4986631502913 724.6825166033152, 555.831949402694 762.3496669195417, 552.0 800.0 Z" fill="green"/>
78
- <path d="M 560.0 800.0 L 568.0 800.0 C 566.4828734647726 752.255424435432, 563.4809402938961 704.5580418315049, 559.0 657.0 C 554.4926101595769 609.1612383736191, 548.4886980365906 561.4634920632269, 541.0 514.0 C 544.4992919042321 561.6548675956219, 547.8326521794609 609.3219195313926, 551.0 657.0 C 554.1658831806802 704.6560332477122, 557.1659074059661 752.323084827254, 560.0 800.0 Z" fill="green"/>
79
- <path d="M 568.0 800.0 L 576.0 800.0 C 573.0891950334368 761.523632338274, 568.7518941066979 723.1552010632761, 563.0 685.0 C 557.1319855323303 646.0745142899224, 549.7916639447363 607.371000464427, 541.0 569.0 C 545.8131735713924 607.6487970093388, 550.4798849157876 646.3158338628982, 555.0 685.0 C 559.4771998459183 723.3168878317816, 563.8105738816846 761.650581225098, 568.0 800.0 Z" fill="green"/>
80
- <path d="M 576.0 800.0 L 584.0 800.0 C 590.1539979636378 768.9123573877135, 594.8277089293947 737.5317266176318, 598.0 706.0 C 601.1420951140316 674.7684131319843, 602.8112299282019 643.3886786255813, 603.0 612.0 C 598.8298807272375 643.3556168167049, 594.496469046418 674.6895166626305, 590.0 706.0 C 585.4967949793094 737.3573882772337, 580.830043685442 768.6912898217718, 576.0 800.0 Z" fill="green"/>
81
- <path d="M 584.0 800.0 L 592.0 800.0 C 597.6591899735014 767.1922308648234, 601.9972036179358 734.1565884956684, 605.0 701.0 C 608.0110720159987 667.75203275133, 609.6795487392436 634.3824982864321, 610.0 601.0 C 605.6882917704313 634.3361398416068, 601.354957221289 667.6694825273169, 597.0 701.0 C 592.6878650065722 734.002779003296, 588.3545304812225 767.0027880809598, 584.0 800.0 Z" fill="green"/>
82
- <path d="M 592.0 800.0 L 600.0 800.0 C 602.3321307992493 758.0458173381724, 603.3328018444663 716.017633439059, 603.0 674.0 C 602.6670305358472 631.9612038700938, 600.9992443335259 589.9329915715978, 598.0 548.0 L 595.0 674.0 L 592.0 800.0 Z" fill="green"/>
8
+ <path d="M 0.0 800.0 L 8.0 800.0 C 15.163520849410235 741.8250215432423, 20.83267926085269 683.4660378960405, 25.0 625.0 C 29.17580660590798 566.414908390875, 31.84365063887021 507.7223396657058, 33.0 449.0 C 27.84840159457876 507.68299885153317, 22.51503414822279 566.3500407614488, 17.0 625.0 C 11.513114441392311 683.3506113851784, 5.846411898683069 741.6843140307146, 0.0 800.0 Z" fill="green"/>
9
+ <path d="M 8.0 800.0 L 16.0 800.0 C 19.157753595243175 743.3902859799091, 20.82519001654252 686.6974476557317, 21.0 630.0 C 21.175810585172574 572.9780196016651, 19.841854377981026 515.951391744226, 17.0 459.0 C 15.838608480994589 516.0038490553599, 14.50526705967117 573.0041948169364, 13.0 630.0 C 11.503298002083014 686.6714955610694, 9.836621340154363 743.3385020666435, 8.0 800.0 Z" fill="green"/>
10
+ <path d="M 16.0 800.0 L 24.0 800.0 C 28.48979982507761 766.1534417095398, 31.493650221553782 732.10980388281, 33.0 698.0 C 34.51523671267285 663.6889602635208, 34.51523671267285 629.3110397364792, 33.0 595.0 C 30.514289734429028 629.3470684534964, 27.84757369632869 663.6810374440382, 25.0 698.0 C 22.17761730995839 732.0153605095502, 19.177562745468247 766.0159789071051, 16.0 800.0 Z" fill="green"/>
11
+ <path d="M 24.0 800.0 L 32.0 800.0 C 36.99398683612969 763.4822822635022, 40.66386477274141 726.783502897385, 43.0 690.0 C 45.34653476594693 653.0527516751198, 46.347418382316974 616.0200578694279, 46.0 579.0 C 42.34991063849232 616.0016402960282, 38.683243481153134 653.0016452473601, 35.0 690.0 C 31.349614739565357 726.6682923734071, 27.682947590941698 763.3349638596436, 24.0 800.0 Z" fill="green"/>
12
+ <path d="M 32.0 800.0 L 40.0 800.0 C 42.14954029693848 757.04004766603, 42.816735747421866 714.0059411098516, 42.0 671.0 C 41.1758366875168 627.6029539010187, 38.840618792937136 584.2346215731106, 35.0 541.0 C 34.83654112121071 584.3344180715433, 34.503204372873846 627.6681953553343, 34.0 671.0 C 33.50062121482869 714.0023766271175, 32.83394782160994 757.0028104897265, 32.0 800.0 Z" fill="green"/>
13
+ <path d="M 40.0 800.0 L 48.0 800.0 C 47.82094643658459 757.9585438290525, 46.15288703488437 715.9234469062067, 43.0 674.0 C 39.8301980383499 631.8516379521027, 35.15958975524565 589.8161634041645, 29.0 548.0 C 31.166367138197824 589.9918575624301, 33.16638806150447 631.9922969518698, 35.0 674.0 C 36.83297803565987 715.9931804539419, 38.499662126361734 757.9936195396286, 40.0 800.0 Z" fill="green"/>
14
+ <path d="M 48.0 800.0 L 56.0 800.0 C 59.1660384551886 743.0570067555415, 60.833474375000556 686.0306982979728, 61.0 629.0 C 61.16650001180044 571.9780735569593, 59.8325514652544 514.9517731921154, 57.0 458.0 C 55.83320850744591 515.0037334342128, 54.49986758615408 572.0040578194387, 53.0 629.0 C 51.4999017372774 686.0047080399498, 49.83322558274486 743.0050325249631, 48.0 800.0 Z" fill="green"/>
15
+ <path d="M 56.0 800.0 L 64.0 800.0 C 65.97879570460277 769.7144477681969, 66.64629463302605 739.3432465249377, 66.0 709.0 C 65.34536793256407 678.2653146254155, 63.34280630461073 647.5593696634644, 60.0 617.0 C 59.33701458814338 647.6667465465754, 58.67034791507236 678.3334135078424, 58.0 709.0 C 57.33693501459393 739.333412348544, 56.67026834166131 769.666745966978, 56.0 800.0 Z" fill="green"/>
16
+ <path d="M 64.0 800.0 L 72.0 800.0 C 72.47997965633058 741.6538124003478, 71.47955063451889 683.2954527946663, 69.0 625.0 C 66.50085381389222 566.243846166713, 62.49911049427151 507.5516108122759, 57.0 449.0 C 58.497549495959795 507.6627811741313, 59.83088979419651 566.329754296547, 61.0 625.0 C 62.16233816376226 683.3303997518046, 63.16234332709899 741.6640342797806, 64.0 800.0 Z" fill="green"/>
17
+ <path d="M 72.0 800.0 L 80.0 800.0 C 85.82708243123037 760.1806877666226, 90.16445575610554 720.1433955370055, 93.0 680.0 C 95.8206089508849 640.0680465436584, 97.15517229685352 600.0311461645996, 97.0 560.0 C 93.1648285685743 600.016254251549, 89.16478330019639 640.0167069353281, 85.0 680.0 C 80.83163874782215 720.0176425835626, 76.4982562894483 760.0180960454751, 72.0 800.0 Z" fill="green"/>
18
+ <path d="M 80.0 800.0 L 88.0 800.0 C 93.33021114294252 749.7841881982808, 97.33207635198164 699.4273843178721, 100.0 649.0 C 102.67808074289722 598.3806327790977, 104.01204055585615 547.690159886659, 104.0 497.0 C 100.01320571135355 547.6677080683831, 96.01320553020214 598.3343770296343, 92.0 649.0 C 88.01303305993078 699.3343679412015, 84.01303288114039 749.667703524314, 80.0 800.0 Z" fill="green"/>
19
+ <path d="M 88.0 800.0 L 96.0 800.0 C 93.28324877139491 770.1790793786782, 89.27827800896239 740.4755462239702, 84.0 711.0 C 78.63855171089594 681.0600050613895, 71.96333726704744 651.3553007862637, 64.0 622.0 L 76.0 711.0 L 88.0 800.0 Z" fill="green"/>
20
+ <path d="M 96.0 800.0 L 104.0 800.0 C 109.66142966343072 756.4787544471841, 113.99744088217679 712.7851029352045, 117.0 669.0 C 119.99005468869714 625.3972440877669, 121.65774274994118 581.7038168831734, 122.0 538.0 L 109.0 669.0 L 96.0 800.0 Z" fill="green"/>
21
+ <path d="M 104.0 800.0 L 112.0 800.0 C 117.49774088200056 741.1142887884804, 121.49946138527159 682.0889113652329, 124.0 623.0 C 126.49516880654728 564.0379797444639, 127.49559708691308 505.01271120288294, 127.0 446.0 C 123.49927830574296 505.0101568011963, 119.83259230364021 564.0104679259405, 116.0 623.0 C 112.16600652394335 682.0110982879044, 108.16598541531444 741.0114096401809, 104.0 800.0 Z" fill="green"/>
22
+ <path d="M 112.0 800.0 L 120.0 800.0 C 117.31373984494185 751.9025726988002, 113.31174519348605 703.8786368813307, 108.0 656.0 C 102.65578341433618 607.8286747575978, 95.98575155706745 559.8044453852629, 88.0 512.0 L 100.0 656.0 L 112.0 800.0 Z" fill="green"/>
23
+ <path d="M 120.0 800.0 L 128.0 800.0 C 131.49865511158217 762.7670936449007, 133.50080699478667 725.3935918250834, 134.0 688.0 C 134.49865672946422 650.6465795640557, 133.497583098605 613.2731640119781, 131.0 576.0 C 129.49957260927752 613.340507524746, 127.832883914652 650.6743342843579, 126.0 688.0 C 124.16631421379668 725.3419953856403, 122.16628775711203 762.6758225770869, 120.0 800.0 Z" fill="green"/>
24
+ <path d="M 128.0 800.0 L 136.0 800.0 C 142.82706419067182 755.8634300242611, 148.16444515013862 711.4964507986934, 152.0 667.0 C 155.8419641213334 622.4291949438723, 158.177074214686 577.7285160139795, 159.0 533.0 C 154.1848619146098 577.6871020190127, 149.1848048360584 622.3542785874054, 144.0 667.0 C 138.84895616907605 711.3550095193795, 133.51556274226704 755.6888423797295, 128.0 800.0 Z" fill="green"/>
25
+ <path d="M 136.0 800.0 L 144.0 800.0 C 148.66292489885566 747.42873067289, 151.9976760936594 694.7396617949908, 154.0 642.0 C 156.01113409127146 589.0282847534503, 156.67808683125423 536.0055419248205, 156.0 483.0 C 152.6772064233106 536.0006621763616, 149.34387300209661 589.000663573664, 146.0 642.0 C 142.67707452500613 694.6673247035455, 139.34374110488974 747.3339927413846, 136.0 800.0 Z" fill="green"/>
26
+ <path d="M 144.0 800.0 L 152.0 800.0 C 156.16544826425135 754.4373282661664, 158.8340324612254 708.7378238929855, 160.0 663.0 C 161.16401501224317 617.338768560639, 160.83044278977968 571.6393740831419, 159.0 526.0 C 156.83281179862033 571.6749538422711, 154.49945787754538 617.3420234404527, 152.0 663.0 C 149.49954614612003 708.6761702104778, 146.8328559318506 754.3432401298417, 144.0 800.0 Z" fill="green"/>
27
+ <path d="M 152.0 800.0 L 160.0 800.0 C 159.62455518316276 766.2859400830002, 157.95625601995246 732.5862969861525, 155.0 699.0 C 151.99397993669925 664.8483291328821, 147.6562579960005 630.8138954443228, 142.0 597.0 C 143.65839533535706 631.0004047850762, 145.32506206778152 665.0004061265346, 147.0 699.0 C 148.65855652987597 732.6670675057653, 150.32522326102043 766.3337354748834, 152.0 800.0 Z" fill="green"/>
28
+ <path d="M 160.0 800.0 L 168.0 800.0 C 166.76958412842848 766.240079265028, 164.0996888667895 732.5326515868359, 160.0 699.0 C 155.8156626645151 664.7749818213681, 150.14184895680026 630.7320995750792, 143.0 597.0 C 146.15318375617056 630.9862518817833, 149.15322436432947 664.9867121075843, 152.0 699.0 C 154.81675107571874 732.6545543172485, 157.48345308113855 766.3216671356737, 160.0 800.0 Z" fill="green"/>
29
+ <path d="M 168.0 800.0 L 176.0 800.0 C 178.99125093574912 752.7256868566847, 180.65878834670087 705.3676243856551, 181.0 658.0 C 181.3434778962058 610.3177716383882, 180.3429484862992 562.6258697661747, 178.0 515.0 C 176.33921521079853 562.6668720844893, 174.6725485272135 610.3335392350216, 173.0 658.0 C 171.3391332844632 705.3335373197742, 169.67246660111368 752.666871126901, 168.0 800.0 Z" fill="green"/>
30
+ <path d="M 176.0 800.0 L 184.0 800.0 C 186.32414378062427 742.0329128200774, 187.3244913585047 684.0127533030111, 187.0 626.0 C 186.67355874339003 567.6386427826423, 185.006305797002 509.2847896590608, 182.0 451.0 C 181.0028809437845 509.3333826734995, 180.0028809421584 567.666716101688, 179.0 626.0 C 178.00284811760702 684.0000490588427, 177.00284811599946 742.0000491520815, 176.0 800.0 Z" fill="green"/>
31
+ <path d="M 184.0 800.0 L 192.0 800.0 C 198.32821758391816 745.7998268503698, 203.3302126345095 691.444813967277, 207.0 637.0 C 210.6577123641058 582.7343302551448, 212.9919706040396 528.379459810972, 214.0 474.0 L 199.0 637.0 L 184.0 800.0 Z" fill="green"/>
32
+ <path d="M 192.0 800.0 L 200.0 800.0 C 203.99879463152288 755.760202500752, 206.66706845615903 711.4001501661761, 208.0 667.0 C 209.33052602618721 622.6799779886027, 209.3305260261872 578.3200220113973, 208.0 534.0 L 200.0 667.0 L 192.0 800.0 Z" fill="green"/>
33
+ <path d="M 200.0 800.0 L 208.0 800.0 C 206.31243587972915 761.2464198035515, 203.31013557963817 722.550104824601, 199.0 684.0 C 194.65686460132267 645.154742862984, 188.98578612979313 606.4579721160766, 182.0 568.0 L 191.0 684.0 L 200.0 800.0 Z" fill="green"/>
34
+ <path d="M 208.0 800.0 L 216.0 800.0 C 220.66028263515307 763.4701415162984, 223.99653302931912 726.7713871804717, 226.0 690.0 C 228.01370899305834 653.0406319963531, 228.68096505264748 616.0079206891552, 228.0 579.0 C 224.68176273001902 616.0013579360217, 221.34842902677164 653.0013620420676, 218.0 690.0 C 214.6814930440663 726.6680125043144, 211.34815934740058 763.3346831676371, 208.0 800.0 Z" fill="green"/>
35
+ <path d="M 216.0 800.0 L 224.0 800.0 C 229.99097115693792 763.1831304497936, 234.66163575264287 726.1514325838473, 238.0 689.0 C 241.31695002571203 652.0868784430018, 243.3186415110424 615.0555859643903, 244.0 578.0 L 230.0 689.0 L 216.0 800.0 Z" fill="green"/>
36
+ <path d="M 224.0 800.0 L 232.0 800.0 C 237.82948216658005 749.1418852355783, 242.165306006381 698.1125738902288, 245.0 647.0 C 247.82547908288626 596.0535808364466, 249.15957375153764 545.0244597605318, 249.0 494.0 C 245.16553114291852 545.012802674903, 241.16550305533235 596.0131607916264, 237.0 647.0 C 232.8322868159576 698.0138917577708, 228.4989230221082 749.0142502546138, 224.0 800.0 Z" fill="green"/>
37
+ <path d="M 232.0 800.0 L 240.0 800.0 C 237.98883891085114 743.2658681931917, 234.65429685433315 686.5786532323857, 230.0 630.0 C 225.3277592353577 573.203216658859, 219.32556672451972 516.5158429453893, 212.0 460.0 L 222.0 630.0 L 232.0 800.0 Z" fill="green"/>
38
+ <path d="M 240.0 800.0 L 248.0 800.0 C 246.9713233904369 747.9523830245262, 244.63701155046036 695.9305763050489, 241.0 644.0 C 237.32669467338104 591.5512079329025, 232.3245558148544 539.1954878803234, 226.0 487.0 C 228.32584581933693 539.3336668137404, 230.6591791845124 591.6670008612473, 233.0 644.0 C 235.32594080359976 696.0003313650566, 237.6592741683717 748.0003320656882, 240.0 800.0 Z" fill="green"/>
39
+ <path d="M 248.0 800.0 L 256.0 800.0 C 259.83205749660175 760.106236569971, 262.1675780034108 720.0687421675298, 263.0 680.0 C 263.8311241303683 639.9937307935194, 263.163834504297 599.9563532292361, 261.0 560.0 C 259.16615225077675 600.0080770143106, 257.1661292484597 640.0085370606512, 255.0 680.0 C 252.83289563705372 720.009465676203, 250.49953544351712 760.0099261368302, 248.0 800.0 Z" fill="green"/>
40
+ <path d="M 256.0 800.0 L 264.0 800.0 C 265.1319395541171 768.3405080590384, 264.79813051242354 736.628649098156, 263.0 705.0 C 261.17319047212703 672.8668944623018, 257.83494707774696 640.8197578762529, 253.0 609.0 C 253.83240751443063 640.9962607742377, 254.49908610473184 672.9968331086965, 255.0 705.0 C 255.4956159133081 736.664681170591, 255.8289550830135 768.3319022926056, 256.0 800.0 Z" fill="green"/>
41
+ <path d="M 264.0 800.0 L 272.0 800.0 C 278.83000904638 743.487513043181, 284.16582693371566 686.7944479902397, 288.0 630.0 C 291.8429758888834 573.0751584564111, 294.17740121177644 516.0484827114522, 295.0 459.0 C 290.1813524174936 516.015714331215, 285.18131868136584 573.0160989230709, 280.0 630.0 C 274.8460087658811 686.6833550873133, 269.51263982593235 743.350400074269, 264.0 800.0 Z" fill="green"/>
42
+ <path d="M 272.0 800.0 L 280.0 800.0 C 279.66002628630395 749.3012782235799, 277.9925981997392 698.6114643920108, 275.0 648.0 C 271.998098236719 597.2311917403896, 267.6627728827882 546.5412337559684, 262.0 496.0 L 267.0 648.0 L 272.0 800.0 Z" fill="green"/>
43
+ <path d="M 280.0 800.0 L 288.0 800.0 C 291.324675069262 758.0770529657648, 293.3260028394511 716.049169791793, 294.0 674.0 C 294.6786631213657 631.6597313874498, 294.01154771506833 589.297903087567, 292.0 547.0 C 290.0079499451702 589.3337084225357, 288.00794989814835 631.6670427511644, 286.0 674.0 C 284.0078253809383 716.0003721500838, 282.0078253346524 758.0003731220872, 280.0 800.0 Z" fill="green"/>
44
+ <path d="M 288.0 800.0 L 296.0 800.0 C 292.94434828762024 755.5541494392871, 288.6086198475782 711.1963123219341, 283.0 667.0 C 277.3073443876666 622.1414800394193, 270.3033585523797 577.4493799475883, 262.0 533.0 C 266.31713557466117 577.668236114668, 270.65046928788934 622.3349066971741, 275.0 667.0 C 279.3173753073192 711.3348912074132, 283.65070901495113 755.6682283701093, 288.0 800.0 Z" fill="green"/>
45
+ <path d="M 296.0 800.0 L 304.0 800.0 C 302.99270017516375 742.9560118301116, 300.6585254760018 685.93545846487, 297.0 629.0 C 293.3304971843028 571.8937077190536, 288.32868342160407 514.8730308242879, 282.0 458.0 L 289.0 629.0 L 296.0 800.0 Z" fill="green"/>
46
+ <path d="M 304.0 800.0 L 312.0 800.0 C 311.65229350660826 765.6195497826759, 309.9839889221164 731.2524753421434, 307.0 697.0 C 303.99586521695215 662.5162752722824, 299.6582155952689 628.1487436543304, 294.0 594.0 L 299.0 697.0 L 304.0 800.0 Z" fill="green"/>
47
+ <path d="M 312.0 800.0 L 320.0 800.0 C 317.5842107791381 769.5328516086146, 313.9134005043229 739.1652393351428, 309.0 709.0 C 303.9643635862993 678.0843078046668, 297.6235125274412 647.3812395196694, 290.0 617.0 C 293.6466996918767 647.6690496271461, 297.31336739475637 678.3357249603216, 301.0 709.0 C 304.647128355381 739.3356908511427, 308.31379603617256 769.6690325740542, 312.0 800.0 Z" fill="green"/>
48
+ <path d="M 320.0 800.0 L 328.0 800.0 C 332.16446917263204 766.139658246651, 334.8345943354556 732.09556242065, 336.0 698.0 C 337.16189119874457 664.0072581607989, 336.82812815720683 629.9634279239467, 335.0 596.0 C 332.83239483915156 630.0111030209048, 330.4990245549858 664.0116414473202, 328.0 698.0 C 325.49918303005376 732.0127365613835, 322.83247407326456 766.0132757604454, 320.0 800.0 Z" fill="green"/>
49
+ <path d="M 328.0 800.0 L 336.0 800.0 C 336.31228440237766 749.9852360160534, 335.3118253178474 699.9622817895421, 333.0 650.0 C 330.6670572368576 599.58133608489, 326.99867636584617 549.2244714010058, 322.0 499.0 C 322.99665692379125 549.3333996780225, 323.9966569267322 599.6667331593843, 325.0 650.0 C 325.9967010476201 700.0000659064647, 326.99670105052223 750.0000660515724, 328.0 800.0 Z" fill="green"/>
50
+ <path d="M 336.0 800.0 L 344.0 800.0 C 343.32207983667513 757.6179872175459, 341.3207805933852 715.2571532345772, 338.0 673.0 C 334.662820084098 630.5341642990427, 329.99309183170215 588.1730580094518, 324.0 546.0 L 330.0 673.0 L 336.0 800.0 Z" fill="green"/>
51
+ <path d="M 344.0 800.0 L 352.0 800.0 C 352.3247608464158 763.3131607325104, 351.32389109840256 726.6146033053582, 349.0 690.0 C 346.6653817364141 653.2163823643016, 342.9954964813759 616.5175298139194, 338.0 580.0 L 341.0 690.0 L 344.0 800.0 Z" fill="green"/>
52
+ <path d="M 352.0 800.0 L 360.0 800.0 C 367.4854742043753 758.2301429285263, 373.49049525618767 716.1949955658398, 378.0 674.0 C 382.4755416174186 632.1227940915613, 385.47801446680376 590.0881742001689, 387.0 548.0 C 381.49678523112914 590.0218372134448, 375.83006136838895 632.0222611372839, 370.0 674.0 C 364.16363047057683 716.0231590255352, 358.1635697789036 758.0235838672477, 352.0 800.0 Z" fill="green"/>
53
+ <path d="M 360.0 800.0 L 368.0 800.0 C 367.8259956041526 745.3014167122761, 366.1585009647135 690.6075925386731, 363.0 636.0 C 359.8314811436596 581.2192072786542, 355.16248142300793 526.5252105510206, 349.0 472.0 C 351.16648973241627 526.6604063227279, 353.16650210045935 581.32741104924, 355.0 636.0 C 356.83312342681216 690.661422647508, 358.49980039597176 745.3284272359438, 360.0 800.0 Z" fill="green"/>
54
+ <path d="M 368.0 800.0 L 376.0 800.0 C 382.48942687900717 762.2158441148305, 387.49456603468127 724.1767865317074, 391.0 686.0 C 394.4802751238531 648.0972119887384, 396.4823013816552 610.0587130904989, 397.0 572.0 C 392.497284523258 610.019895095386, 387.83055996377914 648.0203665082852, 383.0 686.0 C 378.1641334032093 724.0213561860537, 373.1640712388389 762.0218286352685, 368.0 800.0 Z" fill="green"/>
55
+ <path d="M 376.0 800.0 L 384.0 800.0 C 388.49719481099856 765.4846704516274, 391.50093506300044 730.7747830951611, 393.0 696.0 C 394.49347962893654 661.35478292404, 394.49347962893654 626.64521707596, 393.0 592.0 C 390.49884847043376 626.6791336901034, 387.8321412880915 661.3463270605523, 385.0 696.0 C 382.16564694833176 730.6807357600527, 379.1656012969771 765.3479299534837, 376.0 800.0 Z" fill="green"/>
56
+ <path d="M 384.0 800.0 L 392.0 800.0 C 396.16433405024486 767.1438872974534, 398.8346718830614 734.098456616349, 400.0 701.0 C 401.16159858489755 668.007472136821, 400.82780928880896 634.9623318240507, 399.0 602.0 C 396.83233744429884 635.0114355343061, 394.49896491445185 668.0119898849995, 392.0 701.0 C 389.4991330282427 734.0131185450025, 386.8324214973424 767.0136737398933, 384.0 800.0 Z" fill="green"/>
57
+ <path d="M 392.0 800.0 L 400.0 800.0 C 406.99239645717785 747.1529453369552, 412.66143115953724 694.1307972384169, 417.0 641.0 C 421.320883020292 588.0857861004768, 424.32212648572363 535.0638182111845, 426.0 482.0 L 409.0 641.0 L 392.0 800.0 Z" fill="green"/>
58
+ <path d="M 400.0 800.0 L 408.0 800.0 C 411.6660514560096 747.0698741934959, 414.00036913907445 694.0475153924511, 415.0 641.0 C 415.998683068824 588.0027811900783, 415.6652093806434 534.9804647693591, 414.0 482.0 L 407.0 641.0 L 400.0 800.0 Z" fill="green"/>
59
+ <path d="M 408.0 800.0 L 416.0 800.0 C 420.1647064426721 764.1319043120285, 422.8344581673075 728.0902560294516, 424.0 692.0 C 425.16240530484475 656.0068645456276, 424.8286884122202 619.9654401421773, 423.0 584.0 C 420.8324957096514 620.0104925366861, 418.49912937616926 656.0110016818393, 416.0 692.0 C 413.4992708965247 728.0120353741347, 410.8325664671037 764.0125451713192, 408.0 800.0 Z" fill="green"/>
60
+ <path d="M 416.0 800.0 L 424.0 800.0 C 429.8261618029857 762.8601719317076, 434.164129078666 725.4869154027699, 437.0 688.0 C 439.81874544606717 650.7394634629718, 441.15348743719363 613.3666877114304, 441.0 576.0 C 437.16456004387476 613.35072028187, 433.16450824887403 650.6845370352102, 429.0 688.0 C 424.83139094144786 725.3522076660904, 420.4980013863032 762.6860253719522, 416.0 800.0 Z" fill="green"/>
61
+ <path d="M 424.0 800.0 L 432.0 800.0 C 438.4943352626934 748.1581602464389, 443.497093256469 696.1294771111728, 447.0 644.0 C 450.48939935629915 592.0715368138585, 452.4904940617763 540.043074471452, 453.0 488.0 C 448.4985387744257 540.014649799572, 443.8318407116895 592.0149996414896, 439.0 644.0 C 434.165304191585 696.0157178869131, 429.16527051317365 748.0160681423907, 424.0 800.0 Z" fill="green"/>
62
+ <path d="M 432.0 800.0 L 440.0 800.0 C 442.4961767165359 770.4089798870251, 443.49787458271163 740.6919431904777, 443.0 711.0 C 442.5012778364628 681.257509296964, 440.4978705305205 651.5403009254866, 437.0 622.0 C 436.4998475928096 651.6700968890572, 435.833166925524 681.3373865832649, 435.0 711.0 C 434.1665702844747 740.6719693308736, 433.1665492702964 770.3392594181637, 432.0 800.0 Z" fill="green"/>
63
+ <path d="M 440.0 800.0 L 448.0 800.0 C 452.8294880648534 765.8339269622466, 456.16705384403514 731.4569994366747, 458.0 697.0 C 459.8244487358149 662.702740990161, 460.15820139806766 628.3262167781292, 459.0 594.0 C 456.16520934241106 628.3475021607848, 453.16516304611775 662.681365329475, 450.0 697.0 C 446.8320253606059 731.3491196853844, 443.4986404955177 765.6829837957927, 440.0 800.0 Z" fill="green"/>
64
+ <path d="M 448.0 800.0 L 456.0 800.0 C 452.5729733191018 767.5038640935853, 447.9017499542642 735.1389593514959, 442.0 703.0 C 435.9516071493484 670.0624724064223, 428.61075299222483 637.3623038883266, 420.0 605.0 C 424.64297841656065 637.6700448600964, 429.3096467190713 670.3367229776704, 434.0 703.0 C 438.64345457443886 735.3366778622416, 443.3101228443995 767.6700223041116, 448.0 800.0 Z" fill="green"/>
65
+ <path d="M 456.0 800.0 L 464.0 800.0 C 467.83274017643987 741.405772257826, 470.167090355521 682.713539183786, 471.0 624.0 C 471.8323052496742 565.3290658674192, 471.1653484771545 506.636869885685, 469.0 448.0 C 467.16642713085974 506.6721827710859, 465.16641640143604 565.3391641675152, 463.0 624.0 C 460.83312957209154 682.6731296705224, 458.4997837158499 741.3401111988844, 456.0 800.0 Z" fill="green"/>
66
+ <path d="M 464.0 800.0 L 472.0 800.0 C 470.9842412525271 761.2688251635504, 468.64910406568123 722.5722660672474, 465.0 684.0 C 461.32718570314313 645.1771087576514, 456.3232699043681 606.4801599137911, 450.0 568.0 L 457.0 684.0 L 464.0 800.0 Z" fill="green"/>
67
+ <path d="M 472.0 800.0 L 480.0 800.0 C 480.15554313426196 759.3026944315483, 478.8210191647662 718.5997133619262, 476.0 678.0 C 473.16452756799964 637.1922772370109, 468.8272849111351 596.4889230725895, 463.0 556.0 C 464.8331217795185 596.6596172195938, 466.4998070637843 637.3267381556807, 468.0 678.0 C 469.4997400604342 718.6609834667867, 470.8330882788558 759.3281041286464, 472.0 800.0 Z" fill="green"/>
68
+ <path d="M 480.0 800.0 L 488.0 800.0 C 490.3317842901354 763.0519964282223, 491.3326486456888 726.0200152727459, 491.0 689.0 C 490.6671355004787 651.9559626478635, 488.99902637086973 614.9239399705441, 486.0 578.0 L 483.0 689.0 L 480.0 800.0 Z" fill="green"/>
69
+ <path d="M 488.0 800.0 L 496.0 800.0 C 493.64941497021096 751.5788241282238, 489.9809383130737 703.221631829596, 485.0 655.0 C 479.99086843087946 606.5054226473487, 473.6543732567475 558.1479594763415, 466.0 510.0 L 477.0 655.0 L 488.0 800.0 Z" fill="green"/>
70
+ <path d="M 496.0 800.0 L 504.0 800.0 C 511.3077329111215 769.2722941932961, 517.3148910558612 738.2353104454746, 522.0 707.0 C 526.626225871876 676.1572590900564, 529.9634366083179 645.1211992411473, 532.0 614.0 L 514.0 707.0 L 496.0 800.0 Z" fill="green"/>
71
+ <path d="M 504.0 800.0 L 512.0 800.0 C 513.9990213649828 745.0269124629716, 514.6659489074796 690.0053902069976, 514.0 635.0 C 513.3336598133618 579.962291303459, 511.332876265898 524.9407437482043, 508.0 470.0 L 506.0 635.0 L 504.0 800.0 Z" fill="green"/>
72
+ <path d="M 512.0 800.0 L 520.0 800.0 C 523.9992071043258 745.4091973320075, 526.6669309652248 690.7208581835804, 528.0 636.0 C 529.331485503501 581.3441438440939, 529.331485503501 526.6558561559061, 528.0 472.0 L 520.0 636.0 L 512.0 800.0 Z" fill="green"/>
73
+ <path d="M 520.0 800.0 L 528.0 800.0 C 527.4901202091643 748.9560887641593, 525.4889827544381 697.9270836686406, 522.0 647.0 C 518.4969783794412 595.8679974309625, 513.4941118109862 544.8387584327211, 507.0 494.0 C 509.499713921766 544.9922064879415, 511.83306381257063 595.992568386958, 514.0 647.0 C 516.166335663636 697.9932959054471, 518.1663498478893 748.9936576039049, 520.0 800.0 Z" fill="green"/>
74
+ <path d="M 528.0 800.0 L 536.0 800.0 C 542.6605391833026 745.8078731754158, 547.995997540101 691.4528911655318, 552.0 637.0 C 555.9896445536779 582.7423708285993, 558.6573661253415 528.3875438059538, 560.0 474.0 L 544.0 637.0 L 528.0 800.0 Z" fill="green"/>
75
+ <path d="M 536.0 800.0 L 544.0 800.0 C 549.4960062303028 744.1202648899301, 553.4979118366857 688.093586400569, 556.0 632.0 C 558.5109828000144 575.7070073276797, 559.5114625948994 519.3466455491531, 559.0 463.0 C 555.5115774136476 519.3447462545802, 551.8448862777585 575.6784555241504, 548.0 632.0 C 544.1762179123731 688.0124012405881, 540.1761915109097 744.012770861075, 536.0 800.0 Z" fill="green"/>
76
+ <path d="M 544.0 800.0 L 552.0 800.0 C 549.6407905634281 760.5593687292015, 545.9714283322172 721.1971193398484, 541.0 682.0 C 535.9862601236998 642.4692762044414, 529.6481912185527 603.1065324777383, 522.0 564.0 L 533.0 682.0 L 544.0 800.0 Z" fill="green"/>
77
+ <path d="M 552.0 800.0 L 560.0 800.0 C 557.6306057091518 744.9237496477913, 553.9625804841428 689.9033712726557, 549.0 635.0 C 543.9858667395782 579.526276019671, 537.6501377959934 524.172012617824, 530.0 469.0 C 533.6555711026656 524.3340678366645, 537.3222378676205 579.6674026532563, 541.0 635.0 C 544.6557040901696 690.0007301068505, 548.3223708539491 745.0007315635416, 552.0 800.0 Z" fill="green"/>
78
+ <path d="M 560.0 800.0 L 568.0 800.0 C 571.165121211778 763.7560745743903, 572.8336803605682 727.3814851307633, 573.0 691.0 C 573.166256729565 654.6322760485482, 571.8314105557666 618.2577178125406, 569.0 582.0 C 567.8330264541327 618.3391840614597, 566.4996744876756 654.673025147414, 565.0 691.0 C 563.499758368797 727.3407129062936, 561.8330683931058 763.6745543763625, 560.0 800.0 Z" fill="green"/>
79
+ <path d="M 568.0 800.0 L 576.0 800.0 C 573.7914493985498 746.2469620030936, 570.1229803804481 692.553915465422, 565.0 639.0 C 559.81813049573 584.830477422158, 553.1481110507455 530.8033199177834, 545.0 477.0 C 549.1549947117855 530.9883697829925, 553.1550166841491 584.9886664099012, 557.0 639.0 C 560.8196923194737 692.6560653535572, 564.4863788633792 746.32302295072, 568.0 800.0 Z" fill="green"/>
80
+ <path d="M 576.0 800.0 L 584.0 800.0 C 582.1499562337959 748.5846789553502, 578.8147697025045 697.2228063734615, 574.0 646.0 C 569.1589122332535 594.4972040959722, 562.8220192232425 543.1350186464082, 555.0 492.0 C 558.8325853389825 543.3213022999943, 562.4992775467094 594.6549932081706, 566.0 646.0 C 569.499180069056 697.3223846816636, 572.8325366010793 748.6560752748211, 576.0 800.0 Z" fill="green"/>
81
+ <path d="M 584.0 800.0 L 592.0 800.0 C 590.3039993093396 742.2753434174595, 587.302977406971 684.5890335163741, 583.0 627.0 C 578.6574087571424 568.8807934646156, 572.9887761251027 510.86067123079727, 566.0 453.0 C 568.9913278729789 511.0004481249229, 571.9913279176908 569.0004489893528, 575.0 627.0 C 577.9914271335623 684.6671122279694, 580.9914271777632 742.3337797442738, 584.0 800.0 Z" fill="green"/>
82
+ <path d="M 592.0 800.0 L 600.0 800.0 C 603.4990742523436 755.0833222253493, 605.5005554778459 710.049994651548, 606.0 665.0 C 606.4990750193307 619.9833345761916, 605.4983355021067 574.9500563011097, 603.0 530.0 C 601.4997055974426 575.0059566379673, 599.8330237443677 620.0063666709887, 598.0 665.0 C 596.1664239182161 710.0071910732894, 594.166405683542 755.0076013534554, 592.0 800.0 Z" fill="green"/>
83
83
  <path d="M 200.0 409.0 L 200.0 244.0 C 200.0 230.19176133042762, 199.29972644087232 216.05032287883216, 203.46448407559444 202.88513207125564 C 205.54686289304456 196.30253666744866, 209.03534926486037 190.05734642171515, 214.1688763314286 185.44066323501096 C 219.30240339799687 180.82398004830677, 226.0958806651691 177.9999999999207, 233.0 178.0 C 239.9041193347862 178.0, 246.69759660188197 180.8239800484458, 251.83112366836394 185.44066323517904 C 256.9646507348459 190.05734642191226, 260.4531371065675 196.30253666764537, 262.5355159239286 202.88513207143362 C 266.70027355879324 216.05032287891686, 265.99999999983595 230.19176133047358, 266.0 244.0 L 266.0 277.0 C 266.0 290.8082386695724, 265.2997264408723 304.94967712116784, 269.46448407559444 318.1148679287444 C 271.5468628930446 324.69746333255137, 275.03534926486043 330.9426535782849, 280.16887633142863 335.55933676498904 C 285.3024033979969 340.1760199516932, 292.0958806651691 343.0000000000793, 299.0 343.0 C 305.9041193347862 343.0, 312.69759660188197 340.1760199515542, 317.83112366836394 335.55933676482096 C 322.9646507348459 330.94265357808774, 326.4531371065675 324.69746333235463, 328.5355159239286 318.11486792856635 C 332.70027355879324 304.94967712108314, 331.99999999983595 290.8082386695264, 332.0 277.0 L 332.0 244.0 C 332.0 230.19176133042762, 331.2997264408723 216.05032287883216, 335.46448407559444 202.88513207125564 C 337.5468628930446 196.30253666744866, 341.03534926486043 190.05734642171515, 346.16887633142863 185.44066323501096 C 351.3024033979969 180.82398004830677, 358.0958806651691 177.9999999999207, 365.0 178.0 C 371.9041193347862 178.0, 378.6975966018819 180.8239800484458, 383.8311236683639 185.44066323517904 C 388.9646507348459 190.05734642191226, 392.45313710656745 196.30253666764537, 394.5355159239286 202.88513207143362 C 398.70027355879324 216.05032287891686, 397.99999999983595 230.19176133047358, 398.0 244.0 L 398.0 409.0 C 398.0 434.9181393921158, 387.3304634573715 460.6766792175649, 369.0035713374682 479.0035713374682 C 350.6766792175649 497.3304634573715, 324.9181393921158 508.0, 299.0 508.0 C 273.0818606078842 508.0, 247.32332078243505 497.3304634573715, 228.9964286625318 479.0035713374682 C 210.66953654262855 460.6766792175649, 200.0 434.9181393921158, 200.0 409.0 Z" fill="white" stroke="#222" stroke-width="8"/>
84
84
  <path d="M 216.0 310.0 L 216.0 244.0 C 216.0 234.22834905515546, 215.1020924443995 224.4122681509689, 216.1841437241162 214.70071177642498 C 216.72516936379034 209.844933589686, 217.9808881723563 204.95096086504498, 220.76278042847377 200.93444919234338 C 222.15372655653243 198.92619335599267, 223.92588456807474 197.1637763205271, 226.02493950620254 195.91405995185806 C 228.12399444433038 194.664343583189, 230.55779331036828 193.94127078651735, 233.0 194.0 C 235.41232855641024 194.0580107160999, 237.77996892273725 194.8771079083559, 239.8018790488464 196.1941400830548 C 241.82378917495552 197.5111722577537, 243.50829248740763 199.31323878994007, 244.81698664953686 201.3405557107158 C 247.43437497379512 205.39518955226723, 248.5521495726032 210.25006315410437, 249.0028752097118 215.05502138795725 C 249.9043264831478 224.66493785507254, 249.00000000072285 234.3478961410834, 249.0 244.0 L 249.0 310.0" fill="lightpink"/>
85
85
  <path d="M 348.0 310.0 L 348.0 244.0 C 348.0 234.22834905515546, 347.1020924443995 224.4122681509689, 348.1841437241162 214.70071177642498 C 348.72516936379037 209.844933589686, 349.9808881723563 204.95096086504498, 352.7627804284738 200.93444919234338 C 354.15372655653243 198.92619335599267, 355.9258845680747 197.1637763205271, 358.02493950620254 195.91405995185806 C 360.1239944443304 194.664343583189, 362.5577933103683 193.94127078651735, 365.0 194.0 C 367.4123285564103 194.0580107160999, 369.7799689227372 194.8771079083559, 371.8018790488464 196.19414008305478 C 373.82378917495555 197.51117225775369, 375.50829248740763 199.31323878994004, 376.8169866495369 201.3405557107158 C 379.4343749737951 205.39518955226723, 380.55214957260324 210.25006315410437, 381.00287520971176 215.05502138795725 C 381.90432648314777 224.66493785507254, 381.0000000007229 234.3478961410834, 381.0 244.0 L 381.0 310.0" fill="lightpink"/>
@@ -98,37 +98,37 @@
98
98
  <path d="M 282.5 623.5 L 282.5 640.0" fill="none" stroke="black" stroke-linecap="round" stroke-width="6.8"/>
99
99
  <path d="M 332 623.5 L 332 640.0" fill="none" stroke="black" stroke-linecap="round" stroke-width="6.8"/>
100
100
  <path d="M 315.5 623.5 L 315.5 640.0" fill="none" stroke="black" stroke-linecap="round" stroke-width="6.8"/>
101
- <path d="M -3.0 800.0 L 6.0 800.0 C 13.619618391807467 777.1235874872226, 19.639129829385894 753.7143763410843, 24.0 730.0 C 28.250792053862654 706.8842275580073, 30.92569807361966 683.4787998851335, 32.0 660.0 C 26.490015613684143 683.3710137571425, 20.823178789110912 706.7050477406792, 15.0 730.0 C 9.15721514001531 753.3733840749214, 3.1570337575635863 776.707422784456, -3.0 800.0 Z" fill="green"/>
102
- <path d="M 10.0 800.0 L 19.0 800.0 C 25.31061552431832 777.0360042317283, 29.992877496189323 753.6246943723733, 33.0 730.0 C 35.95344924199414 706.7969759801904, 37.29108068486698 683.388425729916, 37.0 660.0 C 32.827209303842416 683.3627678192187, 28.49373932678172 706.6968369264686, 24.0 730.0 C 19.494308439877283 753.365143714237, 14.827493834593277 776.6992167406571, 10.0 800.0 Z" fill="green"/>
103
- <path d="M 31.0 800.0 L 40.0 800.0 C 43.99229486458677 781.9290795637934, 46.33847130160414 763.4948361300854, 47.0 745.0 C 47.657198780140355 726.6262185252702, 46.65176644942786 708.1932924622078, 44.0 690.0 C 42.16424601075577 708.350755076835, 40.16413906463903 726.6850687495718, 38.0 745.0 C 35.83127015555 763.3537826431125, 33.49781152183262 781.6881004794634, 31.0 800.0 Z" fill="green"/>
104
- <path d="M 49.0 800.0 L 58.0 800.0 C 61.321354894625365 784.2304837398933, 63.0 768.1154907282969, 63.0 752.0 C 63.0 735.8845092717031, 61.32135489462537 719.7695162601067, 58.0 704.0 C 56.831762909450156 720.0131865509658, 55.49833498810035 736.0143216071634, 54.0 752.0 C 52.49876146851097 768.0166561856397, 50.83197610813377 784.0177956452608, 49.0 800.0 Z" fill="green"/>
105
- <path d="M 70.0 800.0 L 79.0 800.0 C 78.44002102166998 779.5592014261948, 76.43336226267749 759.1581707097711, 73.0 739.0 C 69.4811902304697 718.3401445572815, 64.46370413225974 697.9357010912277, 58.0 678.0 L 64.0 739.0 L 70.0 800.0 Z" fill="green"/>
106
- <path d="M 83.0 800.0 L 92.0 800.0 C 94.14035284163282 787.131671906484, 94.81275808404492 774.0197696794481, 94.0 761.0 C 93.17528498160821 747.7886892773749, 90.8212707945736 734.6734673781822, 87.0 722.0 L 85.0 761.0 L 83.0 800.0 Z" fill="green"/>
107
- <path d="M 103.0 800.0 L 112.0 800.0 C 112.79281673946504 782.6514875360283, 112.12300435342014 765.2363654988608, 110.0 748.0 C 107.83150727095637 730.3943209540741, 104.14678941926351 712.9756547460717, 99.0 696.0 L 101.0 748.0 L 103.0 800.0 Z" fill="green"/>
108
- <path d="M 125.0 800.0 L 134.0 800.0 C 140.45889096399367 782.4483717344449, 145.48113269465384 764.3683015040683, 149.0 746.0 C 152.4736676086353 727.8676385257863, 154.48233711507018 709.4548347167997, 155.0 691.0 C 150.04341203782272 709.3451361816168, 145.04339335556043 727.6785380165786, 140.0 746.0 C 135.0419018924665 764.0116044066039, 130.04188383677987 782.0116694070757, 125.0 800.0 Z" fill="green"/>
109
- <path d="M 144.0 800.0 L 153.0 800.0 C 151.76329138229502 778.1891105331488, 149.0889206078934 756.4598479911357, 145.0 735.0 C 140.8050391422152 712.9836218480149, 135.1211408461777 691.2510695396362, 128.0 670.0 L 136.0 735.0 L 144.0 800.0 Z" fill="green"/>
110
- <path d="M 157.0 800.0 L 166.0 800.0 C 173.88426951960093 786.0700240337065, 180.26634944611618 771.2904705196713, 185.0 756.0 C 189.53184605548242 741.3613912302444, 192.5530083705393 726.25557965496, 194.0 711.0 C 188.2049490731321 726.0809007702342, 182.20420503242957 741.0827608719906, 176.0 756.0 C 169.86485498089206 770.7511929178154, 163.53075365846422 785.4196380855429, 157.0 800.0 Z" fill="green"/>
111
- <path d="M 172.0 800.0 L 181.0 800.0 C 181.41030087417835 787.2743972014459, 180.40207790262647 774.503572895122, 178.0 762.0 C 175.48832837901173 748.9259572442269, 171.45236390804806 736.1454030861753, 166.0 724.0 L 169.0 762.0 L 172.0 800.0 Z" fill="green"/>
112
- <path d="M 197.0 800.0 L 206.0 800.0 C 205.59875184025123 778.5568995870894, 203.59129564098143 757.1440334615451, 200.0 736.0 C 196.31415524377195 714.299301240917, 190.95987757230847 692.882190555063, 184.0 672.0 C 186.49837817866282 693.3148505949508, 188.83180466971592 714.6490356560078, 191.0 736.0 C 193.1647925273601 757.3174557744992, 195.1648721263956 778.6516381642112, 197.0 800.0 Z" fill="green"/>
113
- <path d="M 211.0 800.0 L 220.0 800.0 C 226.896807035696 788.0701991659873, 232.28633467308677 775.2700710271843, 236.0 762.0 C 239.553251250212 749.3031379198251, 241.57254120298202 736.1777532268202, 242.0 723.0 C 237.2055411305848 736.0778157703282, 232.20471120075715 749.0799735878802, 227.0 762.0 C 221.86431352964314 774.7486813930665, 216.5301182630499 787.4173951512254, 211.0 800.0 Z" fill="green"/>
114
- <path d="M 225.0 800.0 L 234.0 800.0 C 230.21652648191687 784.9554771391887, 225.1940060096394 770.2227504205081, 219.0 756.0 C 212.32065774173836 740.6628147010889, 204.27875393314665 725.9193243853375, 195.0 712.0 L 210.0 756.0 L 225.0 800.0 Z" fill="green"/>
115
- <path d="M 249.0 800.0 L 258.0 800.0 C 263.63393736902316 782.4157178730906, 267.65622377465934 764.3154290477278, 270.0 746.0 C 272.3318409388736 727.7778391960953, 273.00218425205617 709.3433980835748, 272.0 691.0 C 268.52983084679346 709.3719037679022, 264.86288376931014 727.7066391553186, 261.0 746.0 C 257.19028254329874 764.0415824844151, 253.18998500321118 782.0429214148093, 249.0 800.0 Z" fill="green"/>
116
- <path d="M 269.0 800.0 L 278.0 800.0 C 284.63536412400674 778.4147912439873, 289.6540004058867 756.3327916037157, 293.0 734.0 C 296.27201032479326 712.1610479459196, 297.9446172930807 690.0826359645255, 298.0 668.0 C 293.492152133859 690.0332898733518, 288.82532349798055 712.034053442493, 284.0 734.0 C 279.1593299894601 756.0358072984218, 274.15915534541256 778.0365757322311, 269.0 800.0 Z" fill="green"/>
117
- <path d="M 282.0 800.0 L 291.0 800.0 C 298.6669487792081 788.060841543719, 305.0488425025 775.2970540971351, 310.0 762.0 C 314.57794975639104 749.7052496117453, 317.93313094398707 736.9555610988805, 320.0 724.0 L 301.0 762.0 L 282.0 800.0 Z" fill="green"/>
118
- <path d="M 306.0 800.0 L 315.0 800.0 C 313.70767220480457 778.8557862277403, 311.03343105435147 757.7961371679224, 307.0 737.0 C 302.79397079141177 715.3139567342492, 297.10980090061076 693.9147289100572, 290.0 673.0 C 292.6456710202367 694.3359507943206, 295.31233940870436 715.6692979020618, 298.0 737.0 C 300.646317001208 758.0025774059013, 303.312985337111 779.0025905511376, 306.0 800.0 Z" fill="green"/>
119
- <path d="M 324.0 800.0 L 333.0 800.0 C 332.86402884355545 786.2041851722593, 331.1835380095554 772.424160333459, 328.0 759.0 C 324.63420200757844 744.8072962330953, 319.5878403758274 731.0139077729758, 313.0 718.0 C 315.1638801595634 731.6420143440969, 317.16407210552484 745.3099926415, 319.0 759.0 C 320.8300372065997 772.6460821255948, 322.4968628034204 786.3140520195248, 324.0 800.0 Z" fill="green"/>
120
- <path d="M 338.0 800.0 L 347.0 800.0 C 346.29296440421166 786.8445486406364, 344.2798994068314 773.7596261576647, 341.0 761.0 C 337.4480224667035 747.1819221190472, 332.4097119719785 733.7464274664471, 326.0 721.0 C 327.9746249555293 734.3371231336199, 329.9746297838082 747.6704886554795, 332.0 761.0 C 333.97586406679386 774.0036979328551, 335.9758686619221 787.0037278011886, 338.0 800.0 Z" fill="green"/>
121
- <path d="M 360.0 800.0 L 369.0 800.0 C 369.57215152350034 779.9625987827138, 368.56804116351145 759.8803915829355, 366.0 740.0 C 363.33364380566996 719.3585063993343, 358.9811083929037 698.9350710009697, 353.0 679.0 C 354.4924842750426 699.3224800462249, 355.82587208361656 719.6566441269778, 357.0 740.0 C 358.1538441545606 759.9919122360488, 359.1538836115405 779.9927013756461, 360.0 800.0 Z" fill="green"/>
122
- <path d="M 373.0 800.0 L 382.0 800.0 C 385.3062188008659 775.4807263425715, 386.97781061207473 750.7411675366811, 387.0 726.0 C 387.0224883415073 700.9254992193587, 385.35076288458794 675.8496173655683, 382.0 651.0 C 380.8450802712293 676.0090898726719, 379.51170167788126 701.0099384979474, 378.0 726.0 C 376.5071754236209 750.6780026253437, 374.8404535860592 775.3454858212563, 373.0 800.0 Z" fill="green"/>
123
- <path d="M 396.0 800.0 L 405.0 800.0 C 411.1210557462802 784.1297338127071, 415.81283123280014 767.7085196098874, 419.0 751.0 C 422.08017876810345 734.85236832186, 423.7552206227227 718.4369581465916, 424.0 702.0 L 410.0 751.0 L 396.0 800.0 Z" fill="green"/>
124
- <path d="M 413.0 800.0 L 422.0 800.0 C 430.2769773873734 775.8066140017564, 436.9628173355184 751.0690061936198, 442.0 726.0 C 446.9067307243624 701.5802258697473, 450.2491604486008 676.8462459103829, 452.0 652.0 C 445.8223344539626 676.7062867449591, 439.4888331435401 701.3736076381834, 433.0 726.0 C 426.4895250410917 750.708527288835, 419.8226803750056 775.3758525533535, 413.0 800.0 Z" fill="green"/>
125
- <path d="M 424.0 800.0 L 433.0 800.0 C 430.3162609977542 779.4369917778009, 426.30517713486836 759.0473154747979, 421.0 739.0 C 415.41358368996197 717.8899319864713, 408.39207524017957 697.1597641823518, 400.0 677.0 C 403.96816526149763 697.6728112740112, 407.96817158771626 718.3395106261409, 412.0 739.0 C 415.9691655201198 759.3393829463776, 419.96917165122176 779.6727474461454, 424.0 800.0 Z" fill="green"/>
126
- <path d="M 444.0 800.0 L 453.0 800.0 C 455.1550326677835 780.4214547510275, 455.82425018855827 760.6795378881706, 455.0 741.0 C 454.17043505576925 721.1935686793805, 451.8280581819353 701.4506778856376, 448.0 682.0 L 446.0 741.0 L 444.0 800.0 Z" fill="green"/>
127
- <path d="M 459.0 800.0 L 468.0 800.0 C 466.43711690808465 783.4458360320918, 463.42179042967416 767.0290585385239, 459.0 751.0 C 454.25166721045383 733.78722036819, 447.8810197356168 717.0223585923031, 440.0 701.0 C 443.4660092761499 717.6397649469702, 446.799483582996 734.3071364812006, 450.0 751.0 C 453.12704452766826 767.3096577915506, 456.12716564546446 783.6436505439964, 459.0 800.0 Z" fill="green"/>
128
- <path d="M 484.0 800.0 L 493.0 800.0 C 501.24941195188586 782.2949158219499, 507.94993319182197 763.8684824121257, 513.0 745.0 C 517.9084073084581 726.6607976707929, 521.2577311433148 707.9045841955951, 523.0 689.0 C 516.8702497122954 707.7349162033515, 510.5364153938667 726.4030594576677, 504.0 745.0 C 497.5312265865597 763.4044904282628, 490.86404342537145 781.7392441215304, 484.0 800.0 Z" fill="green"/>
129
- <path d="M 495.0 800.0 L 504.0 800.0 C 504.1626459571671 785.5797019837767, 502.81968501719473 771.1428718790734, 500.0 757.0 C 496.9844433814947 741.8746825835026, 492.2792319610345 727.0868752620563, 486.0 713.0 C 487.81804499983076 727.6489366369062, 489.4848301246496 742.3166457353119, 491.0 757.0 C 492.4776159504341 771.3194230695483, 493.8110394108424 785.6537252689376, 495.0 800.0 Z" fill="green"/>
130
- <path d="M 516.0 800.0 L 525.0 800.0 C 526.4577886651399 775.3620582360136, 526.4577886651399 750.6379417639864, 525.0 726.0 C 523.5118751566876 700.8493494950079, 520.504594120297 675.7886741917539, 516.0 651.0 L 516.0 726.0 L 516.0 800.0 Z" fill="green"/>
131
- <path d="M 535.0 800.0 L 544.0 800.0 C 544.5624307089917 781.2932395176947, 543.5577718121054 762.539606775818, 541.0 744.0 C 538.3332547994022 724.6705167535306, 533.9779751180299 705.5742904582831, 528.0 687.0 C 529.4919063340864 705.9884285751024, 530.8253016073061 724.9893112184841, 532.0 744.0 C 533.1529087127041 762.6580562866451, 534.1529534601948 781.3255582398067, 535.0 800.0 Z" fill="green"/>
132
- <path d="M 557.0 800.0 L 566.0 800.0 C 566.3678007293466 785.9468929808315, 565.3614626332959 771.8581596361225, 563.0 758.0 C 560.495817038892 743.3042911864092, 556.4673053421659 728.8687909398072, 551.0 715.0 C 551.9880153773412 729.3341661134095, 552.988015843406 743.6675061270034, 554.0 758.0 C 554.9885649857252 772.0008136576486, 555.9885654304684 786.0008198840519, 557.0 800.0 Z" fill="green"/>
133
- <path d="M 569.0 800.0 L 578.0 800.0 C 584.3097000637621 776.3587518690314, 588.9910832130134 752.2830671014527, 592.0 728.0 C 594.9990980419592 703.7961737886186, 596.3366086790426 679.3866046618472, 596.0 655.0 C 591.8601969012652 679.3672687797988, 587.5266810030168 703.7016272853473, 583.0 728.0 C 578.5221600922431 752.0362028962744, 573.8553010369884 776.0371923232984, 569.0 800.0 Z" fill="green"/>
101
+ <path d="M -4.0 800.0 L 5.0 800.0 C 5.774333378961338 776.9883225427111, 5.105923790541621 753.9281917422309, 3.0 731.0 C 0.8381697964931232 707.4631286076104, -2.8385988046762565 684.0655102365326, -8.0 661.0 C -7.3381949604396555 684.3334718990418, -6.671528274478851 707.6668059076701, -6.0 731.0 C -5.33805710522013 754.0001365972622, -4.671390419806195 777.0001372440429, -4.0 800.0 Z" fill="green"/>
102
+ <path d="M 18.0 800.0 L 27.0 800.0 C 27.129278527824564 787.2358864254982, 25.784178263275358 774.4574339122807, 23.0 762.0 C 19.97952449372586 748.4852856229086, 15.264378598701558 735.3502363439123, 9.0 723.0 C 10.815810415951741 735.9802987022312, 12.482623472440922 748.9814405428467, 14.0 762.0 C 15.474567012987968 774.6512688073682, 16.808010943223906 787.3189861446095, 18.0 800.0 Z" fill="green"/>
103
+ <path d="M 36.0 800.0 L 45.0 800.0 C 45.28305268840374 778.6065121744551, 43.94463052902876 757.1917576244554, 41.0 736.0 C 37.99148424738694 714.3484766559965, 33.30622516245653 692.9301494106003, 27.0 672.0 C 28.832567158489628 693.319939509078, 30.499301047416 714.6541332873356, 32.0 736.0 C 33.49905930869418 757.3225445001259, 34.83244630238516 778.6567363991816, 36.0 800.0 Z" fill="green"/>
104
+ <path d="M 52.0 800.0 L 61.0 800.0 C 57.79490000169323 781.0079673239492, 53.109397731400286 762.2659582427774, 47.0 744.0 C 40.55088712604147 724.7183569252276, 32.51490507210521 705.9677321327096, 23.0 688.0 C 28.156413027113928 706.6243013956688, 33.156647419578995 725.2918431275384, 38.0 744.0 C 42.82241167045039 762.627269548593, 47.48929521576542 781.294803729853, 52.0 800.0 Z" fill="green"/>
105
+ <path d="M 63.0 800.0 L 72.0 800.0 C 68.02170440088791 777.0427401801629, 62.675779137509 754.3225578108026, 56.0 732.0 C 49.07611663663821 708.8478280257233, 40.7216184306453 686.1235929054225, 31.0 664.0 L 47.0 732.0 L 63.0 800.0 Z" fill="green"/>
106
+ <path d="M 85.0 800.0 L 94.0 800.0 C 99.8082447726628 780.018676168812, 104.15694237435325 759.6132489608799, 107.0 739.0 C 109.83205406576658 718.4665310327508, 111.17007833056967 697.7271549283032, 111.0 677.0 C 106.70093494279156 697.6738321816734, 102.36759366848158 718.3405367206902, 98.0 739.0 C 93.69986151226313 759.3403887647432, 89.3665204813474 779.6737582175016, 85.0 800.0 Z" fill="green"/>
107
+ <path d="M 100.0 800.0 L 109.0 800.0 C 111.81985234404198 786.5332008784783, 113.16378552797335 772.7578857431818, 113.0 759.0 C 112.835778992071 745.205534202723, 111.15579190372401 731.4296400782777, 108.0 718.0 L 104.0 759.0 L 100.0 800.0 Z" fill="green"/>
108
+ <path d="M 124.0 800.0 L 133.0 800.0 C 136.80262546925437 784.5995859789168, 139.14977793964425 768.8401336777276, 140.0 753.0 C 140.85961222826398 736.9849220084768, 140.18890948846604 720.8880562533261, 138.0 705.0 C 135.69121373314334 721.0035669621606, 133.35787673897585 737.0035920650234, 131.0 753.0 C 128.69021212951787 768.6701613823722, 126.35687528315299 784.3368516365363, 124.0 800.0 Z" fill="green"/>
109
+ <path d="M 143.0 800.0 L 152.0 800.0 C 151.41253299148005 776.2421790287818, 149.40779812681419 752.5194831302356, 146.0 729.0 C 142.48240691482226 704.7227487817144, 137.46979451323733 680.6622092541066, 131.0 657.0 C 132.98591664247826 681.0011708393515, 134.98591710158587 705.0011763486432, 137.0 729.0 C 138.98630379060933 752.6678214319725, 140.98630423713988 776.3344933825839, 143.0 800.0 Z" fill="green"/>
110
+ <path d="M 155.0 800.0 L 164.0 800.0 C 168.30105918400423 783.3106218738365, 170.9843356843787 766.2047341839492, 172.0 749.0 C 173.02385124781685 731.6565841768122, 172.3529648671819 714.2135382803033, 170.0 697.0 C 167.85708718171674 714.3582576143074, 165.52356629519568 731.6929841998924, 163.0 749.0 C 160.5170959302877 766.0281478423891, 157.8502217690542 783.0294706202527, 155.0 800.0 Z" fill="green"/>
111
+ <path d="M 172.0 800.0 L 181.0 800.0 C 177.40823191156846 779.3544807608498, 172.39241737721446 758.9568349878101, 166.0 739.0 C 159.1964221587201 717.7595408289328, 150.8332303332353 697.0188251017304, 141.0 677.0 C 146.45258333385942 697.6356475903498, 151.78603516649605 718.3027734418166, 157.0 739.0 C 162.11510577806865 759.3047980833068, 167.11521269834682 779.6385662257713, 172.0 800.0 Z" fill="green"/>
112
+ <path d="M 189.0 800.0 L 198.0 800.0 C 197.50695569068117 782.5367684159564, 195.49693952232866 765.1166282902348, 192.0 748.0 C 188.30092822680118 729.8939858249017, 182.93770629820227 712.1283131864179, 176.0 695.0 C 178.48002000921184 712.6468795879244, 180.81346066171614 730.3143588140284, 183.0 748.0 C 185.1409240370242 765.316685623845, 187.14101222682527 782.6507832687878, 189.0 800.0 Z" fill="green"/>
113
+ <path d="M 216.0 800.0 L 225.0 800.0 C 229.80497402163948 784.0136398902686, 233.15658229358485 767.5907593577364, 235.0 751.0 C 236.84341770641515 734.4092406422636, 237.17857853360968 717.6511992825368, 236.0 701.0 C 232.69966774500804 717.6732442356272, 229.3663257014025 734.339954453655, 226.0 751.0 C 222.6983860264689 767.3397852895104, 219.36504431452423 783.6731596780393, 216.0 800.0 Z" fill="green"/>
114
+ <path d="M 234.0 800.0 L 243.0 800.0 C 248.6308905400127 785.8444722700285, 252.66457623310234 771.0542913953665, 255.0 756.0 C 257.2551379311124 741.4632362516338, 257.9270392078334 726.6814081637727, 257.0 712.0 C 253.48904199804036 726.7050093959216, 249.82210030223402 741.372776179147, 246.0 756.0 C 242.1565902048973 770.7087755063274, 238.1562868182008 785.3765545908811, 234.0 800.0 Z" fill="green"/>
115
+ <path d="M 243.0 800.0 L 252.0 800.0 C 252.47582531820825 774.9700152859867, 251.4735051665537 749.9120114946228, 249.0 725.0 C 246.4970007855739 699.7909379596354, 242.4874974828197 674.7315423174216, 237.0 650.0 L 240.0 725.0 L 243.0 800.0 Z" fill="green"/>
116
+ <path d="M 263.0 800.0 L 272.0 800.0 C 275.99330326242756 780.5779815446368, 278.3377987400911 760.8172339471873, 279.0 741.0 C 279.6584297782188 721.2956325474955, 278.65370036337026 701.5359540554746, 276.0 682.0 C 274.1645590936639 701.6829380258969, 272.16446579471346 721.3505221322431, 270.0 741.0 C 267.8315375093927 760.6857607176413, 265.4980949249313 780.3533482152445, 263.0 800.0 Z" fill="green"/>
117
+ <path d="M 279.0 800.0 L 288.0 800.0 C 284.81874717204454 775.0829682003035, 280.1408806342324 750.3571022147252, 274.0 726.0 C 267.5787771136069 700.5309522358176, 259.5577838409382 675.465348258728, 250.0 651.0 C 255.13116352286298 675.9735285676335, 260.13125534124526 700.9739876595448, 265.0 726.0 C 269.79410030054146 750.6423301470519, 274.4608500567996 775.3094360015593, 279.0 800.0 Z" fill="green"/>
118
+ <path d="M 303.0 800.0 L 312.0 800.0 C 315.6322761506841 781.894098371603, 317.6429200717585 763.4631957617544, 318.0 745.0 C 318.3623632146922 726.2636263184284, 317.021722284005 707.4946532888075, 314.0 689.0 C 312.5179005917744 707.6825330885416, 310.85112536241485 726.3504156573682, 309.0 745.0 C 307.1783915831476 763.3522091475317, 305.1782654294018 781.686698890201, 303.0 800.0 Z" fill="green"/>
119
+ <path d="M 320.0 800.0 L 329.0 800.0 C 333.4822563609055 777.8993696264265, 336.4911216210814 755.5000393562284, 338.0 733.0 C 339.5177800671637 710.3672207631759, 339.5177800671637 687.6327792368241, 338.0 665.0 C 335.02215800289696 687.6695919974231, 332.02215609181866 710.336273103348, 329.0 733.0 C 326.02151665685415 755.3362165964971, 323.0215148006102 777.6695637485353, 320.0 800.0 Z" fill="green"/>
120
+ <path d="M 334.0 800.0 L 343.0 800.0 C 346.13906134079525 779.8232885792443, 347.811579484495 759.4185672261074, 348.0 739.0 C 348.19127119671396 718.2725129848266, 346.85311391205886 697.5310750726719, 344.0 677.0 C 342.34701467281377 697.6677669619522, 340.6803475192262 718.334439666438, 339.0 739.0 C 337.34657831270783 759.3344160922683, 335.6799111746001 779.6677551771832, 334.0 800.0 Z" fill="green"/>
121
+ <path d="M 360.0 800.0 L 369.0 800.0 C 377.1967999370767 786.4469279109295, 383.9159088997879 772.0008436411005, 389.0 757.0 C 393.8364456140676 742.7298457078617, 397.1935060758086 727.9587796762011, 399.0 713.0 C 392.8714428961749 727.7539665352361, 386.537289772917 742.4225316627808, 380.0 757.0 C 373.5313795052103 771.4243430724057, 366.8638679357881 785.7594929466634, 360.0 800.0 Z" fill="green"/>
122
+ <path d="M 373.0 800.0 L 382.0 800.0 C 385.82768176916306 781.2235589976594, 388.17070398467376 762.1446638142153, 389.0 743.0 C 389.82360717330766 723.9866656096883, 389.15421011938963 704.908849573024, 387.0 686.0 L 380.0 743.0 L 373.0 800.0 Z" fill="green"/>
123
+ <path d="M 393.0 800.0 L 402.0 800.0 C 398.58641653339356 781.3777608434797, 393.90537742130135 762.9879643316889, 388.0 745.0 C 381.70007380267356 725.810227755975, 374.0065336164198 707.0781299111832, 365.0 689.0 C 369.62643581298664 707.676693682546, 374.29311692555484 726.3434181328187, 379.0 745.0 C 383.62781793454286 763.3431928936086, 388.29449856586916 781.6765810881047, 393.0 800.0 Z" fill="green"/>
124
+ <path d="M 410.0 800.0 L 419.0 800.0 C 425.1248670427889 783.7882797792562, 429.81575866377756 767.0350954185824, 433.0 750.0 C 436.14252485958013 733.188079926843, 437.8176179744739 716.1021301549271, 438.0 699.0 C 433.3770774531222 716.0119678607832, 428.71039019662396 733.0120428665981, 424.0 750.0 C 419.3754383019919 766.6784178395329, 414.7087517889968 783.3451553859439, 410.0 800.0 Z" fill="green"/>
125
+ <path d="M 431.0 800.0 L 440.0 800.0 C 444.660284191671 776.5834890892521, 447.6701891149458 752.8386835834176, 449.0 729.0 C 450.3193678864224 705.3485214867493, 449.9849512289668 681.6049388074001, 448.0 658.0 C 445.4975486893221 681.6847853699868, 442.83079647542826 705.3522112682949, 440.0 729.0 C 437.1644939931141 752.6871310178434, 434.1643974319894 776.3545594444937, 431.0 800.0 Z" fill="green"/>
126
+ <path d="M 446.0 800.0 L 455.0 800.0 C 459.4913043900111 780.5997077792426, 462.50289853666294 760.8570350400805, 464.0 741.0 C 465.47994893009883 721.370470217164, 465.47994893009883 701.629529782836, 464.0 682.0 L 455.0 741.0 L 446.0 800.0 Z" fill="green"/>
127
+ <path d="M 466.0 800.0 L 475.0 800.0 C 481.9495917192283 782.189294863208, 487.311057125812 763.7592575280764, 491.0 745.0 C 494.62698976118656 726.5557905605215, 496.637187741598 707.7939427433482, 497.0 689.0 C 492.20096272171685 707.7197245219585, 487.20057711389705 726.3878307911524, 482.0 745.0 C 476.8616912078978 763.3893192219682, 471.52795635029963 781.724032794962, 466.0 800.0 Z" fill="green"/>
128
+ <path d="M 481.0 800.0 L 490.0 800.0 C 493.6606595094386 779.2025714291882, 495.6690431588235 758.1145431106463, 496.0 737.0 C 496.3301277165287 715.9383537808593, 494.991233264212 694.8507661568715, 492.0 674.0 C 490.4986566912131 695.0126845104069, 488.83192118970976 716.0135518293489, 487.0 737.0 C 485.1655578170309 758.0153286130374, 483.165474987725 779.0161983207489, 481.0 800.0 Z" fill="green"/>
129
+ <path d="M 503.0 800.0 L 512.0 800.0 C 513.4471024243218 779.3671202725731, 513.4471024243218 758.6328797274269, 512.0 738.0 C 510.5145632958357 716.8205476374, 507.5042274255303 695.748196545262, 503.0 675.0 L 503.0 738.0 L 503.0 800.0 Z" fill="green"/>
130
+ <path d="M 521.0 800.0 L 530.0 800.0 C 527.7367295441888 777.7965634513642, 524.0601830440605 755.7372844505942, 519.0 734.0 C 513.7843089222405 711.594691817174, 507.0985575481589 689.531712282705, 499.0 668.0 L 510.0 734.0 L 521.0 800.0 Z" fill="green"/>
131
+ <path d="M 538.0 800.0 L 547.0 800.0 C 550.4970802015902 774.8146307621016, 552.5017521700214 749.422119161973, 553.0 724.0 C 553.4970878122615 698.6370684688816, 552.4947626951603 673.2448321689834, 550.0 648.0 L 544.0 724.0 L 538.0 800.0 Z" fill="green"/>
132
+ <path d="M 549.0 800.0 L 558.0 800.0 C 556.6670569345487 782.4962359788486, 553.9899429092509 765.094994814413, 550.0 748.0 C 545.7784185784739 729.9125450787063, 540.0868975422612 712.1683912599258, 533.0 695.0 C 535.6413725690811 712.6704722988654, 538.3080428794605 730.3371631051283, 541.0 748.0 C 543.6423075294526 765.337069213591, 546.3089777066645 782.670425365468, 549.0 800.0 Z" fill="green"/>
133
+ <path d="M 569.0 800.0 L 578.0 800.0 C 579.9564010350977 775.0568019783898, 580.2906718304564 749.9864923264843, 579.0 725.0 C 577.6830595552927 699.5049659102908, 574.6742753631747 674.0974549546274, 570.0 649.0 C 570.1699897966374 674.3329531146794, 570.1699897966374 699.6670468853206, 570.0 725.0 C 569.8322320331857 750.0018420018185, 569.4988889539477 775.0025729446766, 569.0 800.0 Z" fill="green"/>
134
134
  </svg>
data/examples/circles.png CHANGED
Binary file
data/examples/circles.svg CHANGED
@@ -3,9 +3,9 @@
3
3
  width="280"
4
4
  height="240">
5
5
 
6
- <path d="M 107.32605871909354 3.213854950739601 L 103.20529716630207 12.755462087107755 L 101.93902017190938 28.06060997603223 L 92.97764858882513 36.8124552684678 L 87.63066800438637 48.17536741017153 L 84.57043208149139 65.88770245216654 L 73.27563008066235 72.43673712508455 L 60.94155026551145 75.97650033511655 L 50.693886161849 83.62355027400157 L 51.67266680443291 94.64031839784678 L 29.2606295122668 97.6170037554651 L 18.53827293787034 97.24890030705471 L 7.152611267316113 99.315955137939 L -5.325935973808309 101.56095892033 L -20.303782529031825 91.40606161014628 L -30.034921691076907 94.60695699518007 L -42.811954710970426 91.45493569246251 L -51.68452434113604 85.06287746578955 L -63.182304816945795 85.03169360075316 L -75.48185006702485 74.95992700204316 L -81.61621080339438 62.71419207337936 L -88.35320285233777 50.040291910921034 L -90.02093671742247 39.50649589724576 L -96.85831611286311 24.86898871648548 L -100.26422921629496 19.453706171656147 L -95.09209689547723 6.317633031176731 L -99.38856470496975 -15.528091713420514 L -96.74238611294302 -25.86224610262392 L -93.97343989214419 -36.90410503788443 L -91.38463193407715 -49.55658238785618 L -78.77159551483302 -64.3876835688435 L -70.40354017268403 -62.997298883584364 L -67.8604630384683 -79.88708667384768 L -49.59710547461526 -84.09338172992496 L -46.08588791669315 -97.67257487941416 L -30.08910008432543 -90.17212527494615 L -18.738131458572465 -98.22872507286887 L -6.872666629062371 -104.7673099510438 L 5.9866739249674 -89.80694800223836 L 18.738131458572514 -98.22872507286885 L 27.522664750215696 -87.8542983363593 L 40.678021572606575 -91.1074861463073 L 59.582630451387814 -84.45705271789828 L 62.270890069443695 -75.69682749232837 L 74.48014997373919 -71.00288671359885 L 85.71598639428115 -51.17440522113871 L 83.29221431676223 -50.66088940772869 L 88.61361880541497 -39.252792140604285 L 94.10353547619077 -16.300956057594895 L 90.71204394538763 -17.802076008407404"/>
6
+ <path d="M 108.94055427126249 -1.032709699097504 L 94.36084016597377 0.8239805871561963 L 107.18561409653948 8.056281847302913 L 97.27079794438174 25.095489064722486 L 95.17641401446326 25.454513629322662 L 93.1865662101554 26.58647817948413 L 85.63035887810123 28.120133769781653 L 93.92787998967118 34.36854460596847 L 92.63375433734402 45.89121730847506 L 88.28338214977336 40.975740539815455 L 80.95890980353656 48.356768033668786 L 86.84160009372025 47.01667311815419 L 78.8692713164549 61.60940221054669 L 81.65683834700866 57.23766041630591 L 71.5927607063218 65.84884571142757 L 73.02695438662678 67.03372322596785 L 63.19208977741891 67.92569034824766 L 71.31898361952544 80.8807988966213 L 63.593932047468115 77.15291937025297 L 67.6909624165038 81.5299356494068 L 57.24733271447241 88.7573666882797 L 45.56861253990675 79.05615372539197 L 42.653972979999786 88.13323856338243 L 43.3380196986322 90.13260825163869 L 38.58159385584845 91.19139191115217 L 38.9143074010509 87.34486847435053 L 30.630446213574324 95.92165485717963 L 25.911963022851154 95.08027257721236 L 16.538053425609547 99.70041257977587 L 24.1072611668821 100.26991958461556 L 14.187408306401128 99.97967924047657 L 3.640913769912974 93.03277805986002 L -6.749912592990437 107.37825724592123 L -6.028183131739397 104.79074911789483 L -15.019168379445475 100.8804144025693 L -17.92777228291034 97.55440014493801 L -23.635537602930473 106.26149341432138 L -25.246379986260916 94.86737439177945 L -33.816135322035315 86.376996725093 L -39.71755023031029 98.44320266150312 L -38.66191401044673 91.16728982885962 L -43.3380196986322 90.13260825163869 L -47.57661482916378 84.92397998523226 L -56.134113735591555 79.98806278457181 L -63.470944717326546 80.34266548823663 L -54.843173142273216 79.5993335792493 L -57.13042634732648 74.46533791767585 L -67.37168528119396 77.00518162144115 L -63.32045720456794 67.60014278624634 L -80.32260287131822 60.809276913841764 L -76.61612016523081 57.61799307409434 L -82.15629778884201 62.02124088868105 L -81.32778043150586 54.67371488929444 L -85.5140632071465 51.837217259097834 L -89.40385243429117 48.99393281403293 L -95.42632146201913 49.33606941885323 L -94.93584696860002 39.987138145548045 L -92.60812959036545 43.271255366379165 L -103.31108729190471 35.968449854923826 L -100.61127551017582 34.24467580612231 L -97.33773651227678 25.103137897585533 L -93.5152487452668 9.256114243604268 L -106.02024045327296 16.40447815812305 L -102.54619328215185 6.498015649785762 L -100.0 0.0 L -93.44918565276467 -0.37031056976509635 L -99.42483433573263 -5.218668103802705 L -96.70408112112952 -17.320083879997174 L -89.70550788455975 -14.50812266946772 L -99.27850825863634 -30.465537309280386 L -100.54453851649527 -23.51329883508287 L -98.86183587771018 -35.178531824932634 L -86.30352096185212 -40.315552928279644 L -90.73837425173082 -42.542376843368366 L -86.7507631031089 -37.71851054864424 L -84.51473583444236 -51.80054571475834 L -84.88365318691936 -56.22919016562729 L -81.28680767200652 -66.71822987775272 L -81.23929795660851 -56.71632272089432 L -81.7233934184668 -60.86020280640438 L -70.01794887757895 -71.43107695094787 L -67.22306791242819 -74.00886506978958 L -64.96213012674106 -81.96208083727338 L -53.582108282097785 -75.10847118210131 L -61.93120265168953 -88.16164809102904 L -61.83602647998856 -85.66838159305851 L -49.05407533545893 -91.66839986085944 L -45.357582851578016 -99.92655355837098 L -48.70592922293998 -94.14092823679499 L -33.65801607499511 -89.99149215224043 L -34.08128146769034 -93.05006489680065 L -24.679242104442917 -98.82682580806204 L -21.54807433976259 -104.82434642724148 L -15.22047369505336 -98.84689167535035 L -2.426947587686052 -94.97837232036143 L -5.168711044710923 -100.8694382222506 L 3.1615098721475015 -105.09949559547941 L 4.274396108425822 -105.80660898749645 L 10.569521788236395 -96.50393238400424 L 24.21540967497614 -99.14876369639677 L 17.163831972115922 -95.29751023118162 L 26.294055096710718 -100.62717576563078 L 33.32604056791125 -98.96796261472176 L 31.804432606556155 -95.48522698198529 L 29.93344320008911 -91.47229882069972 L 42.390612194094 -87.28613341065648 L 44.33763772714119 -85.6800584774813 L 51.837217259097834 -85.5140632071465 L 58.30539938660643 -76.34002278888143 L 59.100018880314025 -75.17415918901554 L 64.4012948458365 -84.10620386837404 L 66.22528750401607 -73.94227485587685 L 79.90523914866122 -66.79746788721272 L 71.83245074624065 -65.158311100537 L 73.44164954895163 -54.30811079603872 L 78.21911919453619 -55.19223837453794 L 83.55724879064424 -57.787696667475714 L 88.12563172205328 -48.807413652929995 L 92.65516556702245 -51.338388147193754 L 95.5783028948941 -45.85683089688016 L 93.23396101071886 -47.84172827827459 L 97.0297729608427 -41.74270625292174 L 95.3259764734393 -28.738652741082106 L 92.86952693998313 -24.57895900070449 L 92.46535167196991 -24.471110005441137 L 102.26987307275961 -11.575861458753021 L 100.45137786474646 -13.057839386713983 L 102.12713923901042 -7.118666451917257 L 104.31309469210171 7.899190729243349 Z"/>
7
7
  <circle cx="200" cy="100" r="50"/>
8
8
  <circle cx="60" cy="140" r="30" fill="cyan" stroke="magenta" stroke-width="3"/>
9
- <path d="M 190 200 C 190 177.92339902024, 172.07660097976 160, 150 160 C 127.92339902024 160, 110 177.92339902024, 110 200 C 110 222.07660097976, 127.92339902024 240, 150 240 C 172.07660097976 240, 190 222.07660097976, 190 200" fill="magenta"/>
9
+ <path d="M 190 200 C 190 177.92339902024, 172.07660097976 160, 150 160 C 127.92339902024 160, 110 177.92339902024, 110 200 C 110 222.07660097976, 127.92339902024 240, 150 240 C 172.07660097976 240, 190 222.07660097976, 190 200 Z" fill="magenta"/>
10
10
  <path d="M 280 130 C 280 146.55745073482, 266.55745073482 160, 250 160 C 233.44254926518 160, 220 146.55745073482, 220 130 C 220 113.44254926518, 233.44254926518 100, 250 100 C 266.55745073482 100, 280 113.44254926518, 280 130 Z" fill="lightblue"/>
11
11
  </svg>
data/examples/rects.rb CHANGED
@@ -1,10 +1,10 @@
1
1
  # Simple rectangle 100x150
2
2
  rect(100, 200)
3
3
 
4
- rect(500, 10, at: [0, 200])
4
+ rect(500, 10)[0, 200]
5
5
 
6
- rect(300, 200, at: [100, 0], fill: 'yellow')
6
+ rect(300, 200, fill: "yellow")[100, 0]
7
7
 
8
- canvas << Rect.new(500, 30, at: [0, 410], fill: 'red').to_path
8
+ canvas << Rect.new(500, 30, fill: "red")[0, 410].to_path
9
9
 
10
- rect(20, 500, at: [400, 0])
10
+ rect(20, 500)[400, 0]
data/examples/squares.png CHANGED
Binary file
data/examples/squares.rb CHANGED
@@ -2,13 +2,13 @@
2
2
  square(100)
3
3
 
4
4
  # Square at position
5
- square(50, at: [200,100])
5
+ square(50)[200, 100]
6
6
 
7
7
  # Square with options
8
- square(30, at: [60,140], fill: 'cyan', stroke: 'magenta', stroke_width: 3).flip_y
8
+ square(30, fill: "cyan", stroke: "magenta", stroke_width: 3)[-60, 140].flip_y
9
9
 
10
10
  # Square with N node position
11
- square(40, at: [150, 200], fill: 'magenta').flip(:x)
11
+ square(40, fill: "magenta")[150, -200].flip(:x)
12
12
 
13
13
  # Square converted to a path and manually added to canvas
14
- canvas << Square.new(30, at: [250, 130], fill: 'lightblue').to_path
14
+ canvas << Square.new(30, fill: "lightblue")[250, 130].to_path
data/examples/squares.svg CHANGED
@@ -1,11 +1,11 @@
1
1
  <svg version="1.1"
2
2
  xmlns="http://www.w3.org/2000/svg"
3
3
  width="280"
4
- height="240">
4
+ height="200">
5
5
 
6
- <rect x="0" y="0" width="100" height="100"/>
7
- <rect x="200" y="100" width="50" height="50"/>
8
- <path d="M60 140 L 60 170 L 90 170 L 90 140 Z" fill="cyan" stroke="magenta" stroke-width="3"/>
9
- <rect x="150" y="200" width="40" height="40" fill="magenta"/>
10
- <path d="M250 130 L 250 160 L 280 160 L 280 130 Z" fill="lightblue"/>
6
+ <path d="M 0 0 L 0 100 L 100 100 L 100 0 Z"/>
7
+ <path d="M 200 100 L 200 150 L 250 150 L 250 100 Z"/>
8
+ <path d="M 60 140 L 60 170 L 30 170 L 30 140 Z" fill="cyan" stroke="magenta" stroke-width="3"/>
9
+ <path d="M 150 200 L 150 160 L 190 160 L 190 200 Z" fill="magenta"/>
10
+ <path d="M 250 130 L 250 160 L 280 160 L 280 130 Z" fill="lightblue"/>
11
11
  </svg>
@@ -1,7 +1,7 @@
1
- # @private
1
+ # @api private
2
2
  module Contracts
3
3
  class Coords
4
- def self.valid? val
4
+ def self.valid?(val)
5
5
  Maybe[[Num, Num]].valid? val
6
6
  end
7
7
 
@@ -11,7 +11,7 @@ module Contracts
11
11
  end
12
12
 
13
13
  class Coord
14
- def self.valid? val
14
+ def self.valid?(val)
15
15
  Num.valid? val
16
16
  end
17
17
 
@@ -21,7 +21,7 @@ module Contracts
21
21
  end
22
22
 
23
23
  class PolySides
24
- def self.valid? val
24
+ def self.valid?(val)
25
25
  Num.valid?(val) && val >= 3
26
26
  end
27
27
 
@@ -1,4 +1,16 @@
1
1
  module VectorSalad
2
+ # All shapes must be added to the global canvas for export,
3
+ # and block transform shapes like {Union} or {Move} have an internal
4
+ # canvas that shapes must be added to.
5
+ #
6
+ # In most cases you'll want to use the DSL which abstracts away the canvas
7
+ # so you don't have to think about it.
8
+ #
9
+ # @example Manually adding a circle to a canvas:
10
+ # canvas << Circle.new(100)
11
+ #
12
+ # @example Implicitly adding a circle to a canvas using DSL:
13
+ # circle(100)
2
14
  class Canvas
3
15
  include Enumerable
4
16
 
@@ -6,10 +18,12 @@ module VectorSalad
6
18
  @canvas = []
7
19
  end
8
20
 
21
+ # Add a shape to the canvas
9
22
  def <<(shape)
10
23
  @canvas << shape
11
24
  end
12
25
 
26
+ # Loop over the shapes in the canvas.
13
27
  def each(&block)
14
28
  @canvas.each do |shape|
15
29
  shape = shape.shape if shape.class == VectorSalad::ShapeProxy
@@ -20,6 +34,9 @@ module VectorSalad
20
34
  end
21
35
  end
22
36
 
37
+ # Access a specific shape in the canvas.
38
+ # Often used to get the first shape [0] for situations where only
39
+ # a single shape is allowed.
23
40
  def [](i)
24
41
  @canvas[i].class==VectorSalad::ShapeProxy ? @canvas[i].shape : @canvas[i]
25
42
  end
@@ -1,41 +1,42 @@
1
- require 'vector_salad/shape_proxy'
1
+ require "vector_salad/shape_proxy"
2
2
 
3
3
  module VectorSalad
4
+ # @api private
4
5
  module DSL
5
6
  def method_missing(name, *args, **options, &block)
6
- begin
7
- #This automatic require doesn't work properly
8
- #require "vector_salad/standard_shapes/#{name}.rb"
7
+ # This automatic require doesn't work properly
8
+ # require "vector_salad/standard_shapes/#{name}.rb"
9
9
 
10
- ns = VectorSalad::StandardShapes
11
- shape_string = name.to_s.split('_').collect(&:capitalize).join
12
- shape_class = ns.const_get(shape_string)
10
+ ns = VectorSalad::StandardShapes
11
+ shape_string = name.to_s.split("_").collect(&:capitalize).join
12
+ shape_class = ns.const_get(shape_string)
13
13
 
14
- # No built in is_superclass_of? so implement it ourselves
15
- # inlined so it doesn't polute the namespace
16
- is_superclass_of_transform = false
17
- sub_class = shape_class
18
- while sub_class != Object
19
- sub_class = sub_class.superclass
20
- if sub_class == VectorSalad::StandardShapes::Transform
21
- is_superclass_of_transform = true
22
- break
23
- end
14
+ # No built in is_superclass_of? so implement it ourselves
15
+ # inlined so it doesn't polute the namespace
16
+ is_superclass_of_transform = false
17
+ sub_class = shape_class
18
+ while sub_class != Object
19
+ sub_class = sub_class.superclass
20
+ if sub_class == VectorSalad::StandardShapes::Transform
21
+ is_superclass_of_transform = true
22
+ break
24
23
  end
24
+ end
25
25
 
26
- if is_superclass_of_transform
27
- shape_instance = shape_class.new(*args, canvas: canvas, **options, &block)
28
- else
29
- shape_instance = shape_class.new(*args, **options, &block)
30
- end
26
+ if is_superclass_of_transform
27
+ shape_instance = shape_class.new(
28
+ *args, canvas: canvas, **options, &block
29
+ )
30
+ else
31
+ shape_instance = shape_class.new(*args, **options, &block)
32
+ end
31
33
 
32
- shape_proxy = VectorSalad::ShapeProxy.new(shape_instance)
34
+ shape_proxy = VectorSalad::ShapeProxy.new(shape_instance)
33
35
 
34
- canvas << shape_proxy
35
- shape_proxy
36
- rescue NameError # no shape available
37
- super
38
- end
36
+ canvas << shape_proxy
37
+ shape_proxy
38
+ rescue NameError # no shape available
39
+ super
39
40
  end
40
41
  end
41
42
  end
@@ -7,6 +7,7 @@ Dir.glob(File.expand_path("../standard_shapes/*.rb", __FILE__)).each do |file|
7
7
  end
8
8
 
9
9
  module VectorSalad
10
+ # @api private
10
11
  class ExportWithMagic
11
12
  include VectorSalad::DSL
12
13
  include VectorSalad::StandardShapes