vector_salad 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
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