coverband 5.2.3.2 → 5.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b86ea2f59a09e6e1aa19962a0c040a799c779ad315ddb4638f83a00e1ce83d6b
4
- data.tar.gz: 4b7ec38f2f1907cd0403ac6202f945a177afb745c8ee914ac4e10d7643f39bee
3
+ metadata.gz: 5c8757666aef8f0f574448435cb61fd66d24a7ace2b128df30562dbd8e7a3e1e
4
+ data.tar.gz: 8420bf08b255e38623b9dcfbef365d25bcb5dd6715bb362c5763a08616955d4a
5
5
  SHA512:
6
- metadata.gz: af8fdb3b98d8350cabf01e5ddca9321fccd838e4da80ef5260cde7d4e31c17041707e703761193d27b35f1ba1ea3c7363843b80506a7dfa7152ceb82ac5b68bc
7
- data.tar.gz: 12f81c55f8bec44ebaf4fc4296484de0c28acae104f546240b278ffb27fbcd9775c03ddc803d1e5234a34fdcd1a8c579dd08808d732b67982d520c5d9aec17bd
6
+ metadata.gz: 96714df5ae4daf880e400319a867035eea27db7c87df49501d62c32da2514a7cfbc92e40d8e5bd0fe20a56e5626058c7e173f155c46a6742204641a9dd451a0b
7
+ data.tar.gz: bac28c51086c03e22100a84958f5b04fec83ec9942d600e2da4f2d7039d54585e15394699b225bcd5a20c6d6976263a2ec611e4e5afa8d805464a021c3428973
data/README.md CHANGED
@@ -29,12 +29,10 @@ The primary goal of Coverband is giving deep insight into your production runtim
29
29
  - Low performance overhead
30
30
  - Simple setup and configuration
31
31
  - Out of the box support for all standard code execution paths (web, cron, background jobs, rake tasks, etc)
32
- - Splits load time (Rails eager load) and runtime metrics
32
+ - Splits code loading usage (Rails eager load) and runtime usage metrics
33
33
  - Easy to understand actionable insights from the report
34
- - Development mode, offers deep insight of code usage details (number of LOC execution during single request, etc) during development.
35
34
  - Mountable web interface to easily share reports
36
35
 
37
-
38
36
  # Installation
39
37
 
40
38
  ## Redis
@@ -45,7 +43,7 @@ Coverband stores coverage data in Redis. The Redis endpoint is looked for in thi
45
43
  2. `ENV['REDIS_URL']`
46
44
  3. `localhost:6379`
47
45
 
48
- The redis store can also be explicitly defined within the coverband.rb. See [advanced config](#advanced-config).
46
+ The redis store can also be explicitly defined within the `config/coverband.rb`. See [advanced config](#advanced-config).
49
47
 
50
48
  ## Gem Installation
51
49
 
@@ -162,12 +160,12 @@ Take Coverband for a spin on the live Heroku deployed [Coverband Demo](https://c
162
160
  If you need to configure coverband, this can be done by creating a `config/coverband.rb` file relative to your project root.
163
161
 
164
162
  - See [lib/coverband/configuration.rb](https://github.com/danmayer/coverband/blob/master/lib/coverband/configuration.rb) for all options
165
- - By default Coverband will try to stored data to Redis \* Redis endpoint is looked for in this order: `ENV['COVERBAND_REDIS_URL']`, `ENV['REDIS_URL']`, or `localhost`
163
+ - By default Coverband will try to store data to Redis \* Redis endpoint is looked for in this order: `ENV['COVERBAND_REDIS_URL']`, `ENV['REDIS_URL']`, or `localhost`
166
164
 
167
165
  Below is an example config file for a Rails 5 app:
168
166
 
169
167
  ```ruby
170
- #config/coverband.rb
168
+ # config/coverband.rb NOT in the initializers
171
169
  Coverband.configure do |config|
172
170
  config.store = Coverband::Adapters::RedisStore.new(Redis.new(url: ENV['MY_REDIS_URL']))
173
171
  config.logger = Rails.logger
@@ -239,7 +237,7 @@ config.after_initialize do
239
237
  end
240
238
  ```
241
239
 
242
- or if you know you are manually calling eager load anywhere in your initialization process immediately adfter call those two lines. A user reported an issue after calling `ResqueWeb::Engine.eager_load!` for example.
240
+ or if you know you are manually calling eager load anywhere in your initialization process immediately after call those two lines. A user reported an issue after calling `ResqueWeb::Engine.eager_load!` for example.
243
241
 
244
242
  ```ruby
245
243
  Rails.application.routes.draw do
@@ -341,7 +339,7 @@ This conflict happens when a ruby method is patched twice, once using module pre
341
339
 
342
340
  ### Redis Sizing Info
343
341
 
344
- A few folks have asked about what size of Redis is. needed to run coverband. I have some of our largest services with hundreds of servers on cache.m3.medium with plenty of room to spare. I run most apps on the smallest AWS Redis instances available and bump up only if needed or if I am forced to be on a shared Redis instance, which I try to avoid. On Heroku, I have used it with most of the 3rd party and also been fine on the smallest Redis instances, if you have hundreds of dynos you would likely need to scale up. Also note there is a tradeoff one can make, `Coverband::Adapters::HashRedisStore` will use LUA on Redis and increase the Redis load, while being nicer to your app servers and avoid potential lost data during race conditions. While the `Coverband::Adapters::RedisStore` uses in app memory and merging and has lower load on Redis.
342
+ A few folks have asked about what size of Redis is needed to run coverband. I have some of our largest services with hundreds of servers on cache.m3.medium with plenty of room to spare. I run most apps on the smallest AWS Redis instances available and bump up only if needed or if I am forced to be on a shared Redis instance, which I try to avoid. On Heroku, I have used it with most of the 3rd party and also been fine on the smallest Redis instances, if you have hundreds of dynos you would likely need to scale up. Also note there is a tradeoff one can make, `Coverband::Adapters::HashRedisStore` will use LUA on Redis and increase the Redis load, while being nicer to your app servers and avoid potential lost data during race conditions. While the `Coverband::Adapters::RedisStore` uses in app memory and merging and has lower load on Redis.
345
343
 
346
344
  # Newer Features
347
345
 
@@ -376,7 +374,7 @@ Outputs:
376
374
 
377
375
  We will match Heroku & Ruby's support lifetime, supporting the last 3 major Ruby releases. For details see [supported runtimes](https://devcenter.heroku.com/articles/ruby-support#supported-runtimes).
378
376
 
379
- For Rails, we will follow the policy of the [Rails team maintenance policy](https://guides.rubyonrails.org/maintenance_policy.html). We officially support the last two major release versions, while providing minimal support (major bugs / security fixes) for an additional version. This means at the moment we primaryly target Rails 6.x, 5.x, and will try to keep current functionality working for Rails 4.x but may release new features that do not work on that target.
377
+ For Rails, we will follow the policy of the [Rails team maintenance policy](https://guides.rubyonrails.org/maintenance_policy.html). We officially support the last two major release versions, while providing minimal support (major bugs / security fixes) for an additional version. This means at the moment we primarily target Rails 6.x, 5.x, and will try to keep current functionality working for Rails 4.x but may release new features that do not work on that target.
380
378
 
381
379
  ### JRuby Support
382
380
 
@@ -420,6 +418,9 @@ If you submit a change please make sure the tests and benchmarks are passing.
420
418
  - **Coverage does NOT work when used alongside Scout APM Auto Instrumentation**
421
419
  - In an environment that uses Scout's `AUTO_INSTRUMENT=true` (usually production or staging) it stops reporting any coverage, it will show one or two files that have been loaded at the start but everything else will show up as having 0% coverage
422
420
  - Bug tracked here: https://github.com/scoutapp/scout_apm_ruby/issues/343
421
+ - **Coverband, [Elastic APM](https://github.com/elastic/apm-agent-ruby) and resque**
422
+ - In an environment that uses the Elastic APM ruby agent, resque jobs will fail with `Transactions may not be nested. Already inside #<ElasticAPM::Transaction>` if the `elastic-apm` gem is loaded _before_ the `coverband` gem
423
+ - Put `coverage` ahead of `elastic-apm` in your Gemfile
423
424
 
424
425
  ### Debugging Redis Store
425
426
 
data/changes.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### Coverband 5.2.4
2
+
3
+ - add install task with example configuration file
4
+
1
5
  ### Coverband 5.2.3
2
6
 
3
7
  - fix for thread error bubbling up
data/diagram.svg CHANGED
@@ -1 +1 @@
1
- <svg width="1000" height="1000" style="background:white;font-family:sans-serif;overflow:visible" xmlns="http://www.w3.org/2000/svg"><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="4" result="coloredBlur"></feGaussianBlur><feMerge><feMergeNode in="coloredBlur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter></defs><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(320.0440955851615, 687.1095098202745)"><circle r="41.02236906512809" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(661.4804553274951, 565.090051603168)"><circle r="305.5611201285023" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(288.9428814644706, 583.2452646411239)"><circle r="51.42382489927201" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(198.29056803988027, 337.57526920658273)"><circle r="194.43887987149768" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(208.90653735006168, 675.48393390541)"><circle r="54.70448277314051" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(467.6257278331589, 199.4263523617063)"><circle r="92.25990031514063" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(310.0829618723833, 685.6384827820034)"><circle style="transition:all 0.5s ease-out" r="13.299028563894717" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(346.0050009856998, 685.8005401247327)"><circle style="transition:all 0.5s ease-out" r="12.02848495983237" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(328.9366533715195, 706.6667327359944)"><circle style="transition:all 0.5s ease-out" r="11.74363845681824" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(329.02658201816666, 668.0954026167576)"><circle style="transition:all 0.5s ease-out" r="9.315890781894888" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(309.0581746982697, 660.221127683734)"><circle style="transition:all 0.5s ease-out" r="8.976275495532931" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(305.75853103690565, 710.2717082656537)"><circle style="transition:all 0.5s ease-out" r="8.51089946502625" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(345.69354681131415, 666.3283315944778)"><circle style="transition:all 0.5s ease-out" r="4.2444867695186295" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(344.80620435875534, 702.4578918669062)"><circle style="transition:all 0.5s ease-out" r="1.4745523900395063" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(704.0130009267006, 526.8945922551309)"><circle style="transition:all 0.5s ease-out" r="16.533032652648004" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(779.026580496945, 569.8306716213199)"><circle r="61.69816687266827" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(717.8942018035817, 692.9668225846455)"><circle r="61.8583199246666" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(725.623487075414, 443.09660872398206)"><circle r="61.69816687266827" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(816.2248010855254, 664.9010560509214)"><circle r="26.454166736894674" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(831.1291944101946, 473.1163753017442)"><circle r="34.07246111008901" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(896.8247901002761, 619.3863730582293)"><circle r="52.16148452897064" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(853.7454304870963, 527.1382548108799)"><circle style="transition:all 0.5s ease-out" r="15.96140325350319" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(526.9232224004262, 561.9278965746462)"><circle r="155.8010872216729" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(917.7984642878176, 514.1842004195438)"><circle r="41.23693945990571" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(703.6822329006822, 591.1144869647255)"><circle style="transition:all 0.5s ease-out" r="8.026303235091047" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(856.5806107543644, 559.1658102392851)"><circle style="transition:all 0.5s ease-out" r="8.00693003948508" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(852.3173687321352, 572.7976878502546)"><circle style="transition:all 0.5s ease-out" r="3.07289682848344" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(770.9108070466519, 642.4415481089172)"><circle style="transition:all 0.5s ease-out" r="2.7977664490618936" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(792.2668738614019, 498.29098670104577)"><circle style="transition:all 0.5s ease-out" r="2.3906725717693056" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(773.5169038017948, 497.53945196380073)"><circle style="transition:all 0.5s ease-out" r="2.1728661853072757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(271.1401033139684, 583.2452646411239)"><circle r="29.922724853109983" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(320.71476726541044, 583.2452646411239)"><circle style="transition:all 0.5s ease-out" r="15.953617202672337" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(304.6269882462287, 600.9051778674213)"><circle style="transition:all 0.5s ease-out" r="4.237162369290773" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(24.12994503121425, 337.57526920658273)"><circle style="transition:all 0.5s ease-out" r="16.579934967171834" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(216.719663954882, 337.57526920658273)"><circle r="172.31146206083613" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(39.18389976549216, 354.4357756737938)"><circle style="transition:all 0.5s ease-out" r="2.3248011486975844" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(181.8982561622141, 667.8965963156105)"><circle style="transition:all 0.5s ease-out" r="23.650696140612176" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(235.1520986860007, 665.5639261363586)"><circle style="transition:all 0.5s ease-out" r="23.64675578080243" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(212.80154791821997, 709.1802046668536)"><circle r="17.783843472641195" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(215.9534882395659, 634.7817767621241)"><circle style="transition:all 0.5s ease-out" r="9.556191686063611" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(195.14095699914515, 635.77303724355)"><circle style="transition:all 0.5s ease-out" r="8.049489522879224" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(208.3529374060717, 674.2562664837939)"><circle style="transition:all 0.5s ease-out" r="2.590228413010779" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(204.79546338036494, 682.4001409768266)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(213.09470902755046, 681.5338103668984)"><circle style="transition:all 0.5s ease-out" r="2.566132741266234" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(231.19931411133774, 636.1785242497068)"><circle style="transition:all 0.5s ease-out" r="2.553999657970545" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(207.9973875429042, 656.8696010522781)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(211.35726725704902, 649.3382854007114)"><circle style="transition:all 0.5s ease-out" r="2.5172495454878896" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#f1e05a;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(414.822024149365, 225.1375475360698)"><circle style="transition:all 0.5s ease-out" r="30.52918705521055" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#563d7c;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(512.6954159742601, 234.6698595934178)"><circle style="transition:all 0.5s ease-out" r="30.526134594366525" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(459.0940177954422, 257.5911969133917)"><circle style="transition:all 0.5s ease-out" r="21.23121372820632" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#f1e05a;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(463.6290000039323, 209.78308702984737)"><circle style="transition:all 0.5s ease-out" r="17.640126738785757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(429.99486304915393, 163.42743119638348)"><circle r="24.553137938561655" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(500.1972119486214, 164.9155590044101)"><circle r="31.80574943627837" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(450.83125597788154, 229.43982132343692)"><circle style="transition:all 0.5s ease-out" r="2.614101990615157" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(476.60271187728233, 237.18056876273243)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(477.00311069307025, 228.84520809619744)"><circle style="transition:all 0.5s ease-out" r="2.566132741266234" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(432.1192265551085, 257.0192509884513)"><circle style="transition:all 0.5s ease-out" r="2.553999657970545" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(469.5138689451535, 232.44150452301645)"><circle style="transition:all 0.5s ease-out" r="2.5418086592087867" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(319.7591050031551, 805.6688459724203)"><circle style="transition:all 0.5s ease-out" r="30.536308277233342" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(392.15237940306065, 806.6964709054038)"><circle style="transition:all 0.5s ease-out" r="29.60353121887948" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(366.1919841019905, 854.7688005881294)"><circle style="transition:all 0.5s ease-out" r="14.432546384579645" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(375.9300563425951, 760.067764214663)"><circle style="transition:all 0.5s ease-out" r="13.859447824501745" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(341.7319739365578, 764.8739874722235)"><circle style="transition:all 0.5s ease-out" r="12.598581143164461" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(342.6585355847883, 841.9277659917558)"><circle style="transition:all 0.5s ease-out" r="9.161231543165423" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(356.77744480612085, 784.5181793927717)"><circle style="transition:all 0.5s ease-out" r="8.941604545206417" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(356.1917826404681, 826.4169117568251)"><circle style="transition:all 0.5s ease-out" r="8.225079893329147" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#199f4b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(322.8693120249139, 847.47566533598)"><circle style="transition:all 0.5s ease-out" r="8.19102144519738" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(405.0869268832444, 771.6320580842195)"><circle style="transition:all 0.5s ease-out" r="4.555115764012363" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000000;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(390.9446194715079, 843.6694978899668)"><circle style="transition:all 0.5s ease-out" r="4.192947291157432" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(394.6337541296222, 768.1041266999964)"><circle style="transition:all 0.5s ease-out" r="3.278304099543897" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(368.75402375765964, 834.0392904428885)"><circle style="transition:all 0.5s ease-out" r="3.2688155004835355" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(381.1135215721857, 840.6320399819576)"><circle style="transition:all 0.5s ease-out" r="2.8959634043717517" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(370.4444099615016, 778.8012060714246)"><circle style="transition:all 0.5s ease-out" r="2.672853191210206" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(359.26435481885363, 770.08690702449)"><circle style="transition:all 0.5s ease-out" r="2.492448452523984" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(388.73716311701133, 772.9313451400715)"><circle style="transition:all 0.5s ease-out" r="1.1421833699466701" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(753.7289101917189, 535.383245151049)"><circle style="transition:all 0.5s ease-out" r="15.959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(798.8291935675396, 547.8666020954927)"><circle r="19.785508043185732" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(766.4509352230351, 588.7020287174994)"><circle r="36.02053532290673" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(769.2045379114992, 545.1978480712344)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462784" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(778.8413147628411, 548.1139368728195)"><circle style="transition:all 0.5s ease-out" r="3.1130671194246933" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(696.3721539993563, 655.8573374059548)"><circle style="transition:all 0.5s ease-out" r="15.959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(737.847577305749, 671.6696925563696)"><circle r="20.30267160976593" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(703.8331610124205, 710.97839359905)"><circle r="36.008165471410976" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(711.8237424971337, 668.4618130482022)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462784" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(719.4196606166051, 673.1936625895116)"><circle style="transition:all 0.5s ease-out" r="1.9939587620191872" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(700.3258167701882, 408.6491822537109)"><circle style="transition:all 0.5s ease-out" r="15.959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(745.4261001460089, 421.1325391981552)"><circle r="19.785508043185732" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(713.0478418015039, 461.96796582016145)"><circle r="36.02053532290673" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(715.8014444899684, 418.4637851738964)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462784" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(725.4382213413104, 421.3798739754816)"><circle style="transition:all 0.5s ease-out" r="3.1130671194246933" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(803.9668698168914, 664.9010560509214)"><circle style="transition:all 0.5s ease-out" r="10.497913572600913" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(828.5718756059563, 664.9010560509214)"><circle style="transition:all 0.5s ease-out" r="10.408770320804072" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(815.0265494402951, 471.62504630626694)"><circle style="transition:all 0.5s ease-out" r="14.202582789663447" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(843.0855194523331, 471.62504630626694)"><circle style="transition:all 0.5s ease-out" r="10.15806532671481" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(832.8046422103039, 493.29363138790137)"><circle style="transition:all 0.5s ease-out" r="10.127441002195804" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(832.6094482949999, 451.56629178366535)"><circle style="transition:all 0.5s ease-out" r="8.773276935352106" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(885.1160757896747, 619.3877075929283)"><circle r="37.45277014231552" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(936.8250038534794, 619.4423965038998)"><circle style="transition:all 0.5s ease-out" r="9.161231543165423" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(931.4512126875003, 632.6868783605914)"><circle style="transition:all 0.5s ease-out" r="3.0627719349665417" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(930.9693990649138, 607.5109014969184)"><circle style="transition:all 0.5s ease-out" r="2.2293136681031145" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(928.2191424895046, 600.8659312975525)"><circle style="transition:all 0.5s ease-out" r="1.7624272025376257" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(927.3617271272765, 639.3977315754129)"><circle style="transition:all 0.5s ease-out" r="1.5959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(924.9038923038595, 595.772792128751)"><circle style="transition:all 0.5s ease-out" r="1.1146568340515572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(509.21012744025904, 561.1285898554693)"><circle style="transition:all 0.5s ease-out" r="16.911956103361995" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(594.0351154989643, 566.3657633746082)"><circle r="57.32332841316584" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(458.8500617878015, 593.611303270355)"><circle r="35.247515503957146" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(415.74389402939596, 523.1522317988723)"><circle r="35.05392064923874" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.9928948663716, 654.7638039861382)"><circle r="42.49357187372217" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(505.3304213924775, 487.37955101909495)"><circle r="49.1076007272085" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(583.2685923837623, 640.4296318393756)"><circle style="transition:all 0.5s ease-out" r="9.749265567922786" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(527.7361726360538, 544.7034088431642)"><circle style="transition:all 0.5s ease-out" r="4.669600679137039" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(907.9725663811307, 514.0609705067272)"><circle style="transition:all 0.5s ease-out" r="26.688990921692263" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(946.8307843176603, 512.2414949050196)"><circle style="transition:all 0.5s ease-out" r="9.000465694723758" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(941.325229612083, 531.3255498964002)"><circle style="transition:all 0.5s ease-out" r="7.661998973911636" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(934.2614963692529, 492.34219145618545)"><circle style="transition:all 0.5s ease-out" r="4.200348792577747" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(937.4192093747498, 501.3796298903495)"><circle style="transition:all 0.5s ease-out" r="2.1728661853072757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000000;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(930.1970141604473, 535.5959404396514)"><circle style="transition:all 0.5s ease-out" r="1.0574563215225752" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(259.56400460733227, 583.2452646411239)"><circle style="transition:all 0.5s ease-out" r="14.648304250814054" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(287.63756851261235, 583.2452646411239)"><circle style="transition:all 0.5s ease-out" r="9.726937758806239" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(277.27787378114874, 598.5906657828165)"><circle style="transition:all 0.5s ease-out" r="5.089723767848308" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(276.7908269055428, 571.8439180468595)"><circle style="transition:all 0.5s ease-out" r="2.3114016068396066" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(145.2385972306276, 347.69864762740275)"><circle style="transition:all 0.5s ease-out" r="23.171729057282757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(238.15357248072655, 347.69864762740275)"><circle r="66.04492429715643" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(150.38239997180202, 415.6027021128269)"><circle r="41.228549048816426" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(157.24689592365561, 295.84920760056417)"><circle r="26.351783556943573" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.14146867600607, 461.32995075917034)"><circle r="44.42040599836763" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(207.28791388730727, 225.57708296821903)"><circle r="56.21851560501154" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(127.72494526061453, 318.5123581058506)"><circle style="transition:all 0.5s ease-out" r="7.167685478298116" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(248.71569839782774, 274.5132888766575)"><circle style="transition:all 0.5s ease-out" r="4.200348792577747" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(209.6587164610557, 708.4060817754527)"><circle style="transition:all 0.5s ease-out" r="2.566132741266234" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.70939100092366, 710.5065080121926)"><circle style="transition:all 0.5s ease-out" r="2.553999657970545" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(211.8820524185861, 716.4109707092169)"><circle style="transition:all 0.5s ease-out" r="2.5418086592087867" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(215.50132171831822, 702.5169024375011)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(202.28641573585247, 704.6293890665054)"><circle style="transition:all 0.5s ease-out" r="2.5172495454878896" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(203.83410301726474, 714.2783224421288)"><circle style="transition:all 0.5s ease-out" r="2.5048796939921276" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(223.4569140180461, 704.5929458355394)"><circle style="transition:all 0.5s ease-out" r="2.492448452523984" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(425.66049366015926, 162.39649640191806)"><circle style="transition:all 0.5s ease-out" r="2.6377595044104964" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(434.12118166124395, 162.62580740679155)"><circle style="transition:all 0.5s ease-out" r="2.625957389262631" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(429.7069387239328, 169.81943369228375)"><circle style="transition:all 0.5s ease-out" r="2.614101990615157" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(430.1009400527608, 155.21843081970536)"><circle style="transition:all 0.5s ease-out" r="2.6021925802010184" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(421.71315191966335, 154.9436535842554)"><circle style="transition:all 0.5s ease-out" r="2.590228413010779" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(421.31683064278315, 169.60490214928686)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(438.4660725930112, 155.4453296012825)"><circle style="transition:all 0.5s ease-out" r="2.566132741266234" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(438.3312464170354, 169.8712239491243)"><circle style="transition:all 0.5s ease-out" r="2.553999657970545" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(417.2900751365735, 162.00473209595316)"><circle style="transition:all 0.5s ease-out" r="2.5418086592087867" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(413.02452491120454, 169.09138170580974)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(442.46406239831924, 162.69979859714763)"><circle style="transition:all 0.5s ease-out" r="2.5172495454878896" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(446.5925587713497, 169.81027867422085)"><circle style="transition:all 0.5s ease-out" r="2.5048796939921276" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(434.5130140198094, 148.19451091724866)"><circle style="transition:all 0.5s ease-out" r="2.492448452523984" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(495.73801288091903, 164.87788235205613)"><circle style="transition:all 0.5s ease-out" r="23.64806930702374" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(525.6139629912273, 164.87788235205613)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.3129980601925, 173.51319335693688)"><circle style="transition:all 0.5s ease-out" r="2.5048796939921276" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.304210747948, 156.25647345379974)"><circle style="transition:all 0.5s ease-out" r="2.492448452523984" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(794.4774479504854, 548.1356811114009)"><circle style="transition:all 0.5s ease-out" r="4.4794783961774085" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(806.255294297982, 549.2363929693084)"><circle style="transition:all 0.5s ease-out" r="4.148260964442219" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(799.8372622639662, 557.5602341790793)"><circle style="transition:all 0.5s ease-out" r="3.162562545542399" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(801.4786873752438, 539.9485036455734)"><circle style="transition:all 0.5s ease-out" r="3.0930471875277576" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(788.4745740435021, 539.455213429993)"><circle style="transition:all 0.5s ease-out" r="2.874431779272321" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(788.4732586671391, 556.3924392930171)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(810.1007008170392, 540.3459939717353)"><circle style="transition:all 0.5s ease-out" r="2.338123900453203" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.2757512364083, 588.7020287174994)"><circle r="9.22971440756445" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(780.4884680949573, 588.7020287174994)"><circle r="12.367365522269084" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(729.7865604298584, 672.3683017873487)"><circle style="transition:all 0.5s ease-out" r="7.058515445451927" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.0173675912397, 671.44455308851)"><circle style="transition:all 0.5s ease-out" r="6.130612587283563" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(740.5847191672299, 682.2644158391965)"><circle style="transition:all 0.5s ease-out" r="4.388408344071519" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(739.5931479164079, 661.8202396954221)"><circle style="transition:all 0.5s ease-out" r="4.140766358565791" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(730.4124242287339, 660.1316291284222)"><circle style="transition:all 0.5s ease-out" r="1.9939587620191872" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(686.6703468772895, 710.97839359905)"><circle r="9.22971440756445" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(717.8706938843427, 710.97839359905)"><circle r="12.354995670773324" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(741.0743545289548, 421.40161821406343)"><circle style="transition:all 0.5s ease-out" r="4.4794783961774085" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(752.8522008764514, 422.502330071971)"><circle style="transition:all 0.5s ease-out" r="4.148260964442219" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(746.4341688424355, 430.8261712817417)"><circle style="transition:all 0.5s ease-out" r="3.162562545542399" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(748.0755939537135, 413.21444074823603)"><circle style="transition:all 0.5s ease-out" r="3.0930471875277576" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(735.0714806219714, 412.72115053265554)"><circle style="transition:all 0.5s ease-out" r="2.874431779272321" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(735.0701652456079, 429.658376395679)"><circle style="transition:all 0.5s ease-out" r="2.529558907624782" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(756.6976073955087, 413.611931074398)"><circle style="transition:all 0.5s ease-out" r="2.338123900453203" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(695.872657814877, 461.96796582016145)"><circle r="9.22971440756445" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(727.085374673426, 461.96796582016145)"><circle r="12.367365522269084" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(867.3152447456913, 619.3877075929283)"><circle style="transition:all 0.5s ease-out" r="15.953617202672337" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(902.918853940177, 619.3877075929283)"><circle style="transition:all 0.5s ease-out" r="15.951670096153496" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(580.123458762755, 567.6325186033815)"><circle style="transition:all 0.5s ease-out" r="16.952314446278734" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(615.2735824498056, 566.7641061144058)"><circle style="transition:all 0.5s ease-out" r="15.008596609963854" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(600.3007787596391, 596.2569104543842)"><circle style="transition:all 0.5s ease-out" r="14.867199086729345" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(598.8271096185131, 539.7099184699974)"><circle style="transition:all 0.5s ease-out" r="13.452296394061888" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(569.0933881773474, 536.0445989253673)"><circle style="transition:all 0.5s ease-out" r="13.306033583376461" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(568.2584133381023, 596.8660652970806)"><circle style="transition:all 0.5s ease-out" r="11.397332061597101" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(626.4763468789304, 539.8007588601215)"><circle style="transition:all 0.5s ease-out" r="10.989408453971947" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(628.2579893022776, 592.0327445313276)"><circle style="transition:all 0.5s ease-out" r="10.200784924808195" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(552.2976241489423, 556.3778517552)"><circle style="transition:all 0.5s ease-out" r="9.86329594292602" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(552.8967784177418, 578.6580210690794)"><circle style="transition:all 0.5s ease-out" r="9.22205927433874" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(639.0675234171691, 557.7346999545606)"><circle style="transition:all 0.5s ease-out" r="7.240981010529503" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(638.845008471981, 574.9068297375159)"><circle style="transition:all 0.5s ease-out" r="6.729610821814757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(443.88962403047987, 590.1913451163624)"><circle style="transition:all 0.5s ease-out" r="16.202832096011907" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(476.9347516683852, 590.1913451163624)"><circle style="transition:all 0.5s ease-out" r="13.14397364623365" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(463.10379275933326, 614.0158968815783)"><circle style="transition:all 0.5s ease-out" r="10.705929285803535" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(462.76575842975365, 570.9487362547126)"><circle style="transition:all 0.5s ease-out" r="7.054113502120483" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(405.94961107315004, 526.553257281977)"><circle style="transition:all 0.5s ease-out" r="11.000708619892158" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(437.41240207548543, 522.3322595881415)"><circle style="transition:all 0.5s ease-out" r="10.36990360050411" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(424.3252674403928, 540.6949999273658)"><circle style="transition:all 0.5s ease-out" r="8.986650697026096" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(420.01452020373466, 508.5684750556067)"><circle style="transition:all 0.5s ease-out" r="8.623295337816963" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(400.62258698719825, 505.13508345765666)"><circle style="transition:all 0.5s ease-out" r="7.869982459080664" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(409.4227128204277, 543.347793895688)"><circle style="transition:all 0.5s ease-out" r="2.9491047800790127" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(506.80553497308193, 644.9192608937549)"><circle style="transition:all 0.5s ease-out" r="18.11445965018001" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(545.0609216967836, 644.9192608937549)"><circle style="transition:all 0.5s ease-out" r="16.44260517786188" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(527.5668976759181, 677.0058285714975)"><circle style="transition:all 0.5s ease-out" r="16.40477994906827" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(487.0464859929721, 487.14655564690855)"><circle style="transition:all 0.5s ease-out" r="19.060305936444163" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(535.3444159754515, 484.8904068083557)"><circle style="transition:all 0.5s ease-out" r="15.990567179253391" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(514.6215824497657, 511.34627206023634)"><circle style="transition:all 0.5s ease-out" r="14.4239350792876" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(512.2670926647514, 466.6943960134845)"><circle style="transition:all 0.5s ease-out" r="10.20687312882667" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(491.9060631394056, 455.35685513243317)"><circle style="transition:all 0.5s ease-out" r="9.897876528805293" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(490.0647162076588, 516.7805837985553)"><circle style="transition:all 0.5s ease-out" r="7.527029262001147" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(218.90470517807438, 348.8975640701663)"><circle style="transition:all 0.5s ease-out" r="23.23865695663944" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(263.897748570021, 348.8975640701663)"><circle style="transition:all 0.5s ease-out" r="18.05606453964743" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(245.76035505439432, 379.1265855503461)"><circle style="transition:all 0.5s ease-out" r="13.498397613472063" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(245.64215184481685, 319.9460017676966)"><circle style="transition:all 0.5s ease-out" r="12.47220807169964" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(219.1764754285743, 309.7816398615529)"><circle style="transition:all 0.5s ease-out" r="12.179889449790673" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.82331208444106, 387.9072896837602)"><circle style="transition:all 0.5s ease-out" r="12.087732594050301" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(273.50742457921007, 316.65660888731003)"><circle style="transition:all 0.5s ease-out" r="11.888221431868157" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(274.07584697736354, 380.17581373920433)"><circle style="transition:all 0.5s ease-out" r="11.138205276934404" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(194.9352318121711, 320.1543781794356)"><circle style="transition:all 0.5s ease-out" r="10.489033339595398" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(194.68337547949145, 376.69042265362174)"><circle style="transition:all 0.5s ease-out" r="9.92920891654132" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(239.7888653880401, 294.91403954957343)"><circle style="transition:all 0.5s ease-out" r="9.53666931289336" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(236.46285094518214, 402.2724021048593)"><circle style="transition:all 0.5s ease-out" r="7.746664516216363" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(286.89465648365, 333.49425264004566)"><circle style="transition:all 0.5s ease-out" r="5.92448233856461" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(285.91353475897836, 364.1926532269883)"><circle style="transition:all 0.5s ease-out" r="5.052974379085117" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(132.76370065031568, 415.6027021128269)"><circle style="transition:all 0.5s ease-out" r="19.911527831670302" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(172.14308875130223, 415.6027021128269)"><circle style="transition:all 0.5s ease-out" r="15.769538373656433" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(155.70434337214175, 439.295257297826)"><circle style="transition:all 0.5s ease-out" r="9.369086879005469" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(155.29384872926983, 397.22285551485203)"><circle style="transition:all 0.5s ease-out" r="5.466366213274872" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(148.9120602090983, 295.84263621148966)"><circle style="transition:all 0.5s ease-out" r="10.309822540958223" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(169.84992855796722, 295.84263621148966)"><circle style="transition:all 0.5s ease-out" r="6.929723912250872" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(162.41028784794446, 311.21142258549554)"><circle style="transition:all 0.5s ease-out" r="6.4467264747306245" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(162.06299036290415, 283.11184426322336)"><circle style="transition:all 0.5s ease-out" r="4.295407883637237" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(151.2750764089282, 278.0817445488249)"><circle style="transition:all 0.5s ease-out" r="3.9092526459265127" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(205.3645645694763, 457.90013177250404)"><circle style="transition:all 0.5s ease-out" r="18.676739679308827" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(243.03115795845014, 457.90013177250404)"><circle style="transition:all 0.5s ease-out" r="15.291531814005214" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.36204096469748, 487.52631078998905)"><circle style="transition:all 0.5s ease-out" r="14.52479548348593" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.0821905370906, 432.01887717557355)"><circle style="transition:all 0.5s ease-out" r="11.410950577700952" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(195.5543597710991, 225.18179724881696)"><circle style="transition:all 0.5s ease-out" r="19.731315121137225" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(237.23682152385618, 225.18179724881696)"><circle style="transition:all 0.5s ease-out" r="18.252824735960072" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.81242379766425, 259.2364604388091)"><circle style="transition:all 0.5s ease-out" r="17.253793261320908" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.72836305316252, 193.93694184605778)"><circle style="transition:all 0.5s ease-out" r="14.883903810073651" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(187.16654924717847, 190.59262232295407)"><circle style="transition:all 0.5s ease-out" r="12.162024751616316" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(190.1273135630443, 255.1561580262486)"><circle style="transition:all 0.5s ease-out" r="7.032062452536528" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(242.94369730632405, 196.98564325854085)"><circle style="transition:all 0.5s ease-out" r="6.816743993865343" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(745.8331530170916, 586.8758283634883)"><circle style="transition:all 0.5s ease-out" r="1.6344077502417678" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(752.761828372684, 586.8758283634883)"><circle style="transition:all 0.5s ease-out" r="1.5959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.3352882215776, 592.7375129962556)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143903" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(776.1220576016395, 588.7020287174994)"><circle style="transition:all 0.5s ease-out" r="4.302633133291499" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(786.6402621760786, 588.7020287174994)"><circle style="transition:all 0.5s ease-out" r="2.5172495454878896" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(683.2277486579728, 709.1521932450389)"><circle style="transition:all 0.5s ease-out" r="1.6344077502417678" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(690.1564240135652, 709.1521932450389)"><circle style="transition:all 0.5s ease-out" r="1.5959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(686.7298838624588, 715.0138778778063)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143903" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(713.5166532425206, 710.97839359905)"><circle style="transition:all 0.5s ease-out" r="4.302633133291499" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(724.022487965464, 710.97839359905)"><circle style="transition:all 0.5s ease-out" r="2.5048796939921276" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(692.4300595955604, 460.14176546615033)"><circle style="transition:all 0.5s ease-out" r="1.6344077502417678" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(699.3587349511528, 460.14176546615033)"><circle style="transition:all 0.5s ease-out" r="1.5959457096908318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(695.9321948000463, 466.0034500989177)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143903" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(722.7189641801083, 461.96796582016145)"><circle style="transition:all 0.5s ease-out" r="4.302633133291499" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(733.2371687545474, 461.96796582016145)"><circle style="transition:all 0.5s ease-out" r="2.5172495454878896" stroke-width="0" stroke="#374151"></circle></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(320.0440955851615, 687.1095098202745)"><path fill="none" d="M 0 46.02236906512809 A 46.02236906512809 46.02236906512809 0 0 1 0 -46.02236906512809 A 46.02236906512809 46.02236906512809 0 0 1 0 46.02236906512809" id="CircleText--1" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--1" startOffset="50%">views</textPath></text><path fill="none" d="M 0 46.02236906512809 A 46.02236906512809 46.02236906512809 0 0 1 0 -46.02236906512809 A 46.02236906512809 46.02236906512809 0 0 1 0 46.02236906512809" id="CircleText--2" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--2" startOffset="50%">views</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(661.4804553274951, 565.090051603168)"><path fill="none" d="M 0 310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 -310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 310.5611201285023" id="CircleText--3" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--3" startOffset="50%">test</textPath></text><path fill="none" d="M 0 310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 -310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 310.5611201285023" id="CircleText--4" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--4" startOffset="50%">test</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(288.9428814644706, 583.2452646411239)"><path fill="none" d="M 0 56.42382489927201 A 56.42382489927201 56.42382489927201 0 0 1 0 -56.42382489927201 A 56.42382489927201 56.42382489927201 0 0 1 0 56.42382489927201" id="CircleText--5" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--5" startOffset="50%">lua</textPath></text><path fill="none" d="M 0 56.42382489927201 A 56.42382489927201 56.42382489927201 0 0 1 0 -56.42382489927201 A 56.42382489927201 56.42382489927201 0 0 1 0 56.42382489927201" id="CircleText--6" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--6" startOffset="50%">lua</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(198.29056803988027, 337.57526920658273)"><path fill="none" d="M 0 199.43887987149768 A 199.43887987149768 199.43887987149768 0 0 1 0 -199.43887987149768 A 199.43887987149768 199.43887987149768 0 0 1 0 199.43887987149768" id="CircleText--7" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--7" startOffset="50%">lib</textPath></text><path fill="none" d="M 0 199.43887987149768 A 199.43887987149768 199.43887987149768 0 0 1 0 -199.43887987149768 A 199.43887987149768 199.43887987149768 0 0 1 0 199.43887987149768" id="CircleText--8" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--8" startOffset="50%">lib</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(208.90653735006168, 675.48393390541)"><path fill="none" d="M 0 59.70448277314051 A 59.70448277314051 59.70448277314051 0 0 1 0 -59.70448277314051 A 59.70448277314051 59.70448277314051 0 0 1 0 59.70448277314051" id="CircleText--9" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--9" startOffset="50%">docs</textPath></text><path fill="none" d="M 0 59.70448277314051 A 59.70448277314051 59.70448277314051 0 0 1 0 -59.70448277314051 A 59.70448277314051 59.70448277314051 0 0 1 0 59.70448277314051" id="CircleText--10" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--10" startOffset="50%">docs</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(467.6257278331589, 199.4263523617063)"><path fill="none" d="M 0 97.25990031514063 A 97.25990031514063 97.25990031514063 0 0 1 0 -97.25990031514063 A 97.25990031514063 97.25990031514063 0 0 1 0 97.25990031514063" id="CircleText--11" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--11" startOffset="50%">public</textPath></text><path fill="none" d="M 0 97.25990031514063 A 97.25990031514063 97.25990031514063 0 0 1 0 -97.25990031514063 A 97.25990031514063 97.25990031514063 0 0 1 0 97.25990031514063" id="CircleText--12" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--12" startOffset="50%">public</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(779.026580496945, 569.8306716213199)"><path fill="none" d="M 0 62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 -62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 62.69816687266827" id="CircleText--13" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--13" startOffset="50%">rails6_dummy</textPath></text><path fill="none" d="M 0 62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 -62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 62.69816687266827" id="CircleText--14" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--14" startOffset="50%">rails6_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(717.8942018035817, 692.9668225846455)"><path fill="none" d="M 0 62.8583199246666 A 62.8583199246666 62.8583199246666 0 0 1 0 -62.8583199246666 A 62.8583199246666 62.8583199246666 0 0 1 0 62.8583199246666" id="CircleText--15" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--15" startOffset="50%">rails5_dummy</textPath></text><path fill="none" d="M 0 62.8583199246666 A 62.8583199246666 62.8583199246666 0 0 1 0 -62.8583199246666 A 62.8583199246666 62.8583199246666 0 0 1 0 62.8583199246666" id="CircleText--16" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--16" startOffset="50%">rails5_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(725.623487075414, 443.09660872398206)"><path fill="none" d="M 0 62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 -62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 62.69816687266827" id="CircleText--17" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--17" startOffset="50%">rails4_dummy</textPath></text><path fill="none" d="M 0 62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 -62.69816687266827 A 62.69816687266827 62.69816687266827 0 0 1 0 62.69816687266827" id="CircleText--18" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--18" startOffset="50%">rails4_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(816.2248010855254, 664.9010560509214)"><path fill="none" d="M 0 27.454166736894678 A 27.454166736894678 27.454166736894678 0 0 1 0 -27.454166736894678 A 27.454166736894678 27.454166736894678 0 0 1 0 27.454166736894678" id="CircleText--19" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--19" startOffset="50%">integration</textPath></text><path fill="none" d="M 0 27.454166736894678 A 27.454166736894678 27.454166736894678 0 0 1 0 -27.454166736894678 A 27.454166736894678 27.454166736894678 0 0 1 0 27.454166736894678" id="CircleText--20" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--20" startOffset="50%">integration</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(831.1291944101946, 473.1163753017442)"><path fill="none" d="M 0 35.07246111008901 A 35.07246111008901 35.07246111008901 0 0 1 0 -35.07246111008901 A 35.07246111008901 35.07246111008901 0 0 1 0 35.07246111008901" id="CircleText--21" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--21" startOffset="50%">forked</textPath></text><path fill="none" d="M 0 35.07246111008901 A 35.07246111008901 35.07246111008901 0 0 1 0 -35.07246111008901 A 35.07246111008901 35.07246111008901 0 0 1 0 35.07246111008901" id="CircleText--22" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--22" startOffset="50%">forked</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(896.8247901002761, 619.3863730582293)"><path fill="none" d="M 0 53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 -53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 53.16148452897065" id="CircleText--23" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--23" startOffset="50%">fixtures</textPath></text><path fill="none" d="M 0 53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 -53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 53.16148452897065" id="CircleText--24" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--24" startOffset="50%">fixtures</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(526.9232224004262, 561.9278965746462)"><path fill="none" d="M 0 156.8010872216729 A 156.8010872216729 156.8010872216729 0 0 1 0 -156.8010872216729 A 156.8010872216729 156.8010872216729 0 0 1 0 156.8010872216729" id="CircleText--25" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--25" startOffset="50%">coverband</textPath></text><path fill="none" d="M 0 156.8010872216729 A 156.8010872216729 156.8010872216729 0 0 1 0 -156.8010872216729 A 156.8010872216729 156.8010872216729 0 0 1 0 156.8010872216729" id="CircleText--26" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--26" startOffset="50%">coverband</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(917.7984642878176, 514.1842004195438)"><path fill="none" d="M 0 42.23693945990571 A 42.23693945990571 42.23693945990571 0 0 1 0 -42.23693945990571 A 42.23693945990571 42.23693945990571 0 0 1 0 42.23693945990571" id="CircleText--27" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--27" startOffset="50%">benchmarks</textPath></text><path fill="none" d="M 0 42.23693945990571 A 42.23693945990571 42.23693945990571 0 0 1 0 -42.23693945990571 A 42.23693945990571 42.23693945990571 0 0 1 0 42.23693945990571" id="CircleText--28" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--28" startOffset="50%">benchmarks</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(271.1401033139684, 583.2452646411239)"><path fill="none" d="M 0 30.922724853109983 A 30.922724853109983 30.922724853109983 0 0 1 0 -30.922724853109983 A 30.922724853109983 30.922724853109983 0 0 1 0 30.922724853109983" id="CircleText--29" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--29" startOffset="50%">test</textPath></text><path fill="none" d="M 0 30.922724853109983 A 30.922724853109983 30.922724853109983 0 0 1 0 -30.922724853109983 A 30.922724853109983 30.922724853109983 0 0 1 0 30.922724853109983" id="CircleText--30" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--30" startOffset="50%">test</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(216.719663954882, 337.57526920658273)"><path fill="none" d="M 0 173.31146206083613 A 173.31146206083613 173.31146206083613 0 0 1 0 -173.31146206083613 A 173.31146206083613 173.31146206083613 0 0 1 0 173.31146206083613" id="CircleText--31" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--31" startOffset="50%">coverband</textPath></text><path fill="none" d="M 0 173.31146206083613 A 173.31146206083613 173.31146206083613 0 0 1 0 -173.31146206083613 A 173.31146206083613 173.31146206083613 0 0 1 0 173.31146206083613" id="CircleText--32" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--32" startOffset="50%">coverband</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(429.99486304915393, 163.42743119638348)"><path fill="none" d="M 0 25.553137938561655 A 25.553137938561655 25.553137938561655 0 0 1 0 -25.553137938561655 A 25.553137938561655 25.553137938561655 0 0 1 0 25.553137938561655" id="CircleText--33" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--33" startOffset="50%">images</textPath></text><path fill="none" d="M 0 25.553137938561655 A 25.553137938561655 25.553137938561655 0 0 1 0 -25.553137938561655 A 25.553137938561655 25.553137938561655 0 0 1 0 25.553137938561655" id="CircleText--34" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--34" startOffset="50%">images</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(500.1972119486214, 164.9155590044101)"><path fill="none" d="M 0 32.80574943627837 A 32.80574943627837 32.80574943627837 0 0 1 0 -32.80574943627837 A 32.80574943627837 32.80574943627837 0 0 1 0 32.80574943627837" id="CircleText--35" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--35" startOffset="50%">colorbox</textPath></text><path fill="none" d="M 0 32.80574943627837 A 32.80574943627837 32.80574943627837 0 0 1 0 -32.80574943627837 A 32.80574943627837 32.80574943627837 0 0 1 0 32.80574943627837" id="CircleText--36" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--36" startOffset="50%">colorbox</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(798.8291935675396, 547.8666020954927)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--37" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--37" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--38" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--38" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(766.4509352230351, 588.7020287174994)"><path fill="none" d="M 0 33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 -33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 33.02053532290673" id="CircleText--39" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--39" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 -33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 33.02053532290673" id="CircleText--40" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--40" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(737.847577305749, 671.6696925563696)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--41" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--41" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--42" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--42" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(703.8331610124205, 710.97839359905)"><path fill="none" d="M 0 33.008165471410976 A 33.008165471410976 33.008165471410976 0 0 1 0 -33.008165471410976 A 33.008165471410976 33.008165471410976 0 0 1 0 33.008165471410976" id="CircleText--43" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--43" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.008165471410976 A 33.008165471410976 33.008165471410976 0 0 1 0 -33.008165471410976 A 33.008165471410976 33.008165471410976 0 0 1 0 33.008165471410976" id="CircleText--44" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--44" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(745.4261001460089, 421.1325391981552)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--45" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--45" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--46" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--46" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(713.0478418015039, 461.96796582016145)"><path fill="none" d="M 0 33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 -33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 33.02053532290673" id="CircleText--47" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--47" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 -33.02053532290673 A 33.02053532290673 33.02053532290673 0 0 1 0 33.02053532290673" id="CircleText--48" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--48" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(885.1160757896747, 619.3877075929283)"><path fill="none" d="M 0 34.45277014231552 A 34.45277014231552 34.45277014231552 0 0 1 0 -34.45277014231552 A 34.45277014231552 34.45277014231552 0 0 1 0 34.45277014231552" id="CircleText--49" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--49" startOffset="50%">app</textPath></text><path fill="none" d="M 0 34.45277014231552 A 34.45277014231552 34.45277014231552 0 0 1 0 -34.45277014231552 A 34.45277014231552 34.45277014231552 0 0 1 0 34.45277014231552" id="CircleText--50" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--50" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(594.0351154989643, 566.3657633746082)"><path fill="none" d="M 0 54.32332841316584 A 54.32332841316584 54.32332841316584 0 0 1 0 -54.32332841316584 A 54.32332841316584 54.32332841316584 0 0 1 0 54.32332841316584" id="CircleText--51" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--51" startOffset="50%">utils</textPath></text><path fill="none" d="M 0 54.32332841316584 A 54.32332841316584 54.32332841316584 0 0 1 0 -54.32332841316584 A 54.32332841316584 54.32332841316584 0 0 1 0 54.32332841316584" id="CircleText--52" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--52" startOffset="50%">utils</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(458.8500617878015, 593.611303270355)"><path fill="none" d="M 0 32.247515503957146 A 32.247515503957146 32.247515503957146 0 0 1 0 -32.247515503957146 A 32.247515503957146 32.247515503957146 0 0 1 0 32.247515503957146" id="CircleText--53" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--53" startOffset="50%">reporters</textPath></text><path fill="none" d="M 0 32.247515503957146 A 32.247515503957146 32.247515503957146 0 0 1 0 -32.247515503957146 A 32.247515503957146 32.247515503957146 0 0 1 0 32.247515503957146" id="CircleText--54" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--54" startOffset="50%">reporters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(415.74389402939596, 523.1522317988723)"><path fill="none" d="M 0 32.05392064923874 A 32.05392064923874 32.05392064923874 0 0 1 0 -32.05392064923874 A 32.05392064923874 32.05392064923874 0 0 1 0 32.05392064923874" id="CircleText--55" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--55" startOffset="50%">integrations</textPath></text><path fill="none" d="M 0 32.05392064923874 A 32.05392064923874 32.05392064923874 0 0 1 0 -32.05392064923874 A 32.05392064923874 32.05392064923874 0 0 1 0 32.05392064923874" id="CircleText--56" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--56" startOffset="50%">integrations</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(524.9928948663716, 654.7638039861382)"><path fill="none" d="M 0 39.49357187372217 A 39.49357187372217 39.49357187372217 0 0 1 0 -39.49357187372217 A 39.49357187372217 39.49357187372217 0 0 1 0 39.49357187372217" id="CircleText--57" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--57" startOffset="50%">collectors</textPath></text><path fill="none" d="M 0 39.49357187372217 A 39.49357187372217 39.49357187372217 0 0 1 0 -39.49357187372217 A 39.49357187372217 39.49357187372217 0 0 1 0 39.49357187372217" id="CircleText--58" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--58" startOffset="50%">collectors</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(505.3304213924775, 487.37955101909495)"><path fill="none" d="M 0 46.1076007272085 A 46.1076007272085 46.1076007272085 0 0 1 0 -46.1076007272085 A 46.1076007272085 46.1076007272085 0 0 1 0 46.1076007272085" id="CircleText--59" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--59" startOffset="50%">adapters</textPath></text><path fill="none" d="M 0 46.1076007272085 A 46.1076007272085 46.1076007272085 0 0 1 0 -46.1076007272085 A 46.1076007272085 46.1076007272085 0 0 1 0 46.1076007272085" id="CircleText--60" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--60" startOffset="50%">adapters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(238.15357248072655, 347.69864762740275)"><path fill="none" d="M 0 63.04492429715643 A 63.04492429715643 63.04492429715643 0 0 1 0 -63.04492429715643 A 63.04492429715643 63.04492429715643 0 0 1 0 63.04492429715643" id="CircleText--61" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--61" startOffset="50%">utils</textPath></text><path fill="none" d="M 0 63.04492429715643 A 63.04492429715643 63.04492429715643 0 0 1 0 -63.04492429715643 A 63.04492429715643 63.04492429715643 0 0 1 0 63.04492429715643" id="CircleText--62" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--62" startOffset="50%">utils</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(150.38239997180202, 415.6027021128269)"><path fill="none" d="M 0 38.228549048816426 A 38.228549048816426 38.228549048816426 0 0 1 0 -38.228549048816426 A 38.228549048816426 38.228549048816426 0 0 1 0 38.228549048816426" id="CircleText--63" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--63" startOffset="50%">reporters</textPath></text><path fill="none" d="M 0 38.228549048816426 A 38.228549048816426 38.228549048816426 0 0 1 0 -38.228549048816426 A 38.228549048816426 38.228549048816426 0 0 1 0 38.228549048816426" id="CircleText--64" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--64" startOffset="50%">reporters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(157.24689592365561, 295.84920760056417)"><path fill="none" d="M 0 23.351783556943573 A 23.351783556943573 23.351783556943573 0 0 1 0 -23.351783556943573 A 23.351783556943573 23.351783556943573 0 0 1 0 23.351783556943573" id="CircleText--65" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--65" startOffset="50%">integrations</textPath></text><path fill="none" d="M 0 23.351783556943573 A 23.351783556943573 23.351783556943573 0 0 1 0 -23.351783556943573 A 23.351783556943573 23.351783556943573 0 0 1 0 23.351783556943573" id="CircleText--66" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--66" startOffset="50%">integrations</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(227.14146867600607, 461.32995075917034)"><path fill="none" d="M 0 41.42040599836763 A 41.42040599836763 41.42040599836763 0 0 1 0 -41.42040599836763 A 41.42040599836763 41.42040599836763 0 0 1 0 41.42040599836763" id="CircleText--67" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--67" startOffset="50%">collectors</textPath></text><path fill="none" d="M 0 41.42040599836763 A 41.42040599836763 41.42040599836763 0 0 1 0 -41.42040599836763 A 41.42040599836763 41.42040599836763 0 0 1 0 41.42040599836763" id="CircleText--68" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--68" startOffset="50%">collectors</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(207.28791388730727, 225.57708296821903)"><path fill="none" d="M 0 53.21851560501153 A 53.21851560501153 53.21851560501153 0 0 1 0 -53.21851560501153 A 53.21851560501153 53.21851560501153 0 0 1 0 53.21851560501153" id="CircleText--69" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--69" startOffset="50%">adapters</textPath></text><path fill="none" d="M 0 53.21851560501153 A 53.21851560501153 53.21851560501153 0 0 1 0 -53.21851560501153 A 53.21851560501153 53.21851560501153 0 0 1 0 53.21851560501153" id="CircleText--70" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--70" startOffset="50%">adapters</textPath></text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(181.8982561622141, 667.8965963156105)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">coverban...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">coverban...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">coverban...</text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(235.1520986860007, 665.5639261363586)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">coverban...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">coverban...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">coverban...</text></g><g style="fill:#f1e05a;transition:transform 0s ease-out" transform="translate(414.822024149365, 225.1375475360698)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">dependenci...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">dependenci...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">dependenci...</text></g><g style="fill:#563d7c;transition:transform 0s ease-out" transform="translate(512.6954159742601, 234.6698595934178)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">applicatio...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">applicatio...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">applicatio...</text></g><g style="fill:#083fa1;transition:transform 0s ease-out" transform="translate(319.7591050031551, 805.6688459724203)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">README.md</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">README.md</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">README.md</text></g><g style="fill:#083fa1;transition:transform 0s ease-out" transform="translate(392.15237940306065, 806.6964709054038)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">changes.md</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">changes.md</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">changes.md</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(907.9725663811307, 514.0609705067272)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">benchmark...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">benchmark...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">benchmark...</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(145.2385972306276, 347.69864762740275)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">configur...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">configur...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">configur...</text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(495.73801288091903, 164.87788235205613)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">loading.gif</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">loading.gif</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">loading.gif</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(218.90470517807438, 348.8975640701663)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">source_f...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">source_f...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">source_f...</text></g><g transform="translate(940, 740)"><g transform="translate(0, 0)"><circle r="5" fill="#563d7c"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.css</text></g><g transform="translate(0, 15)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.erb</text></g><g transform="translate(0, 30)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.gemspec</text></g><g transform="translate(0, 45)"><circle r="5" fill="#000000"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.gitignore</text></g><g transform="translate(0, 60)"><circle r="5" fill="#ece2a9"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.haml</text></g><g transform="translate(0, 75)"><circle r="5" fill="#f1e05a"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.js</text></g><g transform="translate(0, 90)"><circle r="5" fill="#000080"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.lua</text></g><g transform="translate(0, 105)"><circle r="5" fill="#083fa1"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.md</text></g><g transform="translate(0, 120)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.rake</text></g><g transform="translate(0, 135)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.rb</text></g><g transform="translate(0, 150)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.ru</text></g><g transform="translate(0, 165)"><circle r="5" fill="#89e051"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.sh</text></g><g transform="translate(0, 180)"><circle r="5" fill="#2b2b2b"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.slim</text></g><g transform="translate(0, 195)"><circle r="5" fill="#ff9900"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.svg</text></g><g transform="translate(0, 210)"><circle r="5" fill="#199f4b"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.txt</text></g><g transform="translate(0, 225)"><circle r="5" fill="#cb171e"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.yml</text></g><g fill="#9CA3AF" style="font-weight:300;font-style:italic;font-size:12px">each dot sized by file size</g></g></svg>
1
+ <svg width="1000" height="1000" style="background:white;font-family:sans-serif;overflow:visible" xmlns="http://www.w3.org/2000/svg"><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="4" result="coloredBlur"></feGaussianBlur><feMerge><feMergeNode in="coloredBlur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter></defs><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(320.0440955851613, 687.1095098202743)"><circle r="41.0223690651281" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(661.4804553274951, 565.0900516031681)"><circle r="305.5611201285023" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(288.9428814644705, 583.2452646411235)"><circle r="51.42382489927203" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(198.29056803988055, 337.5752692065822)"><circle r="194.43887987149773" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(208.90653735006148, 675.4839339054097)"><circle r="54.70448277314053" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(467.62572783315943, 199.42635236170597)"><circle r="92.25990031514071" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(310.08296187238335, 685.6384827820033)"><circle style="transition:all 0.5s ease-out" r="13.299028563894721" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(346.0050009856996, 685.8005401247326)"><circle style="transition:all 0.5s ease-out" r="12.028484959832372" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(328.93665337151947, 706.6667327359944)"><circle style="transition:all 0.5s ease-out" r="11.743638456818244" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(329.0265820181665, 668.0954026167574)"><circle style="transition:all 0.5s ease-out" r="9.31589078189489" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(309.05817469826945, 660.2211276837338)"><circle style="transition:all 0.5s ease-out" r="8.976275495532933" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(305.7585310369056, 710.2717082656536)"><circle style="transition:all 0.5s ease-out" r="8.510899465026252" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(345.693546811314, 666.3283315944777)"><circle style="transition:all 0.5s ease-out" r="4.24448676951863" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(344.8062043587553, 702.4578918669059)"><circle style="transition:all 0.5s ease-out" r="1.4745523900395068" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(704.0130009267003, 526.8945922551312)"><circle style="transition:all 0.5s ease-out" r="16.533032652648004" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(779.0265804969448, 569.8306716213202)"><circle r="61.6981668726683" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(717.8942018035813, 692.9668225846458)"><circle r="61.85831992466662" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(725.6234870754139, 443.0966087239823)"><circle r="61.6981668726683" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(816.2248010855251, 664.9010560509219)"><circle r="26.454166736894685" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(831.1291944101944, 473.1163753017446)"><circle r="34.07246111008902" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(896.8247901002759, 619.3863730582299)"><circle r="52.16148452897065" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(853.7454304870963, 527.1382548108802)"><circle style="transition:all 0.5s ease-out" r="15.961403253503194" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(526.9232224004259, 561.9278965746463)"><circle r="155.80108722167293" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(917.7984642878178, 514.1842004195445)"><circle r="41.23693945990572" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(703.6822329006824, 591.1144869647278)"><circle style="transition:all 0.5s ease-out" r="8.02630323509105" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(856.5806107543642, 559.165810239285)"><circle style="transition:all 0.5s ease-out" r="8.006930039485082" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(852.317368732135, 572.7976878502546)"><circle style="transition:all 0.5s ease-out" r="3.0728968284834415" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(770.9108070466517, 642.4415481089178)"><circle style="transition:all 0.5s ease-out" r="2.7977664490618945" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(792.2668738614016, 498.29098670104605)"><circle style="transition:all 0.5s ease-out" r="2.390672571769306" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(773.5169038017946, 497.5394519638012)"><circle style="transition:all 0.5s ease-out" r="2.172866185307277" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(271.1401033139682, 583.2452646411235)"><circle r="29.922724853109994" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(320.7147672654104, 583.2452646411235)"><circle style="transition:all 0.5s ease-out" r="15.953617202672337" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(304.6269882462286, 600.905177867421)"><circle style="transition:all 0.5s ease-out" r="4.237162369290774" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(24.129945031214476, 337.5752692065822)"><circle style="transition:all 0.5s ease-out" r="16.579934967171837" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(216.7196639548823, 337.5752692065822)"><circle r="172.31146206083616" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(39.18389976549244, 354.4357756737933)"><circle style="transition:all 0.5s ease-out" r="2.324801148697585" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(181.8982561622121, 667.8965963156165)"><circle style="transition:all 0.5s ease-out" r="23.650696140612183" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(235.1520986859985, 665.563926136353)"><circle style="transition:all 0.5s ease-out" r="23.646755780802433" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(212.80154791822704, 709.1802046668524)"><circle r="17.7838434726412" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(215.95348823955632, 634.781776762123)"><circle style="transition:all 0.5s ease-out" r="9.556191686063613" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(195.14095699913577, 635.7730372435528)"><circle style="transition:all 0.5s ease-out" r="8.049489522879226" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(208.35293740607125, 674.2562664837936)"><circle style="transition:all 0.5s ease-out" r="2.5902284130107796" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(204.79546338036621, 682.4001409768272)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487577" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(213.09470902755157, 681.5338103668971)"><circle style="transition:all 0.5s ease-out" r="2.5661327412662343" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(231.1993141113285, 636.178524249702)"><circle style="transition:all 0.5s ease-out" r="2.553999657970546" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(207.99738754289993, 656.8696010522789)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(211.357267257043, 649.3382854007112)"><circle style="transition:all 0.5s ease-out" r="2.51724954548789" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#f1e05a;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(414.8220241493654, 225.13754753606952)"><circle style="transition:all 0.5s ease-out" r="30.529187055210553" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#563d7c;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(512.6954159742604, 234.66985959341756)"><circle style="transition:all 0.5s ease-out" r="30.52613459436653" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(459.09401779544265, 257.59119691339134)"><circle style="transition:all 0.5s ease-out" r="21.231213728206328" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#f1e05a;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(463.6290000039327, 209.78308702984688)"><circle style="transition:all 0.5s ease-out" r="17.64012673878576" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(429.9948630491546, 163.4274311963832)"><circle r="24.553137938561665" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(500.197211948622, 164.9155590044098)"><circle r="31.8057494362784" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(450.831255977882, 229.4398213234365)"><circle style="transition:all 0.5s ease-out" r="2.6141019906151572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(476.6027118772827, 237.180568762732)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487577" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(477.00311069307065, 228.84520809619698)"><circle style="transition:all 0.5s ease-out" r="2.5661327412662343" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(432.119226555109, 257.01925098845095)"><circle style="transition:all 0.5s ease-out" r="2.553999657970546" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(469.5138689451539, 232.441504523016)"><circle style="transition:all 0.5s ease-out" r="2.541808659208787" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(319.7591050031548, 805.6688459724202)"><circle style="transition:all 0.5s ease-out" r="30.536308277233346" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(392.1523794030603, 806.6964709054034)"><circle style="transition:all 0.5s ease-out" r="29.603531218879485" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(366.19198410199033, 854.768800588129)"><circle style="transition:all 0.5s ease-out" r="14.432546384579647" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(375.9300563425946, 760.0677642146627)"><circle style="transition:all 0.5s ease-out" r="13.859447824501748" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(341.73197393655727, 764.8739874722233)"><circle style="transition:all 0.5s ease-out" r="12.598581143164463" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(342.65853558478807, 841.9277659917557)"><circle style="transition:all 0.5s ease-out" r="9.161231543165425" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(356.7774448061204, 784.5181793927715)"><circle style="transition:all 0.5s ease-out" r="8.941604545206419" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(356.19178264046775, 826.4169117568249)"><circle style="transition:all 0.5s ease-out" r="8.225079893329148" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#199f4b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(322.86931202491365, 847.4756653359799)"><circle style="transition:all 0.5s ease-out" r="8.191021445197382" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(405.0869268832439, 771.632058084219)"><circle style="transition:all 0.5s ease-out" r="4.555115764012364" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000000;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(390.9446194715077, 843.6694978899665)"><circle style="transition:all 0.5s ease-out" r="4.192947291157433" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(394.6337541296217, 768.1041266999961)"><circle style="transition:all 0.5s ease-out" r="3.2783040995438975" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(368.75402375765935, 834.0392904428882)"><circle style="transition:all 0.5s ease-out" r="3.2688155004835364" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(381.11352157218545, 840.6320399819573)"><circle style="transition:all 0.5s ease-out" r="2.895963404371752" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(370.4444099615012, 778.8012060714244)"><circle style="transition:all 0.5s ease-out" r="2.6728531912102067" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#083fa1;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(359.2643548188532, 770.0869070244897)"><circle style="transition:all 0.5s ease-out" r="2.4924484525239845" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(388.7371631170108, 772.9313451400711)"><circle style="transition:all 0.5s ease-out" r="1.1421833699466706" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(753.7289101917194, 535.3832451510488)"><circle style="transition:all 0.5s ease-out" r="15.959457096908322" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(798.8291935675398, 547.8666020954935)"><circle r="19.785508043185736" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(766.4509352230344, 588.7020287174995)"><circle r="36.02053532290675" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(769.2045379114994, 545.1978480712345)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462793" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(778.8413147628413, 548.1139368728197)"><circle style="transition:all 0.5s ease-out" r="3.1130671194246937" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(696.3721539993559, 655.8573374059551)"><circle style="transition:all 0.5s ease-out" r="15.959457096908322" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(737.8475773057486, 671.66969255637)"><circle r="20.302671609765945" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(703.8331610124201, 710.9783935990504)"><circle r="36.00816547141098" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(711.8237424971333, 668.4618130482025)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462793" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(719.4196606166047, 673.193662589512)"><circle style="transition:all 0.5s ease-out" r="1.9939587620191874" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(700.3258167701888, 408.6491822537106)"><circle style="transition:all 0.5s ease-out" r="15.959457096908322" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(745.4261001460092, 421.1325391981557)"><circle r="19.785508043185736" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(713.0478418015034, 461.9679658201615)"><circle r="36.02053532290675" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(715.8014444899688, 418.46378517389644)"><circle style="transition:all 0.5s ease-out" r="3.7552522398462793" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(725.4382213413106, 421.37987397548187)"><circle style="transition:all 0.5s ease-out" r="3.1130671194246937" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(803.9668698168911, 664.9010560509219)"><circle style="transition:all 0.5s ease-out" r="10.497913572600915" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(828.5718756059559, 664.9010560509219)"><circle style="transition:all 0.5s ease-out" r="10.408770320804074" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(815.0265494402948, 471.62504630626734)"><circle style="transition:all 0.5s ease-out" r="14.202582789663454" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(843.0855194523328, 471.62504630626734)"><circle style="transition:all 0.5s ease-out" r="10.158065326714812" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(832.8046422103037, 493.29363138790177)"><circle style="transition:all 0.5s ease-out" r="10.127441002195805" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(832.6094482949997, 451.56629178366575)"><circle style="transition:all 0.5s ease-out" r="8.773276935352108" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(885.1160757896745, 619.3877075929289)"><circle r="37.45277014231553" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(936.8250038534792, 619.4423965039002)"><circle style="transition:all 0.5s ease-out" r="9.161231543165425" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(931.4512126875001, 632.6868783605919)"><circle style="transition:all 0.5s ease-out" r="3.062771934966543" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(930.9693990649134, 607.5109014969189)"><circle style="transition:all 0.5s ease-out" r="2.229313668103115" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(928.2191424895043, 600.8659312975528)"><circle style="transition:all 0.5s ease-out" r="1.762427202537626" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(927.3617271272764, 639.3977315754133)"><circle style="transition:all 0.5s ease-out" r="1.595945709690832" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(924.9038923038592, 595.7727921287513)"><circle style="transition:all 0.5s ease-out" r="1.1146568340515572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(509.2101274402586, 561.1285898554693)"><circle style="transition:all 0.5s ease-out" r="16.911956103361995" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(594.0351154989638, 566.3657633746085)"><circle r="57.32332841316585" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(458.850061787801, 593.611303270355)"><circle r="35.24751550395715" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(415.7438940293957, 523.1522317988723)"><circle r="35.053920649238755" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.9928948663709, 654.7638039861384)"><circle r="42.49357187372219" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(505.33042139247726, 487.379551019095)"><circle r="49.10760072720852" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(583.2685923837618, 640.4296318393759)"><circle style="transition:all 0.5s ease-out" r="9.749265567922787" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(527.7361726360534, 544.7034088431643)"><circle style="transition:all 0.5s ease-out" r="4.66960067913704" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(907.972566381131, 514.060970506728)"><circle style="transition:all 0.5s ease-out" r="26.688990921692266" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(946.8307843176606, 512.2414949050201)"><circle style="transition:all 0.5s ease-out" r="9.00046569472376" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#89e051;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(941.3252296120834, 531.3255498964007)"><circle style="transition:all 0.5s ease-out" r="7.661998973911638" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(934.261496369253, 492.3421914561861)"><circle style="transition:all 0.5s ease-out" r="4.200348792577748" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(937.4192093747499, 501.3796298903501)"><circle style="transition:all 0.5s ease-out" r="2.172866185307277" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000000;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(930.1970141604477, 535.595940439652)"><circle style="transition:all 0.5s ease-out" r="1.0574563215225756" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(259.5640046073321, 583.2452646411235)"><circle style="transition:all 0.5s ease-out" r="14.648304250814057" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(287.6375685126122, 583.2452646411235)"><circle style="transition:all 0.5s ease-out" r="9.726937758806242" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(277.27787378114857, 598.5906657828161)"><circle style="transition:all 0.5s ease-out" r="5.08972376784831" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#000080;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(276.79082690554264, 571.8439180468591)"><circle style="transition:all 0.5s ease-out" r="2.311401606839607" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(145.23859723062782, 347.69864762740224)"><circle style="transition:all 0.5s ease-out" r="23.171729057282757" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(238.15357248072684, 347.69864762740224)"><circle r="66.04492429715646" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(150.38239997180227, 415.60270211282636)"><circle r="41.22854904881643" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(157.24689592365584, 295.84920760056366)"><circle r="26.351783556943587" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.14146867600633, 461.32995075916983)"><circle r="44.420405998367634" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(207.28791388730755, 225.57708296821852)"><circle r="56.218515605011554" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(127.72494526061479, 318.51235810585007)"><circle style="transition:all 0.5s ease-out" r="7.16768547829812" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(248.71569839782808, 274.513288876657)"><circle style="transition:all 0.5s ease-out" r="4.200348792577748" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(209.65871646106274, 708.4060817754512)"><circle style="transition:all 0.5s ease-out" r="2.5661327412662343" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.70939100093068, 710.5065080121914)"><circle style="transition:all 0.5s ease-out" r="2.553999657970546" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(211.88205241859302, 716.4109707092156)"><circle style="transition:all 0.5s ease-out" r="2.541808659208787" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(215.50132171832544, 702.5169024374999)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(202.28641573585958, 704.6293890665039)"><circle style="transition:all 0.5s ease-out" r="2.51724954548789" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ff9900;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(203.8341030172719, 714.2783224421274)"><circle style="transition:all 0.5s ease-out" r="2.504879693992128" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(223.45691401805325, 704.5929458355382)"><circle style="transition:all 0.5s ease-out" r="2.4924484525239845" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(425.66049366015994, 162.39649640191774)"><circle style="transition:all 0.5s ease-out" r="2.637759504410497" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(434.12118166124463, 162.62580740679127)"><circle style="transition:all 0.5s ease-out" r="2.625957389262632" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(429.70693872393343, 169.81943369228344)"><circle style="transition:all 0.5s ease-out" r="2.6141019906151572" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(430.1009400527615, 155.21843081970505)"><circle style="transition:all 0.5s ease-out" r="2.602192580201019" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(421.713151919664, 154.9436535842551)"><circle style="transition:all 0.5s ease-out" r="2.5902284130107796" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(421.31683064278377, 169.60490214928654)"><circle style="transition:all 0.5s ease-out" r="2.5782087267487577" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(438.46607259301186, 155.44532960128217)"><circle style="transition:all 0.5s ease-out" r="2.5661327412662343" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(438.3312464170361, 169.871223949124)"><circle style="transition:all 0.5s ease-out" r="2.553999657970546" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(417.29007513657416, 162.00473209595285)"><circle style="transition:all 0.5s ease-out" r="2.541808659208787" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(413.02452491120516, 169.09138170580943)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(442.4640623983199, 162.69979859714735)"><circle style="transition:all 0.5s ease-out" r="2.51724954548789" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(446.59255877135035, 169.81027867422054)"><circle style="transition:all 0.5s ease-out" r="2.504879693992128" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(434.5130140198101, 148.19451091724835)"><circle style="transition:all 0.5s ease-out" r="2.4924484525239845" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(495.73801288091965, 164.87788235205582)"><circle style="transition:all 0.5s ease-out" r="23.648069307023743" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(525.6139629912279, 164.87788235205582)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.3129980601932, 173.51319335693657)"><circle style="transition:all 0.5s ease-out" r="2.504879693992128" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#CED6E0;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(524.3042107479487, 156.25647345379937)"><circle style="transition:all 0.5s ease-out" r="2.4924484525239845" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(794.4774479504858, 548.1356811114016)"><circle style="transition:all 0.5s ease-out" r="4.479478396177409" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(806.2552942979823, 549.2363929693095)"><circle style="transition:all 0.5s ease-out" r="4.14826096444222" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(799.8372622639664, 557.5602341790801)"><circle style="transition:all 0.5s ease-out" r="3.1625625455423996" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(801.4786873752445, 539.9485036455743)"><circle style="transition:all 0.5s ease-out" r="3.0930471875277585" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(788.4745740435021, 539.455213429994)"><circle style="transition:all 0.5s ease-out" r="2.8744317792723213" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(788.4732586671385, 556.392439293017)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(810.1007008170399, 540.3459939717364)"><circle style="transition:all 0.5s ease-out" r="2.338123900453204" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.2757512364076, 588.7020287174995)"><circle r="9.229714407564451" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(780.4884680949566, 588.7020287174995)"><circle r="12.367365522269086" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(729.7865604298578, 672.368301787349)"><circle style="transition:all 0.5s ease-out" r="7.058515445451928" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.0173675912392, 671.4445530885108)"><circle style="transition:all 0.5s ease-out" r="6.130612587283567" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(740.5847191672291, 682.264415839197)"><circle style="transition:all 0.5s ease-out" r="4.38840834407152" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(739.5931479164078, 661.8202396954226)"><circle style="transition:all 0.5s ease-out" r="4.1407663585657914" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(730.4124242287338, 660.1316291284224)"><circle style="transition:all 0.5s ease-out" r="1.9939587620191874" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(686.670346877289, 710.9783935990504)"><circle r="9.229714407564451" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(717.8706938843422, 710.9783935990504)"><circle r="12.354995670773324" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(741.0743545289549, 421.4016182140637)"><circle style="transition:all 0.5s ease-out" r="4.479478396177409" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(752.8522008764515, 422.5023300719715)"><circle style="transition:all 0.5s ease-out" r="4.14826096444222" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#cb171e;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(746.4341688424355, 430.8261712817422)"><circle style="transition:all 0.5s ease-out" r="3.1625625455423996" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(748.0755939537137, 413.2144407482364)"><circle style="transition:all 0.5s ease-out" r="3.0930471875277585" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(735.0714806219715, 412.72115053265594)"><circle style="transition:all 0.5s ease-out" r="2.8744317792723213" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(735.0701652456086, 429.65837639567974)"><circle style="transition:all 0.5s ease-out" r="2.5295589076247826" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(756.6976073955091, 413.61193107439857)"><circle style="transition:all 0.5s ease-out" r="2.338123900453204" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(695.8726578148766, 461.9679658201615)"><circle r="9.229714407564451" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(727.0853746734256, 461.9679658201615)"><circle r="12.367365522269086" style="transition:all 0.5s ease-out" stroke="#290819" stroke-opacity="0.2" stroke-width="1" fill="white"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(867.3152447456911, 619.3877075929289)"><circle style="transition:all 0.5s ease-out" r="15.953617202672337" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(902.9188539401767, 619.3877075929289)"><circle style="transition:all 0.5s ease-out" r="15.951670096153501" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(580.1234587627545, 567.6325186033819)"><circle style="transition:all 0.5s ease-out" r="16.952314446278734" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(615.2735824498051, 566.7641061144061)"><circle style="transition:all 0.5s ease-out" r="15.008596609963858" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(600.3007787596385, 596.2569104543846)"><circle style="transition:all 0.5s ease-out" r="14.867199086729348" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(598.8271096185126, 539.7099184699977)"><circle style="transition:all 0.5s ease-out" r="13.452296394061891" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(569.0933881773469, 536.0445989253675)"><circle style="transition:all 0.5s ease-out" r="13.306033583376465" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(568.2584133381015, 596.8660652970807)"><circle style="transition:all 0.5s ease-out" r="11.397332061597103" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(626.4763468789299, 539.8007588601218)"><circle style="transition:all 0.5s ease-out" r="10.989408453971949" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(628.257989302277, 592.032744531328)"><circle style="transition:all 0.5s ease-out" r="10.200784924808197" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(552.2976241489417, 556.3778517552003)"><circle style="transition:all 0.5s ease-out" r="9.863295942926023" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(552.8967784177412, 578.6580210690795)"><circle style="transition:all 0.5s ease-out" r="9.222059274338744" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(639.0675234171687, 557.7346999545609)"><circle style="transition:all 0.5s ease-out" r="7.240981010529505" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(638.8450084719805, 574.9068297375163)"><circle style="transition:all 0.5s ease-out" r="6.729610821814759" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(443.88962403047935, 590.1913451163624)"><circle style="transition:all 0.5s ease-out" r="16.20283209601191" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(476.9347516683847, 590.1913451163624)"><circle style="transition:all 0.5s ease-out" r="13.143973646233654" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(463.10379275933275, 614.0158968815783)"><circle style="transition:all 0.5s ease-out" r="10.705929285803537" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(462.76575842975313, 570.9487362547126)"><circle style="transition:all 0.5s ease-out" r="7.054113502120485" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(405.9496110731497, 526.5532572819772)"><circle style="transition:all 0.5s ease-out" r="11.000708619892162" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(437.41240207548515, 522.3322595881416)"><circle style="transition:all 0.5s ease-out" r="10.369903600504111" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(424.32526744039245, 540.6949999273659)"><circle style="transition:all 0.5s ease-out" r="8.986650697026098" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(420.0145202037343, 508.5684750556069)"><circle style="transition:all 0.5s ease-out" r="8.623295337816964" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(400.62258698719796, 505.1350834576568)"><circle style="transition:all 0.5s ease-out" r="7.869982459080667" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(409.42271282042736, 543.3477938956881)"><circle style="transition:all 0.5s ease-out" r="2.949104780079014" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(506.80553497308125, 644.9192608937551)"><circle style="transition:all 0.5s ease-out" r="18.114459650180013" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(545.0609216967829, 644.9192608937551)"><circle style="transition:all 0.5s ease-out" r="16.44260517786188" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(527.5668976759175, 677.0058285714978)"><circle style="transition:all 0.5s ease-out" r="16.40477994906827" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(487.04648599297167, 487.1465556469088)"><circle style="transition:all 0.5s ease-out" r="19.060305936444166" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(535.3444159754513, 484.89040680835564)"><circle style="transition:all 0.5s ease-out" r="15.990567179253391" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(514.6215824497654, 511.34627206023634)"><circle style="transition:all 0.5s ease-out" r="14.423935079287604" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(512.267092664751, 466.6943960134847)"><circle style="transition:all 0.5s ease-out" r="10.206873128826672" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(491.90606313940515, 455.35685513243334)"><circle style="transition:all 0.5s ease-out" r="9.897876528805295" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(490.0647162076586, 516.7805837985555)"><circle style="transition:all 0.5s ease-out" r="7.5270292620011485" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(218.90470517807466, 348.8975640701658)"><circle style="transition:all 0.5s ease-out" r="23.238656956639442" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(263.89774857002135, 348.8975640701658)"><circle style="transition:all 0.5s ease-out" r="18.056064539647434" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(245.7603550543946, 379.12658555034557)"><circle style="transition:all 0.5s ease-out" r="13.498397613472067" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(245.64215184481714, 319.94600176769603)"><circle style="transition:all 0.5s ease-out" r="12.472208071699642" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(219.17647542857458, 309.7816398615523)"><circle style="transition:all 0.5s ease-out" r="12.179889449790675" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.82331208444134, 387.9072896837597)"><circle style="transition:all 0.5s ease-out" r="12.087732594050305" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(273.50742457921035, 316.65660888730946)"><circle style="transition:all 0.5s ease-out" r="11.888221431868159" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(274.0758469773638, 380.1758137392038)"><circle style="transition:all 0.5s ease-out" r="11.138205276934405" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(194.9352318121714, 320.15437817943507)"><circle style="transition:all 0.5s ease-out" r="10.4890333395954" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(194.68337547949176, 376.6904226536212)"><circle style="transition:all 0.5s ease-out" r="9.929208916541322" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(239.7888653880404, 294.9140395495729)"><circle style="transition:all 0.5s ease-out" r="9.536669312893363" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(236.46285094518242, 402.27240210485877)"><circle style="transition:all 0.5s ease-out" r="7.746664516216365" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(286.89465648365035, 333.49425264004515)"><circle style="transition:all 0.5s ease-out" r="5.924482338564612" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(285.91353475897864, 364.1926532269878)"><circle style="transition:all 0.5s ease-out" r="5.052974379085119" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(132.76370065031594, 415.60270211282636)"><circle style="transition:all 0.5s ease-out" r="19.911527831670305" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(172.14308875130249, 415.60270211282636)"><circle style="transition:all 0.5s ease-out" r="15.769538373656436" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(155.704343372142, 439.2952572978255)"><circle style="transition:all 0.5s ease-out" r="9.36908687900547" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(155.29384872927008, 397.2228555148515)"><circle style="transition:all 0.5s ease-out" r="5.466366213274873" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(148.91206020909854, 295.84263621148915)"><circle style="transition:all 0.5s ease-out" r="10.309822540958224" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(169.84992855796744, 295.84263621148915)"><circle style="transition:all 0.5s ease-out" r="6.929723912250874" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(162.4102878479447, 311.21142258549503)"><circle style="transition:all 0.5s ease-out" r="6.446726474730628" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(162.06299036290437, 283.11184426322285)"><circle style="transition:all 0.5s ease-out" r="4.295407883637238" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(151.2750764089284, 278.08174454882436)"><circle style="transition:all 0.5s ease-out" r="3.9092526459265136" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(205.36456456947656, 457.9001317725035)"><circle style="transition:all 0.5s ease-out" r="18.676739679308827" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(243.03115795845042, 457.9001317725035)"><circle style="transition:all 0.5s ease-out" r="15.291531814005218" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.36204096469774, 487.52631078998854)"><circle style="transition:all 0.5s ease-out" r="14.524795483485937" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(227.08219053709087, 432.0188771755729)"><circle style="transition:all 0.5s ease-out" r="11.410950577700955" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(195.5543597710994, 225.18179724881645)"><circle style="transition:all 0.5s ease-out" r="19.731315121137225" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(237.23682152385652, 225.18179724881645)"><circle style="transition:all 0.5s ease-out" r="18.25282473596008" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.81242379766454, 259.2364604388086)"><circle style="transition:all 0.5s ease-out" r="17.253793261320908" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(217.7283630531628, 193.93694184605727)"><circle style="transition:all 0.5s ease-out" r="14.883903810073654" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(187.16654924717872, 190.59262232295356)"><circle style="transition:all 0.5s ease-out" r="12.162024751616318" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(190.1273135630446, 255.15615802624808)"><circle style="transition:all 0.5s ease-out" r="7.03206245253653" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(242.94369730632434, 196.98564325854034)"><circle style="transition:all 0.5s ease-out" r="6.816743993865346" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(745.8331530170909, 586.8758283634884)"><circle style="transition:all 0.5s ease-out" r="1.634407750241768" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(752.7618283726833, 586.8758283634884)"><circle style="transition:all 0.5s ease-out" r="1.595945709690832" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(749.3352882215769, 592.7375129962558)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143906" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(776.1220576016389, 588.7020287174995)"><circle style="transition:all 0.5s ease-out" r="4.3026331332915" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(786.640262176078, 588.7020287174995)"><circle style="transition:all 0.5s ease-out" r="2.51724954548789" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(683.2277486579724, 709.1521932450393)"><circle style="transition:all 0.5s ease-out" r="1.634407750241768" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(690.1564240135648, 709.1521932450393)"><circle style="transition:all 0.5s ease-out" r="1.595945709690832" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(686.7298838624583, 715.0138778778066)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143906" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(713.5166532425202, 710.9783935990504)"><circle style="transition:all 0.5s ease-out" r="4.3026331332915" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(724.0224879654636, 710.9783935990504)"><circle style="transition:all 0.5s ease-out" r="2.504879693992128" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(692.4300595955599, 460.1417654661504)"><circle style="transition:all 0.5s ease-out" r="1.634407750241768" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#2b2b2b;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(699.3587349511523, 460.1417654661504)"><circle style="transition:all 0.5s ease-out" r="1.595945709690832" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#ece2a9;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(695.9321948000459, 466.00345009891777)"><circle style="transition:all 0.5s ease-out" r="1.4954690715143906" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(722.7189641801078, 461.9679658201615)"><circle style="transition:all 0.5s ease-out" r="4.3026331332915" stroke-width="0" stroke="#374151"></circle></g><g style="fill:#701516;transition:transform 0s ease-out, fill 0.1s ease-out" transform="translate(733.2371687545469, 461.9679658201615)"><circle style="transition:all 0.5s ease-out" r="2.51724954548789" stroke-width="0" stroke="#374151"></circle></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(320.0440955851613, 687.1095098202743)"><path fill="none" d="M 0 46.0223690651281 A 46.0223690651281 46.0223690651281 0 0 1 0 -46.0223690651281 A 46.0223690651281 46.0223690651281 0 0 1 0 46.0223690651281" id="CircleText--1" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--1" startOffset="50%">views</textPath></text><path fill="none" d="M 0 46.0223690651281 A 46.0223690651281 46.0223690651281 0 0 1 0 -46.0223690651281 A 46.0223690651281 46.0223690651281 0 0 1 0 46.0223690651281" id="CircleText--2" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--2" startOffset="50%">views</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(661.4804553274951, 565.0900516031681)"><path fill="none" d="M 0 310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 -310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 310.5611201285023" id="CircleText--3" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--3" startOffset="50%">test</textPath></text><path fill="none" d="M 0 310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 -310.5611201285023 A 310.5611201285023 310.5611201285023 0 0 1 0 310.5611201285023" id="CircleText--4" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--4" startOffset="50%">test</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(288.9428814644705, 583.2452646411235)"><path fill="none" d="M 0 56.42382489927203 A 56.42382489927203 56.42382489927203 0 0 1 0 -56.42382489927203 A 56.42382489927203 56.42382489927203 0 0 1 0 56.42382489927203" id="CircleText--5" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--5" startOffset="50%">lua</textPath></text><path fill="none" d="M 0 56.42382489927203 A 56.42382489927203 56.42382489927203 0 0 1 0 -56.42382489927203 A 56.42382489927203 56.42382489927203 0 0 1 0 56.42382489927203" id="CircleText--6" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--6" startOffset="50%">lua</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(198.29056803988055, 337.5752692065822)"><path fill="none" d="M 0 199.43887987149773 A 199.43887987149773 199.43887987149773 0 0 1 0 -199.43887987149773 A 199.43887987149773 199.43887987149773 0 0 1 0 199.43887987149773" id="CircleText--7" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--7" startOffset="50%">lib</textPath></text><path fill="none" d="M 0 199.43887987149773 A 199.43887987149773 199.43887987149773 0 0 1 0 -199.43887987149773 A 199.43887987149773 199.43887987149773 0 0 1 0 199.43887987149773" id="CircleText--8" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--8" startOffset="50%">lib</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(208.90653735006148, 675.4839339054097)"><path fill="none" d="M 0 59.70448277314054 A 59.70448277314054 59.70448277314054 0 0 1 0 -59.70448277314054 A 59.70448277314054 59.70448277314054 0 0 1 0 59.70448277314054" id="CircleText--9" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--9" startOffset="50%">docs</textPath></text><path fill="none" d="M 0 59.70448277314054 A 59.70448277314054 59.70448277314054 0 0 1 0 -59.70448277314054 A 59.70448277314054 59.70448277314054 0 0 1 0 59.70448277314054" id="CircleText--10" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--10" startOffset="50%">docs</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(467.62572783315943, 199.42635236170597)"><path fill="none" d="M 0 97.25990031514071 A 97.25990031514071 97.25990031514071 0 0 1 0 -97.25990031514071 A 97.25990031514071 97.25990031514071 0 0 1 0 97.25990031514071" id="CircleText--11" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--11" startOffset="50%">public</textPath></text><path fill="none" d="M 0 97.25990031514071 A 97.25990031514071 97.25990031514071 0 0 1 0 -97.25990031514071 A 97.25990031514071 97.25990031514071 0 0 1 0 97.25990031514071" id="CircleText--12" transform="rotate(1)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:15px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--12" startOffset="50%">public</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(779.0265804969448, 569.8306716213202)"><path fill="none" d="M 0 62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 -62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 62.69816687266831" id="CircleText--13" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--13" startOffset="50%">rails6_dummy</textPath></text><path fill="none" d="M 0 62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 -62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 62.69816687266831" id="CircleText--14" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--14" startOffset="50%">rails6_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(717.8942018035813, 692.9668225846458)"><path fill="none" d="M 0 62.85831992466662 A 62.85831992466662 62.85831992466662 0 0 1 0 -62.85831992466662 A 62.85831992466662 62.85831992466662 0 0 1 0 62.85831992466662" id="CircleText--15" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--15" startOffset="50%">rails5_dummy</textPath></text><path fill="none" d="M 0 62.85831992466662 A 62.85831992466662 62.85831992466662 0 0 1 0 -62.85831992466662 A 62.85831992466662 62.85831992466662 0 0 1 0 62.85831992466662" id="CircleText--16" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--16" startOffset="50%">rails5_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(725.6234870754139, 443.0966087239823)"><path fill="none" d="M 0 62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 -62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 62.69816687266831" id="CircleText--17" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--17" startOffset="50%">rails4_dummy</textPath></text><path fill="none" d="M 0 62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 -62.69816687266831 A 62.69816687266831 62.69816687266831 0 0 1 0 62.69816687266831" id="CircleText--18" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--18" startOffset="50%">rails4_dummy</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(816.2248010855251, 664.9010560509219)"><path fill="none" d="M 0 27.454166736894685 A 27.454166736894685 27.454166736894685 0 0 1 0 -27.454166736894685 A 27.454166736894685 27.454166736894685 0 0 1 0 27.454166736894685" id="CircleText--19" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--19" startOffset="50%">integration</textPath></text><path fill="none" d="M 0 27.454166736894685 A 27.454166736894685 27.454166736894685 0 0 1 0 -27.454166736894685 A 27.454166736894685 27.454166736894685 0 0 1 0 27.454166736894685" id="CircleText--20" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--20" startOffset="50%">integration</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(831.1291944101944, 473.1163753017446)"><path fill="none" d="M 0 35.07246111008902 A 35.07246111008902 35.07246111008902 0 0 1 0 -35.07246111008902 A 35.07246111008902 35.07246111008902 0 0 1 0 35.07246111008902" id="CircleText--21" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--21" startOffset="50%">forked</textPath></text><path fill="none" d="M 0 35.07246111008902 A 35.07246111008902 35.07246111008902 0 0 1 0 -35.07246111008902 A 35.07246111008902 35.07246111008902 0 0 1 0 35.07246111008902" id="CircleText--22" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--22" startOffset="50%">forked</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(896.8247901002759, 619.3863730582299)"><path fill="none" d="M 0 53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 -53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 53.16148452897065" id="CircleText--23" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--23" startOffset="50%">fixtures</textPath></text><path fill="none" d="M 0 53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 -53.16148452897065 A 53.16148452897065 53.16148452897065 0 0 1 0 53.16148452897065" id="CircleText--24" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--24" startOffset="50%">fixtures</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(526.9232224004259, 561.9278965746463)"><path fill="none" d="M 0 156.80108722167293 A 156.80108722167293 156.80108722167293 0 0 1 0 -156.80108722167293 A 156.80108722167293 156.80108722167293 0 0 1 0 156.80108722167293" id="CircleText--25" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--25" startOffset="50%">coverband</textPath></text><path fill="none" d="M 0 156.80108722167293 A 156.80108722167293 156.80108722167293 0 0 1 0 -156.80108722167293 A 156.80108722167293 156.80108722167293 0 0 1 0 156.80108722167293" id="CircleText--26" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--26" startOffset="50%">coverband</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(917.7984642878178, 514.1842004195445)"><path fill="none" d="M 0 42.23693945990572 A 42.23693945990572 42.23693945990572 0 0 1 0 -42.23693945990572 A 42.23693945990572 42.23693945990572 0 0 1 0 42.23693945990572" id="CircleText--27" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--27" startOffset="50%">benchmarks</textPath></text><path fill="none" d="M 0 42.23693945990572 A 42.23693945990572 42.23693945990572 0 0 1 0 -42.23693945990572 A 42.23693945990572 42.23693945990572 0 0 1 0 42.23693945990572" id="CircleText--28" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--28" startOffset="50%">benchmarks</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(271.1401033139682, 583.2452646411235)"><path fill="none" d="M 0 30.922724853109997 A 30.922724853109997 30.922724853109997 0 0 1 0 -30.922724853109997 A 30.922724853109997 30.922724853109997 0 0 1 0 30.922724853109997" id="CircleText--29" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--29" startOffset="50%">test</textPath></text><path fill="none" d="M 0 30.922724853109997 A 30.922724853109997 30.922724853109997 0 0 1 0 -30.922724853109997 A 30.922724853109997 30.922724853109997 0 0 1 0 30.922724853109997" id="CircleText--30" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--30" startOffset="50%">test</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(216.7196639548823, 337.5752692065822)"><path fill="none" d="M 0 173.31146206083616 A 173.31146206083616 173.31146206083616 0 0 1 0 -173.31146206083616 A 173.31146206083616 173.31146206083616 0 0 1 0 173.31146206083616" id="CircleText--31" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--31" startOffset="50%">coverband</textPath></text><path fill="none" d="M 0 173.31146206083616 A 173.31146206083616 173.31146206083616 0 0 1 0 -173.31146206083616 A 173.31146206083616 173.31146206083616 0 0 1 0 173.31146206083616" id="CircleText--32" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--32" startOffset="50%">coverband</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(429.9948630491546, 163.4274311963832)"><path fill="none" d="M 0 25.55313793856166 A 25.55313793856166 25.55313793856166 0 0 1 0 -25.55313793856166 A 25.55313793856166 25.55313793856166 0 0 1 0 25.55313793856166" id="CircleText--33" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--33" startOffset="50%">images</textPath></text><path fill="none" d="M 0 25.55313793856166 A 25.55313793856166 25.55313793856166 0 0 1 0 -25.55313793856166 A 25.55313793856166 25.55313793856166 0 0 1 0 25.55313793856166" id="CircleText--34" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--34" startOffset="50%">images</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(500.197211948622, 164.9155590044098)"><path fill="none" d="M 0 32.805749436278404 A 32.805749436278404 32.805749436278404 0 0 1 0 -32.805749436278404 A 32.805749436278404 32.805749436278404 0 0 1 0 32.805749436278404" id="CircleText--35" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--35" startOffset="50%">colorbox</textPath></text><path fill="none" d="M 0 32.805749436278404 A 32.805749436278404 32.805749436278404 0 0 1 0 -32.805749436278404 A 32.805749436278404 32.805749436278404 0 0 1 0 32.805749436278404" id="CircleText--36" transform="rotate(2)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:14px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--36" startOffset="50%">colorbox</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(798.8291935675398, 547.8666020954935)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--37" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--37" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--38" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--38" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(766.4509352230344, 588.7020287174995)"><path fill="none" d="M 0 33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 -33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 33.02053532290675" id="CircleText--39" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--39" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 -33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 33.02053532290675" id="CircleText--40" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--40" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(737.8475773057486, 671.66969255637)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--41" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--41" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--42" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--42" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(703.8331610124201, 710.9783935990504)"><path fill="none" d="M 0 33.00816547141098 A 33.00816547141098 33.00816547141098 0 0 1 0 -33.00816547141098 A 33.00816547141098 33.00816547141098 0 0 1 0 33.00816547141098" id="CircleText--43" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--43" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.00816547141098 A 33.00816547141098 33.00816547141098 0 0 1 0 -33.00816547141098 A 33.00816547141098 33.00816547141098 0 0 1 0 33.00816547141098" id="CircleText--44" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--44" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(745.4261001460092, 421.1325391981557)"><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--45" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--45" startOffset="50%">config</textPath></text><path fill="none" d="M 0 20 A 20 20 0 0 1 0 -20 A 20 20 0 0 1 0 20" id="CircleText--46" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--46" startOffset="50%">config</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(713.0478418015034, 461.9679658201615)"><path fill="none" d="M 0 33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 -33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 33.02053532290675" id="CircleText--47" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--47" startOffset="50%">app</textPath></text><path fill="none" d="M 0 33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 -33.02053532290675 A 33.02053532290675 33.02053532290675 0 0 1 0 33.02053532290675" id="CircleText--48" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--48" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(885.1160757896745, 619.3877075929289)"><path fill="none" d="M 0 34.45277014231553 A 34.45277014231553 34.45277014231553 0 0 1 0 -34.45277014231553 A 34.45277014231553 34.45277014231553 0 0 1 0 34.45277014231553" id="CircleText--49" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--49" startOffset="50%">app</textPath></text><path fill="none" d="M 0 34.45277014231553 A 34.45277014231553 34.45277014231553 0 0 1 0 -34.45277014231553 A 34.45277014231553 34.45277014231553 0 0 1 0 34.45277014231553" id="CircleText--50" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--50" startOffset="50%">app</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(594.0351154989638, 566.3657633746085)"><path fill="none" d="M 0 54.323328413165854 A 54.323328413165854 54.323328413165854 0 0 1 0 -54.323328413165854 A 54.323328413165854 54.323328413165854 0 0 1 0 54.323328413165854" id="CircleText--51" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--51" startOffset="50%">utils</textPath></text><path fill="none" d="M 0 54.323328413165854 A 54.323328413165854 54.323328413165854 0 0 1 0 -54.323328413165854 A 54.323328413165854 54.323328413165854 0 0 1 0 54.323328413165854" id="CircleText--52" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--52" startOffset="50%">utils</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(458.850061787801, 593.611303270355)"><path fill="none" d="M 0 32.24751550395715 A 32.24751550395715 32.24751550395715 0 0 1 0 -32.24751550395715 A 32.24751550395715 32.24751550395715 0 0 1 0 32.24751550395715" id="CircleText--53" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--53" startOffset="50%">reporters</textPath></text><path fill="none" d="M 0 32.24751550395715 A 32.24751550395715 32.24751550395715 0 0 1 0 -32.24751550395715 A 32.24751550395715 32.24751550395715 0 0 1 0 32.24751550395715" id="CircleText--54" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--54" startOffset="50%">reporters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(415.7438940293957, 523.1522317988723)"><path fill="none" d="M 0 32.053920649238755 A 32.053920649238755 32.053920649238755 0 0 1 0 -32.053920649238755 A 32.053920649238755 32.053920649238755 0 0 1 0 32.053920649238755" id="CircleText--55" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--55" startOffset="50%">integrations</textPath></text><path fill="none" d="M 0 32.053920649238755 A 32.053920649238755 32.053920649238755 0 0 1 0 -32.053920649238755 A 32.053920649238755 32.053920649238755 0 0 1 0 32.053920649238755" id="CircleText--56" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--56" startOffset="50%">integrations</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(524.9928948663709, 654.7638039861384)"><path fill="none" d="M 0 39.49357187372219 A 39.49357187372219 39.49357187372219 0 0 1 0 -39.49357187372219 A 39.49357187372219 39.49357187372219 0 0 1 0 39.49357187372219" id="CircleText--57" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--57" startOffset="50%">collectors</textPath></text><path fill="none" d="M 0 39.49357187372219 A 39.49357187372219 39.49357187372219 0 0 1 0 -39.49357187372219 A 39.49357187372219 39.49357187372219 0 0 1 0 39.49357187372219" id="CircleText--58" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--58" startOffset="50%">collectors</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(505.33042139247726, 487.379551019095)"><path fill="none" d="M 0 46.10760072720852 A 46.10760072720852 46.10760072720852 0 0 1 0 -46.10760072720852 A 46.10760072720852 46.10760072720852 0 0 1 0 46.10760072720852" id="CircleText--59" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--59" startOffset="50%">adapters</textPath></text><path fill="none" d="M 0 46.10760072720852 A 46.10760072720852 46.10760072720852 0 0 1 0 -46.10760072720852 A 46.10760072720852 46.10760072720852 0 0 1 0 46.10760072720852" id="CircleText--60" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--60" startOffset="50%">adapters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(238.15357248072684, 347.69864762740224)"><path fill="none" d="M 0 63.044924297156456 A 63.044924297156456 63.044924297156456 0 0 1 0 -63.044924297156456 A 63.044924297156456 63.044924297156456 0 0 1 0 63.044924297156456" id="CircleText--61" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--61" startOffset="50%">utils</textPath></text><path fill="none" d="M 0 63.044924297156456 A 63.044924297156456 63.044924297156456 0 0 1 0 -63.044924297156456 A 63.044924297156456 63.044924297156456 0 0 1 0 63.044924297156456" id="CircleText--62" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--62" startOffset="50%">utils</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(150.38239997180227, 415.60270211282636)"><path fill="none" d="M 0 38.22854904881643 A 38.22854904881643 38.22854904881643 0 0 1 0 -38.22854904881643 A 38.22854904881643 38.22854904881643 0 0 1 0 38.22854904881643" id="CircleText--63" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--63" startOffset="50%">reporters</textPath></text><path fill="none" d="M 0 38.22854904881643 A 38.22854904881643 38.22854904881643 0 0 1 0 -38.22854904881643 A 38.22854904881643 38.22854904881643 0 0 1 0 38.22854904881643" id="CircleText--64" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--64" startOffset="50%">reporters</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(157.24689592365584, 295.84920760056366)"><path fill="none" d="M 0 23.351783556943587 A 23.351783556943587 23.351783556943587 0 0 1 0 -23.351783556943587 A 23.351783556943587 23.351783556943587 0 0 1 0 23.351783556943587" id="CircleText--65" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--65" startOffset="50%">integrations</textPath></text><path fill="none" d="M 0 23.351783556943587 A 23.351783556943587 23.351783556943587 0 0 1 0 -23.351783556943587 A 23.351783556943587 23.351783556943587 0 0 1 0 23.351783556943587" id="CircleText--66" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--66" startOffset="50%">integrations</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(227.14146867600633, 461.32995075916983)"><path fill="none" d="M 0 41.420405998367634 A 41.420405998367634 41.420405998367634 0 0 1 0 -41.420405998367634 A 41.420405998367634 41.420405998367634 0 0 1 0 41.420405998367634" id="CircleText--67" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--67" startOffset="50%">collectors</textPath></text><path fill="none" d="M 0 41.420405998367634 A 41.420405998367634 41.420405998367634 0 0 1 0 -41.420405998367634 A 41.420405998367634 41.420405998367634 0 0 1 0 41.420405998367634" id="CircleText--68" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--68" startOffset="50%">collectors</textPath></text></g><g style="pointer-events:none;transition:all 0.5s ease-out" transform="translate(207.28791388730755, 225.57708296821852)"><path fill="none" d="M 0 53.21851560501156 A 53.21851560501156 53.21851560501156 0 0 1 0 -53.21851560501156 A 53.21851560501156 53.21851560501156 0 0 1 0 53.21851560501156" id="CircleText--69" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151" stroke="white" stroke-width="6"><textPath href="#CircleText--69" startOffset="50%">adapters</textPath></text><path fill="none" d="M 0 53.21851560501156 A 53.21851560501156 53.21851560501156 0 0 1 0 -53.21851560501156 A 53.21851560501156 53.21851560501156 0 0 1 0 53.21851560501156" id="CircleText--70" transform="rotate(3)" style="pointer-events:none"></path><text text-anchor="middle" style="font-size:13px;transition:all 0.5s ease-out" fill="#374151"><textPath href="#CircleText--70" startOffset="50%">adapters</textPath></text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(181.8982561622121, 667.8965963156165)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">coverban...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">coverban...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">coverban...</text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(235.1520986859985, 665.563926136353)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">coverban...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">coverban...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">coverban...</text></g><g style="fill:#f1e05a;transition:transform 0s ease-out" transform="translate(414.8220241493654, 225.13754753606952)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">dependenci...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">dependenci...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">dependenci...</text></g><g style="fill:#563d7c;transition:transform 0s ease-out" transform="translate(512.6954159742604, 234.66985959341756)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">applicatio...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">applicatio...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">applicatio...</text></g><g style="fill:#083fa1;transition:transform 0s ease-out" transform="translate(319.7591050031548, 805.6688459724202)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">README.md</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">README.md</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">README.md</text></g><g style="fill:#083fa1;transition:transform 0s ease-out" transform="translate(392.1523794030603, 806.6964709054034)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">changes.md</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">changes.md</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">changes.md</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(907.972566381131, 514.060970506728)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">benchmark...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">benchmark...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">benchmark...</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(145.23859723062782, 347.69864762740224)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">configur...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">configur...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">configur...</text></g><g style="fill:#CED6E0;transition:transform 0s ease-out" transform="translate(495.73801288091965, 164.87788235205582)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">loading.gif</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">loading.gif</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">loading.gif</text></g><g style="fill:#701516;transition:transform 0s ease-out" transform="translate(218.90470517807466, 348.8975640701658)"><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;transition:all 0.5s ease-out" fill="#4B5563" text-anchor="middle" dominant-baseline="middle" stroke="white" stroke-width="3" stroke-linejoin="round">source_f...</text><text style="pointer-events:none;opacity:1;font-size:14px;font-weight:500;transition:all 0.5s ease-out" text-anchor="middle" dominant-baseline="middle">source_f...</text><text style="pointer-events:none;opacity:0.9;font-size:14px;font-weight:500;mix-blend-mode:color-burn;transition:all 0.5s ease-out" fill="#110101" text-anchor="middle" dominant-baseline="middle">source_f...</text></g><g transform="translate(940, 740)"><g transform="translate(0, 0)"><circle r="5" fill="#563d7c"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.css</text></g><g transform="translate(0, 15)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.erb</text></g><g transform="translate(0, 30)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.gemspec</text></g><g transform="translate(0, 45)"><circle r="5" fill="#000000"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.gitignore</text></g><g transform="translate(0, 60)"><circle r="5" fill="#ece2a9"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.haml</text></g><g transform="translate(0, 75)"><circle r="5" fill="#f1e05a"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.js</text></g><g transform="translate(0, 90)"><circle r="5" fill="#000080"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.lua</text></g><g transform="translate(0, 105)"><circle r="5" fill="#083fa1"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.md</text></g><g transform="translate(0, 120)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.rake</text></g><g transform="translate(0, 135)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.rb</text></g><g transform="translate(0, 150)"><circle r="5" fill="#701516"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.ru</text></g><g transform="translate(0, 165)"><circle r="5" fill="#89e051"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.sh</text></g><g transform="translate(0, 180)"><circle r="5" fill="#2b2b2b"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.slim</text></g><g transform="translate(0, 195)"><circle r="5" fill="#ff9900"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.svg</text></g><g transform="translate(0, 210)"><circle r="5" fill="#199f4b"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.txt</text></g><g transform="translate(0, 225)"><circle r="5" fill="#cb171e"></circle><text x="10" style="font-size:14px;font-weight:300" dominant-baseline="middle">.yml</text></g><g fill="#9CA3AF" style="font-weight:300;font-style:italic;font-size:12px">each dot sized by file size</g></g></svg>
@@ -93,7 +93,7 @@ module Coverband
93
93
  end
94
94
 
95
95
  def file_hash(file)
96
- Coverband::Utils::FileHasher.hash_file(file)
96
+ Coverband::Utils::FileHasher.hash(file)
97
97
  end
98
98
 
99
99
  # TODO: modify to extend report inline?
@@ -30,11 +30,6 @@ module Coverband
30
30
  Coverband.configuration.password == Base64.decode64(auth_header.split[1]).split(":")[1]
31
31
  end
32
32
 
33
- def self.call(env)
34
- @app ||= new
35
- @app.call(env)
36
- end
37
-
38
33
  def call(env)
39
34
  @request = Rack::Request.new(env)
40
35
 
@@ -0,0 +1,52 @@
1
+ ####
2
+ # This is an example coverband configuration file. In a typical Rails app
3
+ # it would be placed in config/coverband.rb
4
+ #
5
+ # Uncomment or adjust the code to your apps needs
6
+ ####
7
+ # Coverband.configure do |config|
8
+ ####
9
+ # set a redis URL and set it with with some reasonable timeouts
10
+ ####
11
+ # redis_url = ENV["COVERBAND_REDIS"] || ENV["REDIS_URL"] || "redis://localhost:6379"
12
+ # config.store = Coverband::Adapters::RedisStore.new(
13
+ # Redis.new(
14
+ # url: redis_url,
15
+ # timeout: ENV.fetch("REDIS_TIMEOUT", 1),
16
+ # reconnect_attempts: ENV.fetch("REDIS_RECONNECT_ATTEMPTS", 1),
17
+ # reconnect_delay: ENV.fetch("REDIS_RECONNECT_DELAY", 0.25),
18
+ # reconnect_delay_max: ENV.fetch("REDIS_RECONNECT_DELAY_MAX", 2.5)
19
+ # )
20
+ # )
21
+
22
+ # Allow folks to reset the coverband data via the web UI
23
+ # config.web_enable_clear = true
24
+
25
+ ###
26
+ # Redis Performance Options. If you running hundreds of web server processes
27
+ # you may want to have some controls on how often they are calling redis
28
+ # This can help a relatively small Redis handle hundreds / thousands of reporting servers.
29
+ ###
30
+ # reduce the CPU and Redis overhead, we don't need reporting every 30s... This is how often each process will try to save reports
31
+ # config.background_reporting_sleep_seconds = 400
32
+ # add a wiggle to avoid cache stampede and flatten out Redis CPU...
33
+ # This can help if you have many servers restart around a deploy and are all hitting redis at the same time.
34
+ # config.reporting_wiggle = 90
35
+
36
+ # ignore various files for whatever reason. I often ignore the below list as some are setup before coverband and not always
37
+ # tracked correctly... Accepts regex or exact match strings.
38
+ # config.ignore = %w[config/*
39
+ # config/locales/*
40
+ # config/environments/*
41
+ # config/initializers/*]
42
+
43
+ # config options false, true, or 'debug'. Always use false in production
44
+ # true and debug can give helpful and interesting code usage information
45
+ # they both increase the performance overhead of the gem a little.
46
+ # they can also help with initially debugging the installation.
47
+ # defaults to false
48
+ # config.verbose = false
49
+
50
+ # allow the web UI to display raw coverband data, generally only useful for coverband development
51
+ # config.web_debug = true
52
+ # end
@@ -5,7 +5,7 @@ module Coverband
5
5
  class FileHasher
6
6
  @cache = {}
7
7
 
8
- def self.hash_file(file, path_converter: AbsoluteFileConverter.instance)
8
+ def self.hash(file, path_converter: AbsoluteFileConverter.instance)
9
9
  @cache[file] ||= begin
10
10
  file = path_converter.convert(file)
11
11
  Digest::MD5.file(file).hexdigest if File.exist?(file)
@@ -4,6 +4,14 @@ namespace :coverband do
4
4
  # handles configuring in require => false and COVERBAND_DISABLE_AUTO_START cases
5
5
  Coverband.configure unless Coverband.configured?
6
6
 
7
+ desc "install coverband configuration file defaults"
8
+ task :install do
9
+ require "fileutils"
10
+ full_path = Gem::Specification.find_by_name("coverband").full_gem_path
11
+ config_template = File.expand_path("lib/coverband/utils/configuration_template.rb", full_path)
12
+ FileUtils.cp(config_template, "./config/coverband.rb")
13
+ end
14
+
7
15
  desc "report runtime Coverband code coverage"
8
16
  task :coverage do
9
17
  Coverband::Reporters::ConsoleReport.report(Coverband.configuration.store)
@@ -5,5 +5,5 @@
5
5
  # use format "4.2.1.rc.1" ~> 4.2.1.rc to prerelease versions like v4.2.1.rc.2 and v4.2.1.rc.3
6
6
  ###
7
7
  module Coverband
8
- VERSION = "5.2.3.2"
8
+ VERSION = "5.2.4"
9
9
  end
@@ -6,17 +6,17 @@ module Coverband
6
6
  module Utils
7
7
  class FileHasherTest < Minitest::Test
8
8
  def test_hash_same_file
9
- refute_nil FileHasher.hash_file("./test/dog.rb")
10
- assert_equal(FileHasher.hash_file("./test/dog.rb"), FileHasher.hash_file("./test/dog.rb"))
11
- assert_equal(FileHasher.hash_file(File.expand_path("./test/dog.rb")), FileHasher.hash_file("./test/dog.rb"))
9
+ refute_nil FileHasher.hash("./test/dog.rb")
10
+ assert_equal(FileHasher.hash("./test/dog.rb"), FileHasher.hash("./test/dog.rb"))
11
+ assert_equal(FileHasher.hash(File.expand_path("./test/dog.rb")), FileHasher.hash("./test/dog.rb"))
12
12
  end
13
13
 
14
14
  def test_hash_different_files
15
- refute_equal(FileHasher.hash_file("./test/dog.rb"), FileHasher.hash_file("./lib/coverband.rb"))
15
+ refute_equal(FileHasher.hash("./test/dog.rb"), FileHasher.hash("./lib/coverband.rb"))
16
16
  end
17
17
 
18
18
  def test_hash_file_not_exists
19
- assert_nil(FileHasher.hash_file("./made_up_file.py"))
19
+ assert_nil(FileHasher.hash("./made_up_file.py"))
20
20
  end
21
21
  end
22
22
  end
data/test/test_helper.rb CHANGED
@@ -100,7 +100,7 @@ def test(name, &block)
100
100
  end
101
101
 
102
102
  def mock_file_hash(hash: "abcd")
103
- Coverband::Utils::FileHasher.expects(:hash_file).at_least_once.returns(hash)
103
+ Coverband::Utils::FileHasher.expects(:hash).at_least_once.returns(hash)
104
104
  end
105
105
 
106
106
  def example_line
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coverband
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.2.3.2
4
+ version: 5.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Mayer
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-07-04 00:00:00.000000000 Z
12
+ date: 2022-07-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: benchmark-ips
@@ -315,6 +315,7 @@ files:
315
315
  - lib/coverband/reporters/html_report.rb
316
316
  - lib/coverband/reporters/web.rb
317
317
  - lib/coverband/utils/absolute_file_converter.rb
318
+ - lib/coverband/utils/configuration_template.rb
318
319
  - lib/coverband/utils/dead_methods.rb
319
320
  - lib/coverband/utils/file_hasher.rb
320
321
  - lib/coverband/utils/file_list.rb
@@ -499,7 +500,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
499
500
  - !ruby/object:Gem::Version
500
501
  version: '0'
501
502
  requirements: []
502
- rubygems_version: 3.2.32
503
+ rubygems_version: 3.0.3
503
504
  signing_key:
504
505
  specification_version: 4
505
506
  summary: Rack middleware to measure production code usage (LOC runtime usage)