lutaml 0.10.7 → 0.10.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop_todo.yml +2 -40
- data/lib/lutaml/uml_repository/static_site/generator.rb +30 -0
- data/lib/lutaml/version.rb +1 -1
- data/templates/static_site/assets/images/lutaml-full.svg +1 -0
- data/templates/static_site/assets/images/lutaml-icon.svg +1 -0
- data/templates/static_site/assets/scripts/ui/sidebar.js +57 -148
- data/templates/static_site/assets/styles/00-variables.css +128 -128
- data/templates/static_site/assets/styles/01-reset.css +20 -30
- data/templates/static_site/assets/styles/02-base.css +105 -110
- data/templates/static_site/assets/styles/03-layout.css +51 -101
- data/templates/static_site/assets/styles/04-components.css +636 -587
- data/templates/static_site/assets/styles/05-utilities.css +8 -74
- data/templates/static_site/assets/styles/06-diagrams.css +42 -293
- data/templates/static_site/components/content.liquid +225 -322
- data/templates/static_site/components/header.liquid +99 -119
- data/templates/static_site/components/sidebar.liquid +69 -39
- data/templates/static_site/multi_file.liquid +9 -6
- data/templates/static_site/single_file.liquid +9 -4
- metadata +3 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '051396a82ca3536e91e66975e0719e25868b3d5bd94e3af93ccc5537e10402fe'
|
|
4
|
+
data.tar.gz: 25f158495d42220c0179ddcf978a4f9f87931e97b55e1eff3ecd5fb5a8de16a4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4db9674d30585deac30dd924bdc5be7f2ddf4deb872dd1cc2627b6357df8f1f5a898a5615bf403107e058fbc3f247eddd89c5cf4404163af020c9fdb1339d5c6
|
|
7
|
+
data.tar.gz: 4f0d5e16b0eb6081da73709c3988e776c2af10c050f0fc78379af319c78fc242ea149f252e784561b159a0f200773d771a77fe1c6834c8e532ef8636be9cdfd8
|
data/.rubocop_todo.yml
CHANGED
|
@@ -1,44 +1,18 @@
|
|
|
1
1
|
# This configuration was generated by
|
|
2
2
|
# `rubocop --auto-gen-config`
|
|
3
|
-
# on 2026-05-07
|
|
3
|
+
# on 2026-05-07 10:38:32 UTC using RuboCop version 1.86.1.
|
|
4
4
|
# The point is for the user to remove these configuration records
|
|
5
5
|
# one by one as the offenses are removed from the code base.
|
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
|
8
8
|
|
|
9
|
-
# Offense count:
|
|
10
|
-
# This cop supports safe autocorrection (--autocorrect).
|
|
11
|
-
# Configuration parameters: EnforcedStyle, IndentationWidth.
|
|
12
|
-
# SupportedStyles: with_first_argument, with_fixed_indentation
|
|
13
|
-
Layout/ArgumentAlignment:
|
|
14
|
-
Exclude:
|
|
15
|
-
- 'lib/lutaml/uml_repository/static_site/generator.rb'
|
|
16
|
-
- 'spec/lutaml/uml_repository/static_site/serializers/diagram_serializer_spec.rb'
|
|
17
|
-
|
|
18
|
-
# Offense count: 6
|
|
19
|
-
# This cop supports safe autocorrection (--autocorrect).
|
|
20
|
-
# Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
|
|
21
|
-
# SupportedHashRocketStyles: key, separator, table
|
|
22
|
-
# SupportedColonStyles: key, separator, table
|
|
23
|
-
# SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
|
|
24
|
-
Layout/HashAlignment:
|
|
25
|
-
Exclude:
|
|
26
|
-
- 'spec/lutaml/uml_repository/static_site/serializers/diagram_serializer_spec.rb'
|
|
27
|
-
|
|
28
|
-
# Offense count: 175
|
|
9
|
+
# Offense count: 172
|
|
29
10
|
# This cop supports safe autocorrection (--autocorrect).
|
|
30
11
|
# Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
|
|
31
12
|
# URISchemes: http, https
|
|
32
13
|
Layout/LineLength:
|
|
33
14
|
Enabled: false
|
|
34
15
|
|
|
35
|
-
# Offense count: 3
|
|
36
|
-
# This cop supports safe autocorrection (--autocorrect).
|
|
37
|
-
# Configuration parameters: AllowInHeredoc.
|
|
38
|
-
Layout/TrailingWhitespace:
|
|
39
|
-
Exclude:
|
|
40
|
-
- 'spec/lutaml/uml_repository/static_site/serializers/diagram_serializer_spec.rb'
|
|
41
|
-
|
|
42
16
|
# Offense count: 1
|
|
43
17
|
Lint/BinaryOperatorWithIdenticalOperands:
|
|
44
18
|
Exclude:
|
|
@@ -270,12 +244,6 @@ RSpec/NoExpectationExample:
|
|
|
270
244
|
- 'spec/lutaml/qea/verification/comprehensive_equivalence_spec.rb'
|
|
271
245
|
- 'spec/lutaml/uml_repository/static_site/generator_spec.rb'
|
|
272
246
|
|
|
273
|
-
# Offense count: 6
|
|
274
|
-
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
275
|
-
RSpec/ReceiveMessages:
|
|
276
|
-
Exclude:
|
|
277
|
-
- 'spec/lutaml/uml_repository/static_site/serializers/diagram_serializer_spec.rb'
|
|
278
|
-
|
|
279
247
|
# Offense count: 12
|
|
280
248
|
RSpec/RepeatedExample:
|
|
281
249
|
Exclude:
|
|
@@ -300,12 +268,6 @@ RSpec/SpecFilePathFormat:
|
|
|
300
268
|
- 'spec/lutaml/parsers/serialize_xmi_to_liquid_spec.rb'
|
|
301
269
|
- 'spec/lutaml/uml_repository/web_ui/app_spec.rb'
|
|
302
270
|
|
|
303
|
-
# Offense count: 10
|
|
304
|
-
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
305
|
-
RSpec/VerifiedDoubleReference:
|
|
306
|
-
Exclude:
|
|
307
|
-
- 'spec/lutaml/uml_repository/static_site/serializers/diagram_serializer_spec.rb'
|
|
308
|
-
|
|
309
271
|
# Offense count: 3
|
|
310
272
|
Security/Eval:
|
|
311
273
|
Exclude:
|
|
@@ -317,10 +317,16 @@ module Lutaml
|
|
|
317
317
|
"apiMode" => false, # Static mode by default
|
|
318
318
|
}
|
|
319
319
|
|
|
320
|
+
images_dir = File.join(@options[:template_path], "assets", "images")
|
|
321
|
+
lutaml_icon = read_svg_asset(images_dir, "lutaml-icon.svg")
|
|
322
|
+
lutaml_full_logo = read_svg_asset(images_dir, "lutaml-full.svg")
|
|
323
|
+
|
|
320
324
|
{
|
|
321
325
|
"config" => JSON.generate(config_hash),
|
|
322
326
|
"data" => data,
|
|
323
327
|
"searchIndex" => search_index,
|
|
328
|
+
"lutamlIcon" => lutaml_icon,
|
|
329
|
+
"lutamlFullLogo" => lutaml_full_logo,
|
|
324
330
|
"buildInfo" => {
|
|
325
331
|
"timestamp" => Time.now.utc.iso8601,
|
|
326
332
|
"generator" => "LutaML Static Site Generator v1.0",
|
|
@@ -334,6 +340,13 @@ module Lutaml
|
|
|
334
340
|
puts " ✓ #{File.basename(path)} (#{File.size(path) / 1024}KB)"
|
|
335
341
|
end
|
|
336
342
|
|
|
343
|
+
def read_svg_asset(images_dir, filename)
|
|
344
|
+
path = File.join(images_dir, filename)
|
|
345
|
+
return "" unless File.exist?(path)
|
|
346
|
+
|
|
347
|
+
File.read(path).strip
|
|
348
|
+
end
|
|
349
|
+
|
|
337
350
|
def generate_assets(output_dir) # rubocop:disable Metrics/MethodLength
|
|
338
351
|
assets_dir = File.join(output_dir, "assets")
|
|
339
352
|
|
|
@@ -348,6 +361,23 @@ module Lutaml
|
|
|
348
361
|
js_path = File.join(assets_dir, "app.js")
|
|
349
362
|
File.write(js_path, js_content)
|
|
350
363
|
puts " ✓ app.js (#{File.size(js_path) / 1024}KB)"
|
|
364
|
+
|
|
365
|
+
# Copy image assets
|
|
366
|
+
copy_image_assets(assets_dir)
|
|
367
|
+
end
|
|
368
|
+
|
|
369
|
+
def copy_image_assets(assets_dir)
|
|
370
|
+
images_src = File.join(@options[:template_path], "assets", "images")
|
|
371
|
+
return unless Dir.exist?(images_src)
|
|
372
|
+
|
|
373
|
+
images_dest = File.join(assets_dir, "images")
|
|
374
|
+
FileUtils.mkdir_p(images_dest)
|
|
375
|
+
Dir.glob(File.join(images_src, "*")).each do |src_file|
|
|
376
|
+
next if File.directory?(src_file)
|
|
377
|
+
|
|
378
|
+
dest_file = File.join(images_dest, File.basename(src_file))
|
|
379
|
+
FileUtils.cp(src_file, dest_file)
|
|
380
|
+
end
|
|
351
381
|
end
|
|
352
382
|
|
|
353
383
|
def build_css
|
data/lib/lutaml/version.rb
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="3400" height="900" viewBox="0 0 3400 900"><path d="m1308.91,694.2h-332.56V243.03h89.7v373.76h242.86v77.41Z" style="fill:#2d4087; stroke-width:0px;"/><path d="m1562.39,375.26h85.05v187.71c0,80.73-60.8,137.88-150.83,137.88s-149.17-56.48-149.17-135.88v-189.7h85.38v179.07c0,40.53,26.25,68.11,63.79,68.11,39.54,0,65.78-27.58,65.78-68.11v-179.07Z" style="fill:#2d4087; stroke-width:0px;"/><path d="m1833.82,446.02v131.23c0,33.22,18.6,47.84,47.18,47.84,15.95,0,36.21-2.66,54.15-7.64l7.97,70.76c-19.6,7.64-51.16,12.62-77.08,12.62-70.1,0-117.28-36.21-117.28-111.3v-143.52h-53.82v-70.76h54.15v-102.33h82.72v102.33h92.36v70.76h-90.37Z" style="fill:#2d4087; stroke-width:0px;"/><path d="m1970.37,534.06c0-96.68,66.11-165.45,153.82-165.45,49.5,0,83.06,18.94,103.99,45.18l1.66-38.54h83.39v318.94h-83.39l-1.66-38.54c-20.93,26.58-54.49,45.18-103.99,45.18-87.71,0-153.82-70.1-153.82-166.78Zm170.43-89.37c-51.16,0-85.71,38.54-85.71,89.37s34.55,91.03,85.71,91.03,87.04-39.87,87.04-91.03-36.21-89.37-87.04-89.37Z" style="fill:#2d4087; stroke-width:0px;"/><path d="m2643.13,556.32l-151.83-170.1v307.98h-89.7V243.03h77.74l170.77,202,170.1-202h77.41v451.17h-89.37v-308.31l-150.83,170.43h-14.29Z" style="fill:#2f75b9; stroke-width:0px;"/><path d="m3326.53,694.2h-332.56V243.03h89.7v373.76h242.86v77.41Z" style="fill:#2f75b9; stroke-width:0px;"/><path d="m165.63,610.17c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m298.66,395.48l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m425.87,612.82c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m298.66,395.48l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,683.29c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m301.93,538.21l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,683.29c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.41.98-1.77.31-.18.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m161.92,465.17l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,683.29c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m422.97,467.76l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m165.63,431.12c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m298.66,216.43l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m425.87,433.77c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m298.66,216.43l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,504.24c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m301.93,359.16l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,504.24c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m161.92,286.12l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m289.46,504.24c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m422.97,288.71l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m323.93,699.94c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,485.25l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m584.17,702.59c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,485.25l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,773.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m460.23,627.98l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,773.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.41.98-1.77.31-.18.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,554.94l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,773.06c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#fff; stroke-width:0px;"/><path d="m581.27,557.53l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m323.93,520.89c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,306.2l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m584.17,523.54c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,306.2l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,594.01c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m460.23,448.93l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,594.01c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.41.98-1.77.31-.18.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,375.89l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,594.01c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m581.27,378.48l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m481.22,789.63c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m614.25,574.94l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m741.46,792.29c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m614.25,574.94l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,862.76c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m617.53,717.68l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,862.76c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.41.98-1.77.31-.18.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m477.52,644.63l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,862.76c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m738.56,647.23l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m481.22,610.59c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m614.25,395.89l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m741.46,613.24c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m614.25,395.89l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,683.71c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m617.53,538.63l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,683.71c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.41.98-1.77.31-.18.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m477.52,465.58l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m605.05,683.71c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m738.56,468.18l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m323.93,342.75c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,128.06l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m584.17,345.4c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#dce8f3; stroke-width:0px;"/><path d="m456.96,128.06l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,415.87c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#cdc8bd; stroke-width:0px;"/><path d="m460.23,270.79l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,415.87c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,197.75l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#264997; stroke-width:0px;"/><path d="m447.76,415.87c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m581.27,200.34l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#264997; stroke-width:0px;"/><g style="opacity:.5;"><path d="m481.22,435.48c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#e9c0a9; stroke-width:0px;"/><path d="m614.25,220.79l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#982c21; stroke-width:0px;"/><path d="m741.46,438.13c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.28-1.01.28Z" style="fill:#e9c0a9; stroke-width:0px;"/><path d="m614.25,220.79l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#982c21; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78s.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#e48d67; stroke-width:0px;"/><path d="m617.53,363.53l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#612c2b; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#c67a4f; stroke-width:0px;"/><path d="m477.52,290.48l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#982c21; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#c67a4f; stroke-width:0px;"/><path d="m738.56,293.08l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#982c21; stroke-width:0px;"/></g><g style="opacity:.5;"><path d="m162.24,253.94c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#a4d9cc; stroke-width:0px;"/><path d="m295.28,39.24l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#1e3638; stroke-width:0px;"/><path d="m422.48,256.59c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#a4d9cc; stroke-width:0px;"/><path d="m295.28,39.24l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#1e3638; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#97cc6c; stroke-width:0px;"/><path d="m298.55,181.98l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#5f612c; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#66c4ab; stroke-width:0px;"/><path d="m158.54,108.93l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#1e3638; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#66c4ab; stroke-width:0px;"/><path d="m419.58,111.53l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#1e3638; stroke-width:0px;"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="900" height="900" viewBox="0 0 900 900"><path d="m165.63,610.17c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m298.66,395.48l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m425.87,612.82c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m298.66,395.48l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m289.46,683.29c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m301.93,538.21l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m289.46,683.29c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m161.92,465.17l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m289.46,683.29c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m422.97,467.76l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m165.63,431.12c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m298.66,216.43l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m425.87,433.77c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m298.66,216.43l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m289.46,504.24c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m301.93,359.16l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m289.46,504.24c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m161.92,286.12l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m289.46,504.24c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m422.97,288.71l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m323.93,699.94c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,485.25l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m584.17,702.59c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,485.25l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m447.76,773.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m460.23,627.98l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m447.76,773.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,554.94l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m447.76,773.06c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#fff; stroke-width:0px;"/><path d="m581.27,557.53l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m323.93,520.89c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,306.2l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m584.17,523.54c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,306.2l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m447.76,594.01c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m460.23,448.93l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m447.76,594.01c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,375.89l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m447.76,594.01c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m581.27,378.48l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m481.22,789.64c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m614.25,574.94l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m741.46,792.29c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m614.25,574.94l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m605.05,862.76c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m617.53,717.68l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m605.05,862.76c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m477.52,644.63l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m605.05,862.76c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m738.56,647.23l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m481.22,610.59c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m614.25,395.89l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m741.46,613.24c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m614.25,395.89l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m605.05,683.71c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m617.53,538.63l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m605.05,683.71c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m477.52,465.58l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m605.05,683.71c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m738.56,468.18l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><path d="m323.93,342.75c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,128.06l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m584.17,345.4c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#5b9cd4; stroke-width:0px;"/><path d="m456.96,128.06l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#26489e; stroke-width:0px;"/><path d="m447.76,415.87c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#dbab3e; stroke-width:0px;"/><path d="m460.23,270.79l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/><g style="opacity:.68;"><path d="m447.76,415.87c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#feffff; stroke-width:0px;"/><path d="m320.22,197.75l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.68;"><path d="m447.76,415.87c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#feffff; stroke-width:0px;"/><path d="m581.27,200.34l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#26489e; stroke-width:0px;"/></g><g style="opacity:.8;"><path d="m481.22,435.48c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#ef7028; stroke-width:0px;"/><path d="m614.25,220.79l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#b31f24; stroke-width:0px;"/><path d="m741.46,438.13c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99.99,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#ef7028; stroke-width:0px;"/><path d="m614.25,220.79l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#b31f24; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#ea5624; stroke-width:0px;"/><path d="m617.53,363.53l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45.04-1.46-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#8b1e1c; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#d55727; stroke-width:0px;"/><path d="m477.52,290.48l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#b31f24; stroke-width:0px;"/><path d="m605.05,508.6c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#d55727; stroke-width:0px;"/><path d="m738.56,293.08l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#b31f24; stroke-width:0px;"/></g><g style="opacity:.8;"><path d="m162.24,253.94c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.77.4-1.48,1.09-1.83l136.74-69.69c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.98.97,1.67l3.27,142.74c.02.77-.4,1.48-1.09,1.83l-136.31,69.96c-.29.15-.6.22-.91.22Z" style="fill:#60c3a7; stroke-width:0px;"/><path d="m295.28,39.24l3.27,142.74-136.31,69.96-3.7-143,136.74-69.69m0-4c-.62,0-1.24.14-1.82.44l-136.74,69.69c-1.37.7-2.22,2.13-2.18,3.67l3.7,143c.04,1.37.78,2.64,1.96,3.34.63.37,1.33.56,2.04.56.63,0,1.25-.15,1.83-.44l136.31-69.96c1.36-.7,2.21-2.12,2.17-3.65l-3.27-142.74c-.03-1.38-.77-2.64-1.95-3.34-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#0b5e64; stroke-width:0px;"/><path d="m422.48,256.59c-.35,0-.7-.09-1.01-.27l-123.94-72.61c-.6-.35-.97-.99-.99-1.68l-3.27-142.74c-.02-.72.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.69.09,1.01.27l124.31,72.29c.6.35.98.99,1,1.69l2.9,143.06c.01.72-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#60c3a7; stroke-width:0px;"/><path d="m295.28,39.24l124.31,72.29,2.9,143.06-123.94-72.61-3.27-142.74m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.09-1.96,3.54l3.27,142.74c.03,1.39.78,2.66,1.98,3.36l123.94,72.61c.62.37,1.32.55,2.02.55s1.4-.18,2.02-.55c1.25-.73,2-2.08,1.98-3.53l-2.9-143.06c-.03-1.4-.78-2.68-1.99-3.38l-124.31-72.29c-.62-.36-1.32-.54-2.01-.54h0Z" style="fill:#0b5e64; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.63-.37-1-1.05-.98-1.78.02-.73.44-1.39,1.09-1.72l136.31-69.96c.29-.15.6-.22.91-.22.35,0,.7.09,1.01.27l123.94,72.61c.63.37,1.01,1.05.99,1.78-.02.73-.43,1.39-1.08,1.72l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#7cc242; stroke-width:0px;"/><path d="m298.55,181.98l123.94,72.61-136.41,70.47-123.83-73.12,136.31-69.96m0-4c-.63,0-1.25.15-1.83.44l-136.31,69.96c-1.3.67-2.13,1.98-2.17,3.44-.04,1.46.71,2.82,1.96,3.56l123.83,73.12c.63.37,1.33.56,2.03.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.3-.67,2.12-1.99,2.16-3.45s-.72-2.82-1.98-3.56l-123.94-72.61c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#878d36; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.7-.09-1.02-.28l-123.83-73.12c-.59-.35-.96-.98-.98-1.67l-3.7-143c-.02-.73.36-1.4.98-1.77.31-.19.67-.28,1.02-.28s.7.09,1.01.27l124.2,72.8c.6.35.97.99.99,1.68l3.33,143.33c.02.73-.36,1.4-.99,1.77-.31.18-.66.27-1.01.27Z" style="fill:#4dbe99; stroke-width:0px;"/><path d="m158.54,108.93l124.2,72.8,3.33,143.33-123.83-73.12-3.7-143m0-4c-.7,0-1.41.19-2.03.56-1.25.74-2,2.1-1.97,3.55l3.7,143c.04,1.38.78,2.64,1.96,3.34l123.83,73.12c.63.37,1.33.56,2.03.56s1.4-.18,2.02-.55c1.25-.73,2.01-2.09,1.98-3.54l-3.33-143.33c-.03-1.39-.78-2.66-1.98-3.36l-124.2-72.8c-.62-.37-1.32-.55-2.02-.55h0Z" style="fill:#0b5e64; stroke-width:0px;"/><path d="m286.08,327.06c-.35,0-.71-.09-1.02-.28-.59-.35-.96-.98-.98-1.67l-3.33-143.33c-.02-.77.4-1.48,1.09-1.83l136.84-70.2c.29-.15.6-.22.91-.22.36,0,.71.09,1.03.28.59.35.96.99.97,1.68l2.9,143.06c.01.76-.4,1.47-1.08,1.82l-136.41,70.47c-.29.15-.6.22-.92.22Z" style="fill:#4dbe99; stroke-width:0px;"/><path d="m419.58,111.53l2.9,143.06-136.41,70.47-3.33-143.33,136.84-70.2m0-4c-.63,0-1.25.15-1.83.44l-136.84,70.2c-1.36.7-2.21,2.12-2.17,3.65l3.33,143.33c.03,1.38.77,2.64,1.96,3.35.63.37,1.33.56,2.04.56.63,0,1.26-.15,1.84-.45l136.41-70.47c1.36-.7,2.19-2.11,2.16-3.63l-2.9-143.06c-.03-1.38-.76-2.65-1.95-3.35-.63-.38-1.34-.57-2.05-.57h0Z" style="fill:#0b5e64; stroke-width:0px;"/></g></svg>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//
|
|
1
|
+
// Sidebar Tree — LutaML Branded
|
|
2
|
+
// Compact, clean tree matching lutaml-xsd SchemaTreeNode
|
|
2
3
|
|
|
3
4
|
document.addEventListener('alpine:init', () => {
|
|
4
|
-
// Package Tree Component
|
|
5
5
|
Alpine.data('packageTree', () => ({
|
|
6
6
|
get data() {
|
|
7
7
|
return this.$store.app.data;
|
|
@@ -9,206 +9,115 @@ document.addEventListener('alpine:init', () => {
|
|
|
9
9
|
|
|
10
10
|
get rootNodes() {
|
|
11
11
|
if (!this.data || !this.data.packageTree) return [];
|
|
12
|
-
|
|
13
|
-
// Return as array for iteration
|
|
14
12
|
return [this.data.packageTree];
|
|
15
13
|
}
|
|
16
14
|
}));
|
|
17
15
|
|
|
18
|
-
// Tree Node Component (Recursive)
|
|
19
|
-
Alpine.data('treeNode', (node) => ({
|
|
20
|
-
node,
|
|
21
|
-
|
|
22
|
-
get expanded() {
|
|
23
|
-
return this.$store.app.isNodeExpanded(this.node.id);
|
|
24
|
-
},
|
|
25
|
-
|
|
26
|
-
get hasChildren() {
|
|
27
|
-
return (this.node.children && this.node.children.length > 0) ||
|
|
28
|
-
(this.node.classes && this.node.classes.length > 0);
|
|
29
|
-
},
|
|
30
|
-
|
|
31
|
-
get isSelected() {
|
|
32
|
-
return this.$store.app.currentPackage === this.node.id;
|
|
33
|
-
},
|
|
34
|
-
|
|
35
|
-
get currentClass() {
|
|
36
|
-
return this.$store.app.currentClass;
|
|
37
|
-
},
|
|
38
|
-
|
|
39
|
-
toggle() {
|
|
40
|
-
this.$store.app.toggleNode(this.node.id);
|
|
41
|
-
},
|
|
42
|
-
|
|
43
|
-
selectPackage(id) {
|
|
44
|
-
this.$store.app.selectPackage(id);
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
-
selectClass(id) {
|
|
48
|
-
this.$store.app.selectClass(id);
|
|
49
|
-
},
|
|
50
|
-
|
|
51
|
-
getClass(classId) {
|
|
52
|
-
return this.$store.app.data?.classes[classId];
|
|
53
|
-
}
|
|
54
|
-
}));
|
|
55
|
-
|
|
56
|
-
// Sidebar Actions
|
|
57
|
-
Alpine.data('sidebarActions', () => ({
|
|
58
|
-
expandAll() {
|
|
59
|
-
this.$store.app.expandAll();
|
|
60
|
-
},
|
|
61
|
-
|
|
62
|
-
collapseAll() {
|
|
63
|
-
this.$store.app.collapseAll();
|
|
64
|
-
}
|
|
65
|
-
}));
|
|
66
|
-
|
|
67
|
-
// Recursive tree rendering component with full reactivity
|
|
68
16
|
Alpine.data('renderTree', (rootNode) => ({
|
|
69
17
|
treeHtml: '',
|
|
70
18
|
rootNode,
|
|
71
19
|
|
|
72
20
|
init() {
|
|
73
21
|
this.rebuildTree();
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
// Watch for state changes and rebuild tree
|
|
81
|
-
this.$watch('$store.app.expandedNodes.size', () => {
|
|
82
|
-
this.rebuildTree();
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
this.$watch('$store.app.currentPackage', () => {
|
|
86
|
-
this.rebuildTree();
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
this.$watch('$store.app.currentClass', () => {
|
|
90
|
-
this.rebuildTree();
|
|
91
|
-
});
|
|
22
|
+
window.addEventListener('tree-rebuild', () => this.rebuildTree());
|
|
23
|
+
this.$watch('$store.app.expandedNodes.size', () => this.rebuildTree());
|
|
24
|
+
this.$watch('$store.app.currentPackage', () => this.rebuildTree());
|
|
25
|
+
this.$watch('$store.app.currentClass', () => this.rebuildTree());
|
|
92
26
|
},
|
|
93
27
|
|
|
94
28
|
rebuildTree() {
|
|
95
|
-
this.treeHtml =
|
|
29
|
+
if (!this.rootNode) { this.treeHtml = ''; return; }
|
|
30
|
+
this.treeHtml = this.buildPackageNode(this.rootNode);
|
|
96
31
|
},
|
|
97
32
|
|
|
98
|
-
|
|
33
|
+
buildPackageNode(node) {
|
|
99
34
|
const store = Alpine.store('app');
|
|
100
35
|
const expanded = store.isNodeExpanded(node.id);
|
|
101
|
-
const
|
|
36
|
+
const selected = store.currentPackage === node.id;
|
|
102
37
|
const hasChildren = (node.children && node.children.length > 0) ||
|
|
103
38
|
(node.classes && node.classes.length > 0);
|
|
104
|
-
|
|
105
|
-
// Get package data for stereotypes
|
|
106
39
|
const pkg = store.data?.packages[node.id];
|
|
107
40
|
const stereotypes = pkg?.stereotypes || node.stereotypes || [];
|
|
108
41
|
|
|
109
|
-
let
|
|
110
|
-
|
|
42
|
+
let h = '<div class="tree-node">';
|
|
43
|
+
h += '<div class="tree-node-content' + (selected ? ' selected' : '') + '">';
|
|
111
44
|
|
|
112
|
-
// Expand
|
|
45
|
+
// Expand toggle
|
|
113
46
|
if (hasChildren) {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
47
|
+
h += '<button onclick="Alpine.store(\'app\').toggleNode(\'' + node.id + '\'); window.dispatchEvent(new CustomEvent(\'tree-rebuild\'));" class="tree-toggle">';
|
|
48
|
+
h += '<svg width="12" height="12" viewBox="0 0 12 12" fill="none"' + (expanded ? ' class="expanded"' : '') + '>';
|
|
49
|
+
h += '<path d="M4 3l3 3-3 3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>';
|
|
50
|
+
h += '</svg></button>';
|
|
117
51
|
} else {
|
|
118
|
-
|
|
52
|
+
h += '<span class="tree-toggle-placeholder"></span>';
|
|
119
53
|
}
|
|
120
54
|
|
|
121
|
-
//
|
|
122
|
-
|
|
123
|
-
|
|
55
|
+
// Folder icon
|
|
56
|
+
h += '<span class="tree-icon">';
|
|
57
|
+
h += '<svg width="14" height="14" viewBox="0 0 14 14" fill="none">';
|
|
58
|
+
h += '<path d="M2 5a2 2 0 012-2h2.5L8 4.5h2a2 2 0 012 2v2.5a2 2 0 01-2 2H4a2 2 0 01-2-2V5z" stroke="currentColor" stroke-width="1.1"/>';
|
|
59
|
+
h += '</svg></span>';
|
|
124
60
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
// Add stereotype prefix if present
|
|
61
|
+
// Label
|
|
62
|
+
h += '<button onclick="Alpine.store(\'app\').selectPackage(\'' + node.id + '\')" class="tree-label" title="' + this.esc(node.path || node.name) + '">';
|
|
128
63
|
if (stereotypes.length > 0) {
|
|
129
|
-
|
|
64
|
+
h += '<span class="tree-stereotype">«' + this.esc(stereotypes[0]) + '» </span>';
|
|
130
65
|
}
|
|
66
|
+
h += this.esc(node.name) + '</button>';
|
|
131
67
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
// Class count badge
|
|
68
|
+
// Count badge
|
|
135
69
|
if (node.classCount > 0) {
|
|
136
|
-
|
|
70
|
+
h += '<span class="tree-count">' + node.classCount + '</span>';
|
|
137
71
|
}
|
|
138
72
|
|
|
139
|
-
|
|
73
|
+
h += '</div>'; // tree-node-content
|
|
140
74
|
|
|
141
|
-
// Children
|
|
75
|
+
// Children
|
|
142
76
|
if (hasChildren && expanded) {
|
|
143
|
-
|
|
77
|
+
h += '<div class="tree-children">';
|
|
144
78
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
node.
|
|
148
|
-
|
|
79
|
+
if (node.classes && node.classes.length > 0) {
|
|
80
|
+
h += '<div class="tree-group">';
|
|
81
|
+
h += '<div class="tree-group-label">Classes <span class="tree-count">' + node.classes.length + '</span></div>';
|
|
82
|
+
h += '<div class="tree-group-items">';
|
|
83
|
+
node.classes.forEach(cd => {
|
|
84
|
+
const classId = typeof cd === 'string' ? cd : cd.id;
|
|
85
|
+
h += this.buildClassLeaf(classId);
|
|
149
86
|
});
|
|
87
|
+
h += '</div></div>';
|
|
150
88
|
}
|
|
151
89
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
// classData can be either string ID or object with {id, name, stereotypes}
|
|
156
|
-
const classId = typeof classData === 'string' ? classData : classData.id;
|
|
157
|
-
const classStereotypes = typeof classData === 'object' ? classData.stereotypes : null;
|
|
158
|
-
html += this.buildClassNode(classId, classStereotypes);
|
|
90
|
+
if (node.children && node.children.length > 0) {
|
|
91
|
+
node.children.forEach(child => {
|
|
92
|
+
h += this.buildPackageNode(child);
|
|
159
93
|
});
|
|
160
94
|
}
|
|
161
95
|
|
|
162
|
-
|
|
96
|
+
h += '</div>';
|
|
163
97
|
}
|
|
164
98
|
|
|
165
|
-
|
|
166
|
-
return
|
|
99
|
+
h += '</div>';
|
|
100
|
+
return h;
|
|
167
101
|
},
|
|
168
102
|
|
|
169
|
-
|
|
103
|
+
buildClassLeaf(classId) {
|
|
170
104
|
const store = Alpine.store('app');
|
|
171
105
|
const cls = store.data?.classes[classId];
|
|
172
106
|
if (!cls) return '';
|
|
173
107
|
|
|
174
|
-
const
|
|
175
|
-
const
|
|
176
|
-
|
|
177
|
-
let html = `<div class="tree-node class-node${isSelected ? ' selected' : ''}">`;
|
|
178
|
-
html += '<div class="node-header">';
|
|
179
|
-
html += '<span class="no-icon"></span>';
|
|
180
|
-
|
|
181
|
-
// Class icon
|
|
182
|
-
html += '<svg class="class-icon" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">';
|
|
183
|
-
html += '<rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect>';
|
|
184
|
-
html += '<line x1="3" y1="9" x2="21" y2="9"></line>';
|
|
185
|
-
html += '<line x1="9" y1="21" x2="9" y2="9"></line>';
|
|
186
|
-
html += '</svg>';
|
|
187
|
-
|
|
188
|
-
html += `<button onclick="Alpine.store('app').selectClass('${classId}')" class="node-label${isSelected ? ' active' : ''}" title="${this.escapeHtml(cls.qualifiedName || cls.name)}">`;
|
|
189
|
-
|
|
190
|
-
// Add stereotype prefix if present
|
|
191
|
-
if (stereotypes.length > 0) {
|
|
192
|
-
html += `<span class="stereotype-prefix">«${this.escapeHtml(stereotypes[0])}»</span> `;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
html += `<span>${this.escapeHtml(cls.name)}</span></button>`;
|
|
196
|
-
|
|
197
|
-
html += '</div>'; // node-header
|
|
198
|
-
html += '</div>'; // tree-node
|
|
108
|
+
const selected = store.currentClass === classId;
|
|
109
|
+
const typeKey = (cls.type === 'Enumeration' ? 'enum' : cls.type === 'DataType' ? 'datatype' : cls.type === 'Interface' ? 'interface' : 'class');
|
|
199
110
|
|
|
200
|
-
|
|
111
|
+
let h = '<div class="tree-item' + (selected ? ' selected' : '') + '" onclick="Alpine.store(\'app\').selectClass(\'' + classId + '\')">';
|
|
112
|
+
h += '<span class="badge badge-' + typeKey + '">' + (cls.type === 'Enumeration' ? 'E' : cls.type === 'DataType' ? 'DT' : cls.type === 'Interface' ? 'I' : 'C') + '</span>';
|
|
113
|
+
h += '<span class="tree-item-label" title="' + this.esc(cls.qualifiedName || cls.name) + '">' + this.esc(cls.name) + '</span>';
|
|
114
|
+
h += '</div>';
|
|
115
|
+
return h;
|
|
201
116
|
},
|
|
202
117
|
|
|
203
|
-
|
|
204
|
-
const
|
|
205
|
-
|
|
206
|
-
'<': '<',
|
|
207
|
-
'>': '>',
|
|
208
|
-
'"': '"',
|
|
209
|
-
"'": '''
|
|
210
|
-
};
|
|
211
|
-
return String(text).replace(/[&<>"']/g, m => map[m]);
|
|
118
|
+
esc(text) {
|
|
119
|
+
const m = { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' };
|
|
120
|
+
return String(text).replace(/[&<>"']/g, c => m[c]);
|
|
212
121
|
}
|
|
213
122
|
}));
|
|
214
123
|
});
|