diff --git a/README.md b/README.md index 157e3c0..8825b98 100644 --- a/README.md +++ b/README.md @@ -240,6 +240,7 @@ Benchmark script options: ## HASH * [HDEL](https://sugardb.io/docs/commands/hash/hdel) * [HEXISTS](https://sugardb.io/docs/commands/hash/hexists) +* [HEXPIRE](https://sugardb.io/docs/commands/hash/hexpire) * [HGET](https://sugardb.io/docs/commands/hash/hget) * [HGETALL](https://sugardb.io/docs/commands/hash/hgetall) * [HINCRBY](https://sugardb.io/docs/commands/hash/hincrby) @@ -251,6 +252,7 @@ Benchmark script options: * [HSET](https://sugardb.io/docs/commands/hash/hset) * [HSETNX](https://sugardb.io/docs/commands/hash/hsetnx) * [HSTRLEN](https://sugardb.io/docs/commands/hash/hstrlen) +* [HTTL](https://sugardb.io/docs/commands/hash/httl) * [HVALS](https://sugardb.io/docs/commands/hash/hvals) diff --git a/coverage/coverage.out b/coverage/coverage.out index ffca1ee..cd4f2bd 100644 --- a/coverage/coverage.out +++ b/coverage/coverage.out @@ -4,6 +4,13 @@ github.com/echovault/echovault/cmd/main.go:30.16,32.3 1 0 github.com/echovault/echovault/cmd/main.go:34.2,44.16 5 0 github.com/echovault/echovault/cmd/main.go:44.16,46.3 1 0 github.com/echovault/echovault/cmd/main.go:48.2,52.19 3 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 0 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 0 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 @@ -187,11 +194,11 @@ github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 0 github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 0 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 0 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 0 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 0 github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 0 github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 0 github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 0 @@ -360,88 +367,6 @@ github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:55.54,56.28 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:56.28,58.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:61.55,62.28 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:62.28,64.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:67.55,68.28 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:68.28,70.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:73.57,74.28 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:74.28,76.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:79.85,80.28 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:80.28,82.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:85.68,93.55 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:93.56,93.57 0 0 -github.com/echovault/echovault/internal/aof/log/store.go:96.2,96.33 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:96.33,98.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:101.2,101.46 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:101.46,104.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:104.17,106.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:107.3,108.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:108.17,110.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:111.3,111.15 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:116.2,116.51 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:116.51,117.13 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:117.13,119.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:119.17,121.5 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:122.4,122.8 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:122.8,124.40 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:124.40,127.11 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:129.5,130.15 2 0 -github.com/echovault/echovault/internal/aof/log/store.go:135.2,135.19 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:138.63,140.21 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:140.21,142.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:144.2,150.39 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:150.39,152.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:152.17,154.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:155.3,155.35 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:158.2,158.51 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:158.51,160.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:162.2,162.49 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:162.49,163.38 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:163.38,165.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:168.2,168.12 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:171.34,172.21 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:172.21,174.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:175.2,175.12 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:178.37,183.47 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:183.47,185.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:187.2,190.6 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:190.6,192.34 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:192.34,194.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:195.3,195.13 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:195.13,197.9 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:200.3,201.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:201.17,203.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:206.3,207.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:207.17,209.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:211.3,211.42 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:211.42,213.18 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:213.18,215.5 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:217.4,217.12 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:220.3,220.41 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:223.2,223.12 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:226.38,230.45 3 0 -github.com/echovault/echovault/internal/aof/log/store.go:230.45,232.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:235.2,235.47 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:235.47,237.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:240.2,242.16 2 0 -github.com/echovault/echovault/internal/aof/log/store.go:242.16,244.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:246.2,246.39 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:246.39,248.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:250.2,250.12 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:253.35,256.21 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:256.21,258.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:259.2,259.41 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:259.41,261.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:262.2,262.12 1 1 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 0 github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 0 github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 @@ -449,6 +374,51 @@ github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/config/config.go:64.34,70.24 3 0 +github.com/echovault/echovault/internal/config/config.go:70.24,72.35 2 0 +github.com/echovault/echovault/internal/config/config.go:72.35,74.5 1 0 +github.com/echovault/echovault/internal/config/config.go:75.4,75.22 1 0 +github.com/echovault/echovault/internal/config/config.go:75.22,77.5 1 0 +github.com/echovault/echovault/internal/config/config.go:78.4,79.14 2 0 +github.com/echovault/echovault/internal/config/config.go:82.2,82.115 1 0 +github.com/echovault/echovault/internal/config/config.go:82.115,85.3 2 0 +github.com/echovault/echovault/internal/config/config.go:87.2,90.29 2 0 +github.com/echovault/echovault/internal/config/config.go:90.29,91.86 1 0 +github.com/echovault/echovault/internal/config/config.go:91.86,93.5 1 0 +github.com/echovault/echovault/internal/config/config.go:93.7,95.5 1 0 +github.com/echovault/echovault/internal/config/config.go:96.4,97.14 2 0 +github.com/echovault/echovault/internal/config/config.go:100.2,103.59 2 0 +github.com/echovault/echovault/internal/config/config.go:103.59,105.17 2 0 +github.com/echovault/echovault/internal/config/config.go:105.17,107.4 1 0 +github.com/echovault/echovault/internal/config/config.go:108.3,109.13 2 0 +github.com/echovault/echovault/internal/config/config.go:112.2,121.88 2 0 +github.com/echovault/echovault/internal/config/config.go:121.88,128.23 3 0 +github.com/echovault/echovault/internal/config/config.go:128.23,130.5 1 0 +github.com/echovault/echovault/internal/config/config.go:131.4,132.14 2 0 +github.com/echovault/echovault/internal/config/config.go:135.2,139.24 2 0 +github.com/echovault/echovault/internal/config/config.go:139.24,140.36 1 0 +github.com/echovault/echovault/internal/config/config.go:140.36,142.5 1 0 +github.com/echovault/echovault/internal/config/config.go:143.4,144.14 2 0 +github.com/echovault/echovault/internal/config/config.go:147.2,188.14 23 0 +github.com/echovault/echovault/internal/config/config.go:188.14,190.3 1 0 +github.com/echovault/echovault/internal/config/config.go:191.2,192.14 2 0 +github.com/echovault/echovault/internal/config/config.go:192.14,194.3 1 0 +github.com/echovault/echovault/internal/config/config.go:196.2,226.22 2 0 +github.com/echovault/echovault/internal/config/config.go:226.22,228.45 1 0 +github.com/echovault/echovault/internal/config/config.go:228.45,229.14 1 0 +github.com/echovault/echovault/internal/config/config.go:230.9,231.17 1 0 +github.com/echovault/echovault/internal/config/config.go:231.17,232.36 1 0 +github.com/echovault/echovault/internal/config/config.go:232.36,234.6 1 0 +github.com/echovault/echovault/internal/config/config.go:237.4,239.22 2 0 +github.com/echovault/echovault/internal/config/config.go:239.22,240.59 1 0 +github.com/echovault/echovault/internal/config/config.go:240.59,242.6 1 0 +github.com/echovault/echovault/internal/config/config.go:245.4,245.39 1 0 +github.com/echovault/echovault/internal/config/config.go:245.39,246.59 1 0 +github.com/echovault/echovault/internal/config/config.go:246.59,248.6 1 0 +github.com/echovault/echovault/internal/config/config.go:254.2,256.45 2 0 +github.com/echovault/echovault/internal/config/config.go:256.45,258.3 1 0 +github.com/echovault/echovault/internal/config/config.go:260.2,260.18 1 0 +github.com/echovault/echovault/internal/config/default.go:9.29,42.2 3 0 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 @@ -691,11 +661,11 @@ github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 0 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 0 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 0 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 0 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 0 github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 0 github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 0 @@ -864,58 +834,88 @@ github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 0 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:55.54,56.28 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:56.28,58.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:61.55,62.28 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:62.28,64.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:67.55,68.28 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:68.28,70.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:73.57,74.28 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:74.28,76.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:79.85,80.28 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:80.28,82.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:85.68,93.55 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:93.56,93.57 0 0 +github.com/echovault/echovault/internal/aof/log/store.go:96.2,96.33 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:96.33,98.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:101.2,101.46 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:101.46,104.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:104.17,106.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:107.3,108.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:108.17,110.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:111.3,111.15 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:116.2,116.51 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:116.51,117.13 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:117.13,119.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:119.17,121.5 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:122.4,122.8 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:122.8,124.40 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:124.40,127.11 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:129.5,130.15 2 0 +github.com/echovault/echovault/internal/aof/log/store.go:135.2,135.19 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:138.63,140.21 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:140.21,142.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:144.2,150.39 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:150.39,152.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:152.17,154.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:155.3,155.35 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:158.2,158.51 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:158.51,160.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:162.2,162.49 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:162.49,163.38 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:163.38,165.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:168.2,168.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:171.34,172.21 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:172.21,174.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:175.2,175.12 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:178.37,183.47 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:183.47,185.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:187.2,190.6 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:190.6,192.34 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:192.34,194.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:195.3,195.13 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:195.13,197.9 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:200.3,201.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:201.17,203.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:206.3,207.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:207.17,209.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:211.3,211.42 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:211.42,213.18 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:213.18,215.5 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:217.4,217.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:220.3,220.41 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:223.2,223.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:226.38,230.45 3 0 +github.com/echovault/echovault/internal/aof/log/store.go:230.45,232.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:235.2,235.47 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:235.47,237.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:240.2,242.16 2 0 +github.com/echovault/echovault/internal/aof/log/store.go:242.16,244.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:246.2,246.39 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:246.39,248.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:250.2,250.12 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:253.35,256.21 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:256.21,258.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:259.2,259.41 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:259.41,261.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:262.2,262.12 1 1 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/config/config.go:64.34,70.24 3 0 -github.com/echovault/echovault/internal/config/config.go:70.24,72.35 2 0 -github.com/echovault/echovault/internal/config/config.go:72.35,74.5 1 0 -github.com/echovault/echovault/internal/config/config.go:75.4,75.22 1 0 -github.com/echovault/echovault/internal/config/config.go:75.22,77.5 1 0 -github.com/echovault/echovault/internal/config/config.go:78.4,79.14 2 0 -github.com/echovault/echovault/internal/config/config.go:82.2,82.115 1 0 -github.com/echovault/echovault/internal/config/config.go:82.115,85.3 2 0 -github.com/echovault/echovault/internal/config/config.go:87.2,90.29 2 0 -github.com/echovault/echovault/internal/config/config.go:90.29,91.86 1 0 -github.com/echovault/echovault/internal/config/config.go:91.86,93.5 1 0 -github.com/echovault/echovault/internal/config/config.go:93.7,95.5 1 0 -github.com/echovault/echovault/internal/config/config.go:96.4,97.14 2 0 -github.com/echovault/echovault/internal/config/config.go:100.2,103.59 2 0 -github.com/echovault/echovault/internal/config/config.go:103.59,105.17 2 0 -github.com/echovault/echovault/internal/config/config.go:105.17,107.4 1 0 -github.com/echovault/echovault/internal/config/config.go:108.3,109.13 2 0 -github.com/echovault/echovault/internal/config/config.go:112.2,121.88 2 0 -github.com/echovault/echovault/internal/config/config.go:121.88,128.23 3 0 -github.com/echovault/echovault/internal/config/config.go:128.23,130.5 1 0 -github.com/echovault/echovault/internal/config/config.go:131.4,132.14 2 0 -github.com/echovault/echovault/internal/config/config.go:135.2,139.24 2 0 -github.com/echovault/echovault/internal/config/config.go:139.24,140.36 1 0 -github.com/echovault/echovault/internal/config/config.go:140.36,142.5 1 0 -github.com/echovault/echovault/internal/config/config.go:143.4,144.14 2 0 -github.com/echovault/echovault/internal/config/config.go:147.2,188.14 23 0 -github.com/echovault/echovault/internal/config/config.go:188.14,190.3 1 0 -github.com/echovault/echovault/internal/config/config.go:191.2,192.14 2 0 -github.com/echovault/echovault/internal/config/config.go:192.14,194.3 1 0 -github.com/echovault/echovault/internal/config/config.go:196.2,226.22 2 0 -github.com/echovault/echovault/internal/config/config.go:226.22,228.45 1 0 -github.com/echovault/echovault/internal/config/config.go:228.45,229.14 1 0 -github.com/echovault/echovault/internal/config/config.go:230.9,231.17 1 0 -github.com/echovault/echovault/internal/config/config.go:231.17,232.36 1 0 -github.com/echovault/echovault/internal/config/config.go:232.36,234.6 1 0 -github.com/echovault/echovault/internal/config/config.go:237.4,239.22 2 0 -github.com/echovault/echovault/internal/config/config.go:239.22,240.59 1 0 -github.com/echovault/echovault/internal/config/config.go:240.59,242.6 1 0 -github.com/echovault/echovault/internal/config/config.go:245.4,245.39 1 0 -github.com/echovault/echovault/internal/config/config.go:245.39,246.59 1 0 -github.com/echovault/echovault/internal/config/config.go:246.59,248.6 1 0 -github.com/echovault/echovault/internal/config/config.go:254.2,256.45 2 0 -github.com/echovault/echovault/internal/config/config.go:256.45,258.3 1 0 -github.com/echovault/echovault/internal/config/config.go:260.2,260.18 1 0 -github.com/echovault/echovault/internal/config/default.go:9.29,42.2 3 0 github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 @@ -1215,52 +1215,6 @@ github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 1 github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:39.30,47.2 3 1 -github.com/echovault/echovault/internal/eviction/lfu.go:49.58,51.69 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:51.69,53.3 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:55.2,55.19 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:55.19,58.3 2 0 -github.com/echovault/echovault/internal/eviction/lfu.go:58.8,60.3 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:64.32,67.2 2 0 -github.com/echovault/echovault/internal/eviction/lfu.go:69.34,71.2 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:73.44,75.54 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:75.54,77.3 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:79.2,79.56 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:82.39,86.2 3 1 -github.com/echovault/echovault/internal/eviction/lfu.go:88.38,97.2 3 1 -github.com/echovault/echovault/internal/eviction/lfu.go:99.34,108.2 8 1 -github.com/echovault/echovault/internal/eviction/lfu.go:110.43,113.26 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:113.26,116.3 2 1 -github.com/echovault/echovault/internal/eviction/lfu.go:118.2,118.69 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:118.69,120.3 1 1 -github.com/echovault/echovault/internal/eviction/lfu.go:121.2,123.27 3 1 -github.com/echovault/echovault/internal/eviction/lfu.go:126.43,127.73 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:127.73,129.3 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:130.2,130.19 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:130.19,132.3 1 0 -github.com/echovault/echovault/internal/eviction/lfu.go:135.50,138.2 2 1 -github.com/echovault/echovault/internal/eviction/lru.go:38.30,46.2 3 1 -github.com/echovault/echovault/internal/eviction/lru.go:48.59,50.69 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:50.69,52.3 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:53.2,53.19 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:53.19,56.3 2 0 -github.com/echovault/echovault/internal/eviction/lru.go:56.8,58.3 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:61.32,64.2 2 0 -github.com/echovault/echovault/internal/eviction/lru.go:66.34,68.2 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:70.44,72.2 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:74.39,78.2 3 1 -github.com/echovault/echovault/internal/eviction/lru.go:80.38,87.2 2 1 -github.com/echovault/echovault/internal/eviction/lru.go:89.34,98.2 8 1 -github.com/echovault/echovault/internal/eviction/lru.go:100.43,103.26 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:103.26,105.3 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:107.2,107.69 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:107.69,109.3 1 1 -github.com/echovault/echovault/internal/eviction/lru.go:110.2,112.27 3 1 -github.com/echovault/echovault/internal/eviction/lru.go:115.43,116.73 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:116.73,118.3 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:119.2,119.19 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:119.19,121.3 1 0 -github.com/echovault/echovault/internal/eviction/lru.go:124.50,127.2 2 1 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 @@ -1420,7 +1374,7 @@ github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 1 github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 @@ -2437,11 +2391,57 @@ github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:39.30,47.2 3 1 +github.com/echovault/echovault/internal/eviction/lfu.go:49.58,51.69 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:51.69,53.3 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:55.2,55.19 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:55.19,58.3 2 0 +github.com/echovault/echovault/internal/eviction/lfu.go:58.8,60.3 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:64.32,67.2 2 0 +github.com/echovault/echovault/internal/eviction/lfu.go:69.34,71.2 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:73.44,75.54 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:75.54,77.3 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:79.2,79.56 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:82.39,86.2 3 1 +github.com/echovault/echovault/internal/eviction/lfu.go:88.38,97.2 3 1 +github.com/echovault/echovault/internal/eviction/lfu.go:99.34,108.2 8 1 +github.com/echovault/echovault/internal/eviction/lfu.go:110.43,113.26 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:113.26,116.3 2 1 +github.com/echovault/echovault/internal/eviction/lfu.go:118.2,118.69 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:118.69,120.3 1 1 +github.com/echovault/echovault/internal/eviction/lfu.go:121.2,123.27 3 1 +github.com/echovault/echovault/internal/eviction/lfu.go:126.43,127.73 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:127.73,129.3 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:130.2,130.19 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:130.19,132.3 1 0 +github.com/echovault/echovault/internal/eviction/lfu.go:135.50,138.2 2 1 +github.com/echovault/echovault/internal/eviction/lru.go:38.30,46.2 3 1 +github.com/echovault/echovault/internal/eviction/lru.go:48.59,50.69 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:50.69,52.3 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:53.2,53.19 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:53.19,56.3 2 0 +github.com/echovault/echovault/internal/eviction/lru.go:56.8,58.3 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:61.32,64.2 2 0 +github.com/echovault/echovault/internal/eviction/lru.go:66.34,68.2 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:70.44,72.2 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:74.39,78.2 3 1 +github.com/echovault/echovault/internal/eviction/lru.go:80.38,87.2 2 1 +github.com/echovault/echovault/internal/eviction/lru.go:89.34,98.2 8 1 +github.com/echovault/echovault/internal/eviction/lru.go:100.43,103.26 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:103.26,105.3 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:107.2,107.69 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:107.69,109.3 1 1 +github.com/echovault/echovault/internal/eviction/lru.go:110.2,112.27 3 1 +github.com/echovault/echovault/internal/eviction/lru.go:115.43,116.73 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:116.73,118.3 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:119.2,119.19 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:119.19,121.3 1 0 +github.com/echovault/echovault/internal/eviction/lru.go:124.50,127.2 2 1 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 -github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 +github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 1 github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 @@ -2473,16 +2473,16 @@ github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 1 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 1 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 1 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 1 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 @@ -2498,15 +2498,15 @@ github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 1 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 1 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 1 -github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 1 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 +github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 1 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 1 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 @@ -2519,15 +2519,15 @@ github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 1 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 1 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 1 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 -github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 1 +github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 -github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 1 +github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 @@ -2596,7 +2596,7 @@ github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 1 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 @@ -2620,7 +2620,7 @@ github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 1 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 @@ -2687,2341 +2687,696 @@ github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:27.78,33.29 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:33.29,34.54 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:34.54,40.42 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:40.42,42.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:44.4,47.12 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:50.3,50.36 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:50.36,57.43 5 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:57.43,59.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:61.4,63.21 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:67.2,69.25 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:72.76,76.35 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:76.35,77.65 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:77.65,78.41 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:78.41,80.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:81.4,81.12 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:83.3,83.13 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:86.2,86.51 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:89.75,90.29 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:91.9,96.36 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:96.36,97.66 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:97.66,98.52 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:98.52,102.6 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:103.5,103.13 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:105.4,106.14 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:108.3,109.26 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:111.9,115.56 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:115.56,117.4 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:118.3,118.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:118.53,122.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:122.37,123.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:123.67,124.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:124.53,125.59 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:125.59,129.8 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:131.6,131.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:133.5,133.54 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:133.54,136.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:138.9,138.61 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:138.61,142.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:142.37,143.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:143.67,144.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:144.53,146.24 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:146.24,149.8 2 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:151.6,151.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:153.5,153.33 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:153.33,156.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:158.9,158.60 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:158.60,162.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:162.37,163.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:163.67,164.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:164.53,165.55 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:165.55,169.8 3 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:171.6,171.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:173.5,173.50 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:173.50,176.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:178.9,180.4 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:181.3,182.26 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:183.10,184.54 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:188.75,190.2 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:192.36,200.84 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:200.84,204.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:213.84,217.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:225.86,229.7 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:238.86,242.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:252.86,256.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:267.84,271.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:272.73,273.49 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:273.49,275.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:276.5,276.45 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:285.84,289.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:290.73,292.18 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:292.18,294.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:295.5,295.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:304.84,308.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:309.73,310.47 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:310.47,312.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:313.5,313.45 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:321.84,325.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:335.86,339.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:340.75,341.34 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:341.34,343.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:344.7,345.34 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:345.34,347.8 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:348.7,348.75 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:348.75,350.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:351.7,351.47 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:361.86,365.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:366.75,367.35 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:367.35,369.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:370.7,371.47 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:380.86,384.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:385.75,388.38 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:388.38,390.8 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:391.7,391.30 1 1 -github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 -github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 -github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 -github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 -github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 -github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 -github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 -github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 -github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 -github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 -github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 -github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 -github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 -github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 -github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 -github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 1 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 -github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 -github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 -github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 -github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 -github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 -github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 -github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 -github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 -github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 -github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 -github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 -github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 -github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 -github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 -github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 -github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 -github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 -github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 -github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 -github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 -github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 -github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 -github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 -github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 -github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 -github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 -github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 -github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 -github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 -github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 -github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 -github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 -github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 -github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 -github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 -github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 -github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 -github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 -github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 -github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 -github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 -github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 -github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 -github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 -github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 -github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 -github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 -github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 -github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 -github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 -github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 -github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 -github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 -github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 -github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 -github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 -github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 -github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 -github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 -github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 -github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 -github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 -github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 -github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 -github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 -github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 -github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 -github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 -github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 -github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 -github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 -github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 -github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 -github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 -github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 -github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 -github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 -github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 -github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 -github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 -github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 -github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 -github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 -github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 -github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 -github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 -github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 -github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 -github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 -github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 -github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 -github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 -github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 -github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 -github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 -github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 -github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 -github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 -github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 -github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 -github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 -github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 -github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 -github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 -github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 -github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 -github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 -github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 -github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 -github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 -github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 -github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 -github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 -github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 -github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 -github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 -github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 -github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 -github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 -github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 -github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 -github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 -github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 -github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 -github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 -github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 -github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 -github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 -github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 -github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 -github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 -github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 -github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 -github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 -github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 -github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 -github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 -github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 -github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 -github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 -github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 -github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 -github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 -github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 -github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 -github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 -github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 -github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 -github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:28.68,30.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:30.16,32.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:34.2,38.36 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:38.36,40.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:42.2,42.49 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:42.49,44.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:46.2,46.16 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:46.16,47.17 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:47.17,49.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:50.3,50.95 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:50.95,52.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:53.3,53.59 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:56.2,57.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:57.9,59.95 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:59.95,61.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:62.3,62.59 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:65.2,66.44 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:67.16,69.33 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:69.33,70.26 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:70.26,72.5 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:74.3,74.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:74.34,76.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:77.10,79.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:79.34,80.29 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:80.29,82.5 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:84.3,84.23 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:87.2,87.94 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:87.94,89.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:91.2,91.51 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:94.68,96.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:96.16,98.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:100.2,104.16 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:104.16,106.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:108.2,109.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:109.9,111.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:113.2,116.31 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:116.31,118.19 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:118.19,120.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:122.3,122.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:122.34,124.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:126.3,126.31 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:126.31,128.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:130.3,130.35 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:130.35,133.12 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:135.3,135.32 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:138.2,138.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:141.69,143.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:143.16,145.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:147.2,149.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:149.16,151.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:153.2,154.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:154.9,156.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:158.2,162.31 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:162.31,164.10 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:164.10,166.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:169.3,169.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:169.34,171.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:173.3,173.31 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:173.31,175.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:177.3,177.35 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:177.35,180.12 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:182.3,182.32 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:185.2,185.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:188.71,190.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:190.16,192.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:194.2,198.16 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:198.16,200.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:202.2,203.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:203.9,205.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:207.2,210.31 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:210.31,212.19 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:212.19,214.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:216.3,216.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:216.34,218.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:220.3,220.35 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:220.35,223.12 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:225.3,225.31 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:225.31,227.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:229.3,229.18 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:232.2,232.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:235.69,237.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:237.16,239.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:241.2,244.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:244.16,246.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:248.2,249.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:249.9,251.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:253.2,254.27 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:254.27,255.32 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:255.32,257.12 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:259.3,259.33 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:259.33,262.12 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:264.3,264.29 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:264.29,266.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:269.2,269.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:272.74,274.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:274.16,276.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:278.2,282.30 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:282.30,284.17 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:284.17,286.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:287.3,287.13 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:287.13,289.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:290.3,290.12 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:293.2,294.30 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:294.30,295.57 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:295.57,297.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:297.9,299.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:302.2,302.16 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:302.16,304.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:306.2,307.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:307.9,309.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:312.2,312.24 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:312.24,314.17 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:314.17,316.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:317.3,317.34 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:317.34,319.18 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:319.18,320.36 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:320.36,322.14 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:324.5,324.37 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:324.37,327.14 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:329.5,329.33 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:329.33,331.14 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:335.3,335.26 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:339.2,340.29 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:340.29,342.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:345.2,347.46 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:347.46,351.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:351.16,352.59 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:352.59,354.5 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:358.2,359.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:359.16,361.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:362.2,362.38 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:362.38,364.17 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:364.17,365.41 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:365.41,367.13 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:369.4,369.42 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:369.42,372.13 3 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:374.4,374.38 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:374.38,376.13 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:381.2,381.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:384.68,386.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:386.16,388.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:390.2,393.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:393.16,395.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:397.2,398.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:398.9,400.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:402.2,402.55 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:405.69,407.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:407.16,409.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:411.2,414.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:414.16,416.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:418.2,419.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:419.9,421.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:423.2,424.29 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:424.29,426.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:428.2,428.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:431.71,433.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:433.16,435.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:437.2,444.58 6 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:444.58,446.17 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:446.17,448.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:449.3,449.21 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:450.8,452.17 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:452.17,454.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:455.3,455.19 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:458.2,458.16 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:458.16,460.59 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:460.59,462.93 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:462.93,464.5 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:465.4,465.96 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:466.9,468.93 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:468.93,470.5 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:471.4,471.60 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:475.2,476.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:476.9,478.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:480.2,480.24 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:480.24,482.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:484.2,484.28 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:485.10,486.69 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:487.11,489.59 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:489.59,491.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:491.9,493.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:494.15,496.59 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:496.59,498.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:498.9,500.4 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:503.2,503.91 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:503.91,505.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:507.2,507.40 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:507.40,509.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:511.2,512.47 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:515.71,517.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:517.16,519.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:521.2,524.16 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:524.16,526.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:528.2,529.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:529.9,531.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:533.2,534.33 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:534.33,536.34 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:536.34,538.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:539.3,539.35 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:539.35,542.4 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:543.3,543.31 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:543.31,545.4 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:548.2,548.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:551.71,553.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:553.16,555.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:557.2,561.16 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:561.16,563.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:565.2,566.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:566.9,568.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:570.2,570.24 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:570.24,572.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:574.2,574.30 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:577.68,579.16 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:579.16,581.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:583.2,587.16 4 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:587.16,589.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:591.2,592.9 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:592.9,594.3 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:596.2,598.31 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:598.31,599.25 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:599.25,602.4 2 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:605.2,605.91 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:605.91,607.3 1 0 -github.com/echovault/echovault/internal/modules/hash/commands.go:609.2,609.51 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:612.36,746.2 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:23.74,24.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:24.18,26.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:27.2,31.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:34.76,35.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:35.18,37.3 1 0 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:38.2,42.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:45.74,46.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:46.18,48.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:49.2,53.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:56.75,57.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:57.18,59.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:60.2,64.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:67.77,68.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:68.18,70.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:71.2,75.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:78.75,79.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:79.19,81.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:82.2,86.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:89.80,90.34 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:90.34,92.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:93.2,93.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:93.19,99.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:100.2,104.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:107.74,108.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:108.19,110.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:111.2,115.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:118.75,119.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:119.19,121.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:122.2,126.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:129.77,130.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:130.19,132.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:133.2,137.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:140.77,141.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:141.19,143.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:144.2,148.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:151.77,152.19 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:152.19,154.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:155.2,159.8 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:162.74,163.18 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:163.18,165.3 1 1 -github.com/echovault/echovault/internal/modules/hash/key_funcs.go:166.2,170.8 1 1 -github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 -github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 -github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 -github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 -github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 -github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 -github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 -github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 -github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 -github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 -github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 -github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 -github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 -github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 -github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 -github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 -github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 -github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 -github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 -github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 -github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 -github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 -github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 -github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 -github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 -github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 -github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 -github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 -github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 -github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 -github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 -github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 -github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 -github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 -github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 -github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 -github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 -github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 -github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 -github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 -github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 -github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 -github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 -github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 -github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 -github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 -github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 -github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 -github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 -github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 -github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 -github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 -github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 -github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 -github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 -github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 -github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 -github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 -github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 -github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 -github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 -github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 -github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 -github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 -github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 -github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 -github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 -github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 -github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 -github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 -github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 -github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 -github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 -github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 -github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 -github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 -github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 -github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 -github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 -github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 -github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 -github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 -github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 -github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 -github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 -github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 -github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 -github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 -github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 -github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 -github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 -github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 -github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 -github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 -github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 -github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 -github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 -github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 -github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 -github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 -github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 -github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 -github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 -github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 -github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 -github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 -github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 -github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 -github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 -github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 -github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 -github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 -github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 -github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 -github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 -github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 -github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 -github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 -github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 -github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 -github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 -github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 -github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 -github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 -github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 -github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 -github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 -github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 -github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 -github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 -github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 -github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 -github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 -github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 -github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 -github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 -github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 -github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 -github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 -github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 -github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 -github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 -github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 -github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 -github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 -github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 -github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 -github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 -github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 -github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 -github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 -github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 -github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 -github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 -github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 -github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 -github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 -github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 -github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 -github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 -github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 -github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 -github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 -github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 -github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:27.68,29.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:29.16,31.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:33.2,36.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:36.16,39.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:41.2,41.85 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:41.85,43.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:45.2,45.57 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:48.70,50.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:50.16,52.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:54.2,56.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:56.16,58.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:60.2,61.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:61.9,63.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:65.2,66.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:66.16,68.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:70.2,70.15 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:70.15,72.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:74.2,74.37 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:74.37,76.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:78.2,78.81 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:81.70,83.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:83.16,85.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:87.2,89.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:89.16,91.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:93.2,94.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:94.9,96.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:98.2,99.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:99.16,101.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:103.2,103.15 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:103.15,105.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:107.2,108.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:108.16,110.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:112.2,112.13 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:112.13,114.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:116.2,116.21 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:116.21,118.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:120.2,120.38 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:120.38,122.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:124.2,125.32 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:125.32,127.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:129.2,129.25 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:132.68,134.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:134.16,136.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:138.2,140.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:140.16,142.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:144.2,145.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:145.16,147.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:149.2,150.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:150.9,152.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:155.2,155.15 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:155.15,157.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:159.2,159.40 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:159.40,161.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:163.2,164.91 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:164.91,166.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:168.2,168.42 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:171.69,173.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:173.16,175.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:177.2,179.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:179.16,181.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:183.2,184.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:184.16,186.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:187.2,188.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:188.16,190.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:192.2,193.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:193.9,195.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:198.2,198.15 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:198.15,200.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:201.2,201.13 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:201.13,203.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:206.2,206.40 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:206.40,207.62 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:207.62,209.4 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:210.3,210.43 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:214.2,214.21 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:214.21,216.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:218.2,218.24 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:218.24,220.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:222.2,222.102 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:222.102,224.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:226.2,226.42 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:229.68,231.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:231.16,233.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:235.2,240.16 5 1 -github.com/echovault/echovault/internal/modules/list/commands.go:240.16,242.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:243.2,245.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:245.16,247.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:249.2,250.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:250.9,252.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:254.2,256.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:257.10,259.34 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:259.34,260.24 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:260.24,263.5 2 0 -github.com/echovault/echovault/internal/modules/list/commands.go:265.17,267.34 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:267.34,268.26 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:268.26,269.10 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:271.4,271.24 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:271.24,274.5 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:276.17,278.39 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:278.39,279.26 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:279.26,280.10 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:282.4,282.24 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:282.24,286.5 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:290.2,290.91 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:290.91,292.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:294.2,295.58 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:298.69,300.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:300.16,302.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:304.2,309.116 5 1 -github.com/echovault/echovault/internal/modules/list/commands.go:309.116,311.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:313.2,313.51 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:313.51,315.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:317.2,321.33 4 1 -github.com/echovault/echovault/internal/modules/list/commands.go:321.33,323.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:325.2,325.19 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:326.14,329.33 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:329.33,330.26 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:330.26,332.6 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:334.5,334.50 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:337.15,340.33 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:340.33,341.26 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:341.26,343.6 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:345.5,345.66 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:350.2,350.16 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:350.16,352.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:354.2,354.42 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:357.69,359.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:359.16,361.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:363.2,365.42 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:365.42,367.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:369.2,372.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:372.16,373.45 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:374.17,375.64 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:376.11,377.99 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:377.99,379.5 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:383.2,385.9 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:385.9,387.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:389.2,389.109 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:389.109,391.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:393.2,393.66 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:396.69,398.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:398.16,400.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:402.2,407.42 4 1 -github.com/echovault/echovault/internal/modules/list/commands.go:407.42,409.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:411.2,411.16 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:411.16,412.45 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:413.17,414.64 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:415.11,416.99 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:416.99,418.5 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:422.2,424.9 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:424.9,426.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:428.2,428.109 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:428.109,430.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:431.2,431.66 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:434.67,436.16 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:436.16,438.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:440.2,442.16 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:442.16,444.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:446.2,447.9 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:447.9,449.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:451.2,454.30 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:454.30,457.17 3 1 -github.com/echovault/echovault/internal/modules/list/commands.go:457.17,459.4 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:461.3,463.24 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:463.24,465.4 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:469.2,469.20 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:469.20,471.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:473.2,474.29 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:474.29,475.51 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:475.51,479.4 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:479.9,483.4 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:485.2,485.91 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:485.91,487.3 1 0 -github.com/echovault/echovault/internal/modules/list/commands.go:490.2,490.16 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:490.16,492.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:494.2,495.35 2 1 -github.com/echovault/echovault/internal/modules/list/commands.go:495.35,497.3 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:498.2,498.25 1 1 -github.com/echovault/echovault/internal/modules/list/commands.go:501.36,630.2 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:23.75,24.18 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:24.18,26.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:27.2,31.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:34.73,35.34 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:35.34,37.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:38.2,42.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:45.74,46.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:46.19,48.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:49.2,53.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:56.76,57.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:57.19,59.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:60.2,64.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:67.76,68.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:68.19,70.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:71.2,75.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:78.74,79.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:79.19,81.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:82.2,86.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:89.75,90.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:90.19,92.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:93.2,97.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:100.74,101.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:101.19,103.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:104.2,108.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:111.75,112.18 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:112.18,114.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:115.2,119.8 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:122.75,123.19 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:123.19,125.3 1 1 -github.com/echovault/echovault/internal/modules/list/key_funcs.go:126.2,130.8 1 1 -github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 -github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 -github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 -github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 -github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 -github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 -github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 -github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 -github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 -github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 -github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 -github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 -github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 -github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 -github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 -github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 -github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 -github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 -github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 -github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 -github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 -github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 -github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 -github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 -github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 -github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 -github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 -github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 -github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 -github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 -github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 -github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 -github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 -github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 -github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 -github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 -github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 -github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 -github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 -github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 -github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 -github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 -github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 1 -github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 1 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 1 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 1 -github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 -github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 -github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 -github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 -github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 -github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 -github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 -github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 -github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 -github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 -github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 -github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 0 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 0 -github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 -github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 -github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 -github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 -github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 -github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 -github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 -github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 -github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 -github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 -github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 -github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 -github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 -github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 -github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 -github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 -github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 -github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 -github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 1 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 1 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 1 -github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 -github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 -github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 -github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 -github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 -github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 -github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 -github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 -github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 -github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 -github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 -github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 -github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 -github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 -github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 1 -github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 -github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 1 -github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 -github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 1 -github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 -github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 1 -github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 1 -github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 -github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 1 -github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 1 -github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 -github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 -github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 -github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 -github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 -github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 -github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 -github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 -github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 -github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 -github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 -github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 -github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 -github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 -github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 -github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 -github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 -github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 -github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 -github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 -github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 -github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 -github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 -github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 -github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 -github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 -github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 -github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 -github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 -github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 -github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 -github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 -github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 -github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 -github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 -github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 -github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 -github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 -github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 -github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 -github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 -github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 -github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 -github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 -github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 -github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 -github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 -github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 -github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 -github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 -github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 -github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 -github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 -github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 -github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 -github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 -github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 -github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 -github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 -github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 -github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 -github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 -github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 -github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 -github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:34.51,35.32 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:35.32,37.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:41.57,42.32 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:42.32,45.3 2 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:48.61,59.33 3 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:59.33,61.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:63.2,63.16 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:66.28,67.12 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:67.12,68.7 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:68.7,73.40 3 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:73.40,74.30 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:74.30,79.21 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:79.21,81.7 1 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:85.4,85.33 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:90.34,92.2 1 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:94.40,96.2 1 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:98.51,101.40 3 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:101.40,103.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:104.2,105.11 2 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:108.53,111.40 3 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:111.40,113.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:114.2,115.13 2 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:118.44,120.2 1 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:122.36,129.2 4 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:131.34,138.2 4 1 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:140.59,145.35 4 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:145.35,147.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/channel.go:149.2,149.20 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:25.73,27.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:27.9,29.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:31.2,33.24 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:33.24,35.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:37.2,40.17 3 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:43.75,45.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:45.9,47.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:49.2,53.90 3 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:56.71,58.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:58.9,60.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:61.2,61.30 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:61.30,63.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:64.2,65.42 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:68.78,69.29 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:69.29,71.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:73.2,74.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:74.9,76.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:78.2,79.30 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:79.30,81.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:83.2,83.38 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:86.76,88.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:88.9,90.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:91.2,92.49 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:95.77,97.9 2 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:97.9,99.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:100.2,100.47 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:103.36,111.84 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:111.84,113.21 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:113.21,115.6 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:116.5,120.11 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:130.84,132.21 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:132.21,134.6 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:135.5,139.11 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:149.84,151.22 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:151.22,153.6 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:154.5,158.11 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:170.84,177.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:188.84,194.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:203.84,209.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:210.68,212.5 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:222.86,228.7 1 0 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:237.86,243.7 1 1 -github.com/echovault/echovault/internal/modules/pubsub/commands.go:253.86,259.7 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:33.26,38.2 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:40.101,47.17 5 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:47.17,49.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:51.2,51.37 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:51.37,55.75 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:55.75,57.4 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:59.3,59.23 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:59.23,62.19 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:62.19,64.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:64.10,66.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:67.4,68.31 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:68.31,73.20 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:73.20,75.6 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:76.5,76.47 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:78.9,80.47 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:80.47,85.20 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:85.20,87.6 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:93.110,98.17 4 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:98.17,100.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:102.2,105.24 3 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:105.24,106.19 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:106.19,109.40 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:109.40,110.31 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:110.31,111.14 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:113.5,113.34 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:113.34,116.6 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:118.9,121.40 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:121.40,122.31 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:122.31,123.14 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:125.5,125.34 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:125.34,128.6 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:136.2,136.38 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:136.38,137.30 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:137.30,138.54 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:138.54,141.5 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:147.2,147.17 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:147.17,148.36 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:148.36,150.40 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:150.40,152.58 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:152.58,153.35 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:153.35,156.7 2 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:157.6,157.14 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:160.5,160.30 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:160.30,161.35 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:161.35,164.7 2 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:170.2,171.39 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:171.39,173.3 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:175.2,175.20 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:178.82,182.38 3 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:182.38,184.29 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:184.29,185.35 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:185.35,187.5 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:188.4,188.12 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:191.3,191.41 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:191.41,193.4 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:197.51,204.19 5 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:204.19,205.39 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:205.39,206.26 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:206.26,209.5 2 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:211.3,212.21 2 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:215.2,217.38 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:217.38,219.78 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:219.78,222.12 3 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:225.3,225.50 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:225.50,228.4 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:231.2,231.53 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:234.32,239.38 4 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:239.38,240.51 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:240.51,242.4 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:244.2,244.14 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:247.52,252.35 4 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:252.35,254.66 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:254.66,256.4 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:257.3,257.20 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:257.20,259.12 2 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:261.3,261.106 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:263.2,263.20 1 1 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:266.47,271.38 4 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:271.38,273.3 1 0 -github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:275.2,275.17 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 -github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 -github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 -github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 -github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 -github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 -github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 -github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 -github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 -github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 -github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 -github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 -github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 -github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 -github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 -github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 -github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 -github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 -github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 -github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 -github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 -github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 -github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 -github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 -github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 -github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 -github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 -github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 -github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 -github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 -github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 -github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 -github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 -github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 -github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 -github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 -github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 -github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 -github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 -github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 -github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 -github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 -github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 -github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 -github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 -github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 -github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 -github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 -github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 -github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 -github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 -github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 -github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 -github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 -github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 -github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 -github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 -github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 -github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 -github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 -github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 -github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 -github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 -github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 -github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 -github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 -github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 -github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 -github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 -github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 -github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 -github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 -github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 -github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 -github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 -github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 -github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 -github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 -github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 -github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 -github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 -github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 -github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 -github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 -github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 -github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 -github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 -github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 -github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 -github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 -github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 -github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 -github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 -github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 -github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 -github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 -github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 -github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 -github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 -github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 -github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 -github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 -github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 -github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 -github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 -github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 -github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 -github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 -github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 -github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 -github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 -github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 -github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 -github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 -github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 -github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 -github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 -github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 -github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 -github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 -github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 -github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 -github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 -github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 -github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 -github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 -github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 -github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 -github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 -github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 -github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 -github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 -github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 -github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 -github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 -github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 -github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 -github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 -github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 -github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 -github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 -github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 -github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 -github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 -github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 -github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 -github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 -github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 -github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 -github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 -github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 -github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 -github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 -github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 -github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 -github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 -github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 -github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 -github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 -github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 -github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 -github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 -github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 -github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 -github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 -github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 -github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 -github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 -github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 -github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 -github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 -github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 -github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 -github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 -github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 -github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 -github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 -github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 -github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 -github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 -github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 -github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:26.68,28.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:28.16,30.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:32.2,37.16 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:37.16,39.91 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:39.91,41.4 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:42.3,42.70 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:45.2,46.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:46.9,48.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:50.2,52.51 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:55.69,57.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:57.16,59.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:61.2,64.16 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:64.16,66.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:68.2,69.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:69.9,71.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:73.2,75.57 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:78.69,80.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:80.16,82.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:84.2,87.34 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:87.34,89.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:91.2,92.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:92.9,94.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:96.2,97.41 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:97.41,99.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:99.10,100.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:102.3,102.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:105.2,109.26 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:109.26,111.24 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:111.24,113.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:116.2,116.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:119.74,121.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:121.16,123.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:125.2,129.34 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:129.34,131.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:133.2,134.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:134.9,136.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:138.2,139.40 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:139.40,141.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:141.10,142.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:144.3,144.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:147.2,152.99 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:152.99,154.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:156.2,156.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:159.70,161.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:161.16,163.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:165.2,169.37 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:169.37,170.14 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:170.14,172.4 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:173.3,174.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:174.10,177.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:178.3,178.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:181.2,181.20 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:181.20,183.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:185.2,189.26 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:189.26,191.24 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:191.24,193.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:196.2,196.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:199.74,201.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:201.16,203.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:205.2,209.67 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:209.67,211.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:212.2,212.35 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:212.35,214.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:215.2,215.20 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:215.20,217.38 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:217.38,219.4 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:221.3,221.71 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:221.71,223.4 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:223.9,225.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:228.2,230.37 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:230.37,231.14 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:231.14,233.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:234.3,235.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:235.10,238.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:239.3,239.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:242.2,242.20 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:242.20,244.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:246.2,248.69 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:251.75,253.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:253.16,255.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:257.2,261.37 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:261.37,262.14 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:262.14,264.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:265.3,266.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:266.10,269.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:270.3,270.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:273.2,276.104 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:276.104,278.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:280.2,280.69 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:283.73,285.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:285.16,287.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:289.2,292.16 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:292.16,294.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:296.2,297.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:297.9,299.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:301.2,301.38 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:301.38,303.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:305.2,305.30 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:308.72,310.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:314.2,317.16 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:317.16,319.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:321.2,322.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:322.9,324.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:326.2,329.26 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:329.26,331.24 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:331.24,333.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:336.2,336.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:339.74,341.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:341.16,343.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:345.2,349.16 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:349.16,351.29 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:351.29,353.27 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:353.27,355.5 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:357.3,357.26 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:360.2,361.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:361.9,363.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:365.2,366.36 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:366.36,367.31 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:367.31,369.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:369.9,371.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:373.2,375.25 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:378.69,380.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:380.16,382.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:384.2,388.24 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:388.24,390.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:392.2,395.9 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:395.9,397.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:399.2,400.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:400.9,402.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:404.2,406.49 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:409.68,411.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:411.16,413.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:415.2,419.30 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:419.30,421.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:421.10,423.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:424.3,424.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:427.2,427.16 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:431.2,432.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:432.9,434.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:436.2,439.28 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:439.28,441.26 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:441.26,443.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:446.2,446.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:449.75,451.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:451.16,453.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:455.2,459.30 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:459.30,461.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:461.10,463.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:464.3,464.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:467.2,467.16 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:467.16,469.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:471.2,472.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:472.9,474.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:476.2,479.28 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:479.28,481.26 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:481.26,483.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:486.2,486.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:489.68,491.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:491.16,493.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:495.2,499.16 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:499.16,501.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:503.2,504.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:504.9,506.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:508.2,510.51 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:513.70,515.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:515.16,517.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:519.2,522.33 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:522.33,524.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:524.10,526.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:527.3,527.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:530.2,533.35 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:533.35,535.33 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:535.33,537.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:540.2,540.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:543.75,545.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:545.16,547.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:549.2,554.33 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:554.33,556.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:556.10,558.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:559.3,559.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:562.2,564.100 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:564.100,566.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:567.2,567.65 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:570.36,723.2 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:25.74,26.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:26.18,28.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:29.2,33.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:36.75,37.19 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:37.19,39.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:40.2,44.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:47.75,48.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:48.18,50.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:51.2,55.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:58.80,59.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:59.18,61.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:62.2,66.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:69.76,70.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:70.18,72.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:73.2,77.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:80.80,81.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:81.18,83.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:85.2,85.56 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:85.56,87.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:89.2,89.20 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:89.20,95.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:97.2,101.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:104.81,105.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:105.18,107.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:108.2,112.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:115.79,116.19 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:116.19,118.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:119.2,123.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:126.78,127.19 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:127.19,129.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:130.2,134.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:137.80,138.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:138.18,140.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:141.2,145.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:148.75,149.19 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:149.19,151.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:152.2,156.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:159.74,160.34 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:160.34,162.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:163.2,167.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:170.81,171.34 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:171.34,173.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:174.2,178.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:181.74,182.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:182.18,184.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:185.2,189.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:192.76,193.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:193.18,195.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:196.2,200.8 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:203.81,204.18 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:204.18,206.3 1 1 -github.com/echovault/echovault/internal/modules/set/key_funcs.go:207.2,211.8 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:28.34,35.2 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:37.41,39.26 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:39.26,40.23 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:40.23,43.4 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:45.2,46.14 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:49.43,51.2 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:53.35,55.32 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:55.32,57.3 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:58.2,58.12 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:61.35,63.2 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:65.47,68.16 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:68.16,70.3 1 0 -github.com/echovault/echovault/internal/modules/set/set.go:72.2,72.49 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:72.49,74.3 1 0 -github.com/echovault/echovault/internal/modules/set/set.go:76.2,80.15 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:80.15,82.47 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:82.47,85.4 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:86.8,88.43 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:88.43,90.38 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:90.38,92.59 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:92.59,94.6 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:95.5,95.8 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:100.2,100.12 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:103.44,105.26 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:105.26,106.24 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:106.24,109.4 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:111.2,112.14 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:115.41,119.2 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:121.41,123.2 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:126.46,129.27 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:129.27,130.31 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:130.31,131.24 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:131.24,133.5 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:136.2,137.13 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:140.54,141.22 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:141.22,143.3 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:144.2,146.10 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:152.57,154.19 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:155.9,156.24 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:157.9,160.43 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:160.43,161.56 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:161.56,163.10 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:165.4,165.32 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:165.32,167.5 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:169.3,169.36 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:170.10,172.11 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:172.11,174.4 1 0 -github.com/echovault/echovault/internal/modules/set/set.go:175.3,176.11 2 1 -github.com/echovault/echovault/internal/modules/set/set.go:176.11,178.4 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:179.3,179.42 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:184.31,185.19 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:186.9,187.17 1 1 -github.com/echovault/echovault/internal/modules/set/set.go:188.9,191.15 3 1 -github.com/echovault/echovault/internal/modules/set/set.go:192.10,195.28 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:28.68,30.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:30.16,32.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:34.2,38.36 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:38.36,40.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:42.2,42.49 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:42.49,44.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:46.2,46.16 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:46.16,47.17 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:47.17,49.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:50.3,50.95 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:50.95,52.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:53.3,53.59 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:56.2,57.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:57.9,59.95 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:59.95,61.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:62.3,62.59 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:65.2,66.44 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:67.16,69.33 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:69.33,70.26 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:70.26,72.5 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:74.3,74.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:74.34,76.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:77.10,79.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:79.34,80.29 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:80.29,82.5 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:84.3,84.23 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:87.2,87.94 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:87.94,89.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:91.2,91.51 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:94.68,96.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:96.16,98.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:100.2,104.16 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:104.16,106.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:108.2,109.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:109.9,111.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:113.2,116.31 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:116.31,118.19 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:118.19,120.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:122.3,122.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:122.34,124.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:126.3,126.31 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:126.31,128.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:130.3,130.35 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:130.35,133.12 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:135.3,135.32 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:138.2,138.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:141.69,143.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:143.16,145.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:147.2,149.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:149.16,151.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:153.2,154.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:154.9,156.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:158.2,162.31 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:162.31,164.10 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:164.10,166.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:169.3,169.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:169.34,171.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:173.3,173.31 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:173.31,175.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:177.3,177.35 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:177.35,180.12 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:182.3,182.32 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:185.2,185.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:188.71,190.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:190.16,192.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:194.2,198.16 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:198.16,200.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:202.2,203.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:203.9,205.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:207.2,210.31 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:210.31,212.19 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:212.19,214.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:216.3,216.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:216.34,218.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:220.3,220.35 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:220.35,223.12 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:225.3,225.31 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:225.31,227.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:229.3,229.18 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:232.2,232.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:235.69,237.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:237.16,239.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:241.2,244.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:244.16,246.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:248.2,249.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:249.9,251.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:253.2,254.27 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:254.27,255.32 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:255.32,257.12 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:259.3,259.33 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:259.33,262.12 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:264.3,264.29 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:264.29,266.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:269.2,269.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:272.74,274.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:274.16,276.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:278.2,282.30 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:282.30,284.17 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:284.17,286.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:287.3,287.13 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:287.13,289.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:290.3,290.12 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:293.2,294.30 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:294.30,295.57 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:295.57,297.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:297.9,299.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:302.2,302.16 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:302.16,304.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:306.2,307.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:307.9,309.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:312.2,312.24 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:312.24,314.17 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:314.17,316.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:317.3,317.34 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:317.34,319.18 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:319.18,320.36 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:320.36,322.14 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:324.5,324.37 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:324.37,327.14 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:329.5,329.33 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:329.33,331.14 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:335.3,335.26 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:339.2,340.29 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:340.29,342.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:345.2,347.46 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:347.46,351.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:351.16,352.59 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:352.59,354.5 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:358.2,359.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:359.16,361.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:362.2,362.38 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:362.38,364.17 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:364.17,365.41 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:365.41,367.13 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:369.4,369.42 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:369.42,372.13 3 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:374.4,374.38 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:374.38,376.13 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:381.2,381.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:384.68,386.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:386.16,388.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:390.2,393.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:393.16,395.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:397.2,398.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:398.9,400.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:402.2,402.55 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:405.69,407.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:407.16,409.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:411.2,414.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:414.16,416.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:418.2,419.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:419.9,421.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:423.2,424.29 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:424.29,426.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:428.2,428.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:431.71,433.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:433.16,435.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:437.2,444.58 6 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:444.58,446.17 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:446.17,448.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:449.3,449.21 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:450.8,452.17 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:452.17,454.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:455.3,455.19 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:458.2,458.16 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:458.16,460.59 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:460.59,462.93 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:462.93,464.5 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:465.4,465.96 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:466.9,468.93 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:468.93,470.5 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:471.4,471.60 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:475.2,476.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:476.9,478.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:480.2,480.24 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:480.24,482.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:484.2,484.28 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:485.10,486.69 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:487.11,489.59 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:489.59,491.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:491.9,493.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:494.15,496.59 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:496.59,498.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:498.9,500.4 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:503.2,503.91 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:503.91,505.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:507.2,507.40 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:507.40,509.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:511.2,512.47 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:515.71,517.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:517.16,519.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:521.2,524.16 3 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:524.16,526.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:528.2,529.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:529.9,531.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:533.2,534.33 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:534.33,536.34 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:536.34,538.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:539.3,539.35 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:539.35,542.4 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:543.3,543.31 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:543.31,545.4 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:548.2,548.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:551.71,553.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:553.16,555.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:557.2,561.16 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:561.16,563.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:565.2,566.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:566.9,568.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:570.2,570.24 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:570.24,572.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:574.2,574.30 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:577.68,579.16 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:579.16,581.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:583.2,587.16 4 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:587.16,589.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:591.2,592.9 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:592.9,594.3 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:596.2,598.31 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:598.31,599.25 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:599.25,602.4 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:605.2,605.91 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:605.91,607.3 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:609.2,609.51 1 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:612.36,746.2 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:23.74,24.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:24.18,26.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:27.2,31.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:34.76,35.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:35.18,37.3 1 0 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:38.2,42.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:45.74,46.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:46.18,48.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:49.2,53.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:56.75,57.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:57.18,59.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:60.2,64.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:67.77,68.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:68.18,70.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:71.2,75.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:78.75,79.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:79.19,81.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:82.2,86.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:89.80,90.34 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:90.34,92.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:93.2,93.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:93.19,99.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:100.2,104.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:107.74,108.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:108.19,110.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:111.2,115.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:118.75,119.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:119.19,121.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:122.2,126.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:129.77,130.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:130.19,132.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:133.2,137.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:140.77,141.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:141.19,143.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:144.2,148.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:151.77,152.19 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:152.19,154.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:155.2,159.8 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:162.74,163.18 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:163.18,165.3 1 1 +github.com/echovault/echovault/internal/modules/hash/key_funcs.go:166.2,170.8 1 1 +github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 +github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 +github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 +github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 +github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 +github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 +github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 +github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 +github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 +github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 +github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 +github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 +github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 +github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 +github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 +github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 +github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 +github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 +github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 +github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 +github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 +github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 +github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 +github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 +github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 +github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 +github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 +github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 +github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 +github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 +github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 +github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 +github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 +github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 +github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 +github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 +github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 +github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 +github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 +github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 +github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 +github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 +github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 1 +github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 1 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 1 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 1 +github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 +github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 +github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 +github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 +github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 +github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 +github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 +github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 +github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 +github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 +github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 +github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 +github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 +github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 +github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 1 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 1 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 1 +github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 1 +github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 +github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 1 +github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 1 +github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 +github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 +github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 +github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 +github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 +github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 +github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 +github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 +github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 +github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 +github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 +github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 1 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 1 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 1 +github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 +github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 +github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 +github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 1 +github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 +github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 1 +github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 +github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 +github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 +github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 +github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 +github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 +github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 +github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 +github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 +github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 +github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 +github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 +github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 +github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 +github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 +github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 +github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 +github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 +github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 +github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 +github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 +github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 +github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 +github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 +github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 +github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 +github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 +github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 +github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 +github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 +github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 +github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 +github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 +github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 +github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 +github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 +github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 +github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 +github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 +github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 +github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 +github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 +github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 +github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 +github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 +github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 +github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 +github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 +github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 +github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 +github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 +github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 +github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 +github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 +github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 +github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 +github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 +github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 +github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 +github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 +github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 +github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 +github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 +github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 +github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 +github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 +github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 +github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 +github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 +github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 +github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 +github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 +github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 +github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 +github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 +github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 +github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 +github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 +github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 +github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 +github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 +github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 +github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 +github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 1 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:27.78,33.29 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:33.29,34.54 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:34.54,40.42 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:40.42,42.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:44.4,47.12 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:50.3,50.36 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:50.36,57.43 5 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:57.43,59.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:61.4,63.21 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:67.2,69.25 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:72.76,76.35 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:76.35,77.65 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:77.65,78.41 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:78.41,80.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:81.4,81.12 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:83.3,83.13 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:86.2,86.51 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:89.75,90.29 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:91.9,96.36 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:96.36,97.66 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:97.66,98.52 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:98.52,102.6 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:103.5,103.13 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:105.4,106.14 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:108.3,109.26 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:111.9,115.56 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:115.56,117.4 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:118.3,118.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:118.53,122.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:122.37,123.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:123.67,124.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:124.53,125.59 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:125.59,129.8 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:131.6,131.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:133.5,133.54 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:133.54,136.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:138.9,138.61 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:138.61,142.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:142.37,143.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:143.67,144.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:144.53,146.24 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:146.24,149.8 2 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:151.6,151.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:153.5,153.33 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:153.33,156.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:158.9,158.60 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:158.60,162.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:162.37,163.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:163.67,164.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:164.53,165.55 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:165.55,169.8 3 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:171.6,171.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:173.5,173.50 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:173.50,176.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:178.9,180.4 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:181.3,182.26 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:183.10,184.54 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:188.75,190.2 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:192.36,200.84 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:200.84,204.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:213.84,217.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:225.86,229.7 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:238.86,242.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:252.86,256.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:267.84,271.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:272.73,273.49 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:273.49,275.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:276.5,276.45 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:285.84,289.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:290.73,292.18 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:292.18,294.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:295.5,295.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:304.84,308.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:309.73,310.47 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:310.47,312.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:313.5,313.45 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:321.84,325.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:335.86,339.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:340.75,341.34 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:341.34,343.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:344.7,345.34 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:345.34,347.8 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:348.7,348.75 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:348.75,350.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:351.7,351.47 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:361.86,365.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:366.75,367.35 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:367.35,369.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:370.7,371.47 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:380.86,384.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:385.75,388.38 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:388.38,390.8 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:391.7,391.30 1 1 github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 @@ -5103,16 +3458,465 @@ github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:33.82,34.19 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:34.19,36.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:37.2,37.34 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:46.34,49.16 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:49.16,51.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:52.2,55.16 3 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:55.16,57.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:59.2,60.16 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:60.16,62.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:64.2,64.31 1 0 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 +github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 +github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 +github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 +github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 +github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 +github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 +github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 +github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 +github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 +github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 +github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 +github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 +github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 +github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 +github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 +github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 +github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 +github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 +github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 +github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 +github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 +github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 +github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 +github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 +github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 +github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 +github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 +github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 +github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 +github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 +github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 +github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 +github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 +github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 +github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 +github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 +github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 +github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 +github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 +github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 +github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 +github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 +github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 +github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 +github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 +github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 +github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 +github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 +github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 +github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 +github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 +github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 +github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 +github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 +github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 +github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 +github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 +github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 +github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 +github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 +github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 +github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 +github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 +github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 +github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 +github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 +github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 +github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 +github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 +github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 +github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 +github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 +github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 +github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 +github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 +github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 +github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 +github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 +github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 +github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 +github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 +github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 +github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 +github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 +github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 +github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 +github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 +github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 +github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 +github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 +github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 +github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 +github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 +github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 +github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 +github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 +github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 +github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 +github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 +github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 +github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 +github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 +github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 +github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 +github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 +github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 +github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 +github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 +github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 +github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 +github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 +github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 +github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 +github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 +github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 +github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 +github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 +github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 +github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 +github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 +github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 +github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 +github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 +github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 +github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 +github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 +github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 +github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 +github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 +github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 +github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 +github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 +github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 1 +github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 +github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 +github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 +github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 +github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 +github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 +github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 +github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 +github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 +github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 +github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 +github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 +github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 +github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 +github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 +github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 +github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 +github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:27.68,29.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:29.16,31.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:33.2,36.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:36.16,39.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:41.2,41.85 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:41.85,43.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:45.2,45.57 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:48.70,50.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:50.16,52.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:54.2,56.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:56.16,58.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:60.2,61.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:61.9,63.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:65.2,66.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:66.16,68.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:70.2,70.15 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:70.15,72.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:74.2,74.37 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:74.37,76.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:78.2,78.81 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:81.70,83.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:83.16,85.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:87.2,89.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:89.16,91.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:93.2,94.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:94.9,96.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:98.2,99.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:99.16,101.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:103.2,103.15 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:103.15,105.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:107.2,108.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:108.16,110.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:112.2,112.13 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:112.13,114.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:116.2,116.21 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:116.21,118.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:120.2,120.38 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:120.38,122.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:124.2,125.32 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:125.32,127.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:129.2,129.25 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:132.68,134.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:134.16,136.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:138.2,140.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:140.16,142.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:144.2,145.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:145.16,147.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:149.2,150.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:150.9,152.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:155.2,155.15 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:155.15,157.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:159.2,159.40 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:159.40,161.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:163.2,164.91 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:164.91,166.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:168.2,168.42 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:171.69,173.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:173.16,175.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:177.2,179.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:179.16,181.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:183.2,184.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:184.16,186.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:187.2,188.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:188.16,190.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:192.2,193.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:193.9,195.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:198.2,198.15 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:198.15,200.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:201.2,201.13 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:201.13,203.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:206.2,206.40 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:206.40,207.62 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:207.62,209.4 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:210.3,210.43 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:214.2,214.21 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:214.21,216.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:218.2,218.24 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:218.24,220.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:222.2,222.102 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:222.102,224.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:226.2,226.42 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:229.68,231.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:231.16,233.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:235.2,240.16 5 1 +github.com/echovault/echovault/internal/modules/list/commands.go:240.16,242.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:243.2,245.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:245.16,247.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:249.2,250.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:250.9,252.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:254.2,256.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:257.10,259.34 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:259.34,260.24 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:260.24,263.5 2 0 +github.com/echovault/echovault/internal/modules/list/commands.go:265.17,267.34 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:267.34,268.26 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:268.26,269.10 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:271.4,271.24 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:271.24,274.5 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:276.17,278.39 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:278.39,279.26 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:279.26,280.10 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:282.4,282.24 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:282.24,286.5 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:290.2,290.91 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:290.91,292.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:294.2,295.58 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:298.69,300.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:300.16,302.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:304.2,309.116 5 1 +github.com/echovault/echovault/internal/modules/list/commands.go:309.116,311.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:313.2,313.51 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:313.51,315.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:317.2,321.33 4 1 +github.com/echovault/echovault/internal/modules/list/commands.go:321.33,323.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:325.2,325.19 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:326.14,329.33 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:329.33,330.26 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:330.26,332.6 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:334.5,334.50 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:337.15,340.33 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:340.33,341.26 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:341.26,343.6 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:345.5,345.66 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:350.2,350.16 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:350.16,352.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:354.2,354.42 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:357.69,359.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:359.16,361.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:363.2,365.42 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:365.42,367.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:369.2,372.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:372.16,373.45 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:374.17,375.64 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:376.11,377.99 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:377.99,379.5 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:383.2,385.9 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:385.9,387.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:389.2,389.109 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:389.109,391.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:393.2,393.66 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:396.69,398.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:398.16,400.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:402.2,407.42 4 1 +github.com/echovault/echovault/internal/modules/list/commands.go:407.42,409.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:411.2,411.16 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:411.16,412.45 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:413.17,414.64 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:415.11,416.99 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:416.99,418.5 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:422.2,424.9 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:424.9,426.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:428.2,428.109 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:428.109,430.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:431.2,431.66 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:434.67,436.16 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:436.16,438.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:440.2,442.16 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:442.16,444.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:446.2,447.9 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:447.9,449.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:451.2,454.30 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:454.30,457.17 3 1 +github.com/echovault/echovault/internal/modules/list/commands.go:457.17,459.4 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:461.3,463.24 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:463.24,465.4 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:469.2,469.20 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:469.20,471.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:473.2,474.29 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:474.29,475.51 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:475.51,479.4 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:479.9,483.4 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:485.2,485.91 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:485.91,487.3 1 0 +github.com/echovault/echovault/internal/modules/list/commands.go:490.2,490.16 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:490.16,492.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:494.2,495.35 2 1 +github.com/echovault/echovault/internal/modules/list/commands.go:495.35,497.3 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:498.2,498.25 1 1 +github.com/echovault/echovault/internal/modules/list/commands.go:501.36,630.2 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:23.75,24.18 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:24.18,26.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:27.2,31.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:34.73,35.34 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:35.34,37.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:38.2,42.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:45.74,46.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:46.19,48.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:49.2,53.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:56.76,57.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:57.19,59.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:60.2,64.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:67.76,68.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:68.19,70.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:71.2,75.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:78.74,79.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:79.19,81.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:82.2,86.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:89.75,90.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:90.19,92.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:93.2,97.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:100.74,101.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:101.19,103.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:104.2,108.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:111.75,112.18 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:112.18,114.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:115.2,119.8 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:122.75,123.19 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:123.19,125.3 1 1 +github.com/echovault/echovault/internal/modules/list/key_funcs.go:126.2,130.8 1 1 github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 @@ -5194,23 +3998,10 @@ github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:33.82,34.19 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:34.19,36.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:37.2,37.33 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:46.34,49.16 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:49.16,51.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:52.2,55.13 3 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:55.13,57.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:59.2,60.9 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:60.9,62.3 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:64.2,65.20 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:65.20,67.17 2 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:67.17,69.4 1 0 -github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:72.2,72.56 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 @@ -5243,15 +4034,15 @@ github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 -github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 1 github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 -github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 -github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 -github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 1 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 1 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 1 github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 @@ -5263,8 +4054,8 @@ github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 0 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 0 github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 @@ -5289,9 +4080,9 @@ github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 -github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 -github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 -github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 1 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 1 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 1 github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 @@ -5307,17 +4098,17 @@ github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 -github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 +github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 1 github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 -github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 +github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 1 github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 -github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 +github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 1 github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 -github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 -github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 +github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 1 +github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 1 github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 -github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 -github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 +github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 1 +github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 1 github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 @@ -5366,7 +4157,7 @@ github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 1 github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 @@ -5457,83 +4248,157 @@ github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:25.72,27.16 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:27.16,29.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:31.2,35.9 4 1 -github.com/echovault/echovault/internal/modules/string/commands.go:35.9,37.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:39.2,41.16 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:41.16,43.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:45.2,46.9 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:46.9,48.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:51.2,51.24 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:51.24,53.94 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:53.94,55.4 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:56.3,56.58 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:60.2,60.16 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:60.16,62.94 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:62.94,64.4 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:65.3,65.58 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:68.2,70.35 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:70.35,72.24 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:72.24,75.12 3 1 -github.com/echovault/echovault/internal/modules/string/commands.go:78.3,79.8 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:82.2,82.103 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:82.103,84.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:86.2,86.59 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:89.70,91.16 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:91.16,93.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:95.2,98.16 3 1 -github.com/echovault/echovault/internal/modules/string/commands.go:98.16,100.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:102.2,104.9 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:104.9,106.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:108.2,108.56 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:111.70,113.16 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:113.16,115.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:117.2,124.24 6 1 -github.com/echovault/echovault/internal/modules/string/commands.go:124.24,126.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:128.2,128.16 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:128.16,130.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:132.2,133.9 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:133.9,135.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:137.2,137.15 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:137.15,139.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:140.2,140.13 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:140.13,142.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:144.2,144.30 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:144.30,146.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:148.2,148.22 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:148.22,150.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:152.2,152.17 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:152.17,155.3 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:157.2,159.14 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:159.14,161.38 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:161.38,163.4 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:164.3,164.12 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:167.2,167.65 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:170.70,172.16 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:172.16,174.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:176.2,179.16 4 1 -github.com/echovault/echovault/internal/modules/string/commands.go:179.16,182.18 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:182.18,184.4 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:185.3,185.57 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:187.2,188.9 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:188.9,190.3 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:191.2,194.17 2 1 -github.com/echovault/echovault/internal/modules/string/commands.go:194.17,196.3 1 0 -github.com/echovault/echovault/internal/modules/string/commands.go:197.2,197.59 1 1 -github.com/echovault/echovault/internal/modules/string/commands.go:200.36,249.2 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:24.78,25.19 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:25.19,27.3 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:28.2,32.8 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:35.76,36.19 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:36.19,38.3 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:39.2,43.8 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:46.76,47.19 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:47.19,49.3 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:50.2,54.8 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:57.76,58.19 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:58.19,60.3 1 1 -github.com/echovault/echovault/internal/modules/string/key_funcs.go:61.2,65.8 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:34.51,35.32 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:35.32,37.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:41.57,42.32 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:42.32,45.3 2 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:48.61,59.33 3 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:59.33,61.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:63.2,63.16 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:66.28,67.12 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:67.12,68.7 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:68.7,73.40 3 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:73.40,74.30 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:74.30,79.21 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:79.21,81.7 1 0 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:85.4,85.33 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:90.34,92.2 1 0 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:94.40,96.2 1 0 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:98.51,101.40 3 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:101.40,103.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:104.2,105.11 2 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:108.53,111.40 3 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:111.40,113.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:114.2,115.13 2 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:118.44,120.2 1 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:122.36,129.2 4 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:131.34,138.2 4 1 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:140.59,145.35 4 0 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:145.35,147.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/channel.go:149.2,149.20 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:25.73,27.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:27.9,29.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:31.2,33.24 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:33.24,35.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:37.2,40.17 3 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:43.75,45.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:45.9,47.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:49.2,53.90 3 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:56.71,58.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:58.9,60.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:61.2,61.30 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:61.30,63.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:64.2,65.42 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:68.78,69.29 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:69.29,71.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:73.2,74.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:74.9,76.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:78.2,79.30 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:79.30,81.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:83.2,83.38 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:86.76,88.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:88.9,90.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:91.2,92.49 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:95.77,97.9 2 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:97.9,99.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:100.2,100.47 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:103.36,111.84 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:111.84,113.21 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:113.21,115.6 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:116.5,120.11 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:130.84,132.21 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:132.21,134.6 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:135.5,139.11 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:149.84,151.22 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:151.22,153.6 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:154.5,158.11 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:170.84,177.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:188.84,194.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:203.84,209.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:210.68,212.5 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:222.86,228.7 1 0 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:237.86,243.7 1 1 +github.com/echovault/echovault/internal/modules/pubsub/commands.go:253.86,259.7 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:33.26,38.2 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:40.101,47.17 5 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:47.17,49.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:51.2,51.37 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:51.37,55.75 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:55.75,57.4 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:59.3,59.23 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:59.23,62.19 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:62.19,64.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:64.10,66.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:67.4,68.31 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:68.31,73.20 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:73.20,75.6 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:76.5,76.47 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:78.9,80.47 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:80.47,85.20 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:85.20,87.6 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:93.110,98.17 4 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:98.17,100.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:102.2,105.24 3 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:105.24,106.19 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:106.19,109.40 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:109.40,110.31 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:110.31,111.14 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:113.5,113.34 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:113.34,116.6 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:118.9,121.40 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:121.40,122.31 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:122.31,123.14 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:125.5,125.34 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:125.34,128.6 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:136.2,136.38 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:136.38,137.30 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:137.30,138.54 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:138.54,141.5 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:147.2,147.17 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:147.17,148.36 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:148.36,150.40 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:150.40,152.58 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:152.58,153.35 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:153.35,156.7 2 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:157.6,157.14 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:160.5,160.30 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:160.30,161.35 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:161.35,164.7 2 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:170.2,171.39 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:171.39,173.3 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:175.2,175.20 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:178.82,182.38 3 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:182.38,184.29 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:184.29,185.35 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:185.35,187.5 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:188.4,188.12 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:191.3,191.41 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:191.41,193.4 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:197.51,204.19 5 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:204.19,205.39 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:205.39,206.26 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:206.26,209.5 2 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:211.3,212.21 2 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:215.2,217.38 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:217.38,219.78 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:219.78,222.12 3 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:225.3,225.50 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:225.50,228.4 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:231.2,231.53 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:234.32,239.38 4 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:239.38,240.51 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:240.51,242.4 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:244.2,244.14 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:247.52,252.35 4 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:252.35,254.66 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:254.66,256.4 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:257.3,257.20 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:257.20,259.12 2 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:261.3,261.106 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:263.2,263.20 1 1 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:266.47,271.38 4 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:271.38,273.3 1 0 +github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:275.2,275.17 1 0 github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 @@ -5615,25 +4480,25 @@ github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 -github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 -github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 -github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 -github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 -github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 0 -github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 0 -github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 0 -github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 0 -github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 0 -github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 0 -github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 0 -github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 0 -github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 +github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 +github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 +github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 +github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 +github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 -github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 0 -github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 0 +github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 +github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 -github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 0 +github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 @@ -5643,24 +4508,24 @@ github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 -github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 0 +github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 -github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 0 -github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 0 +github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 +github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 -github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 0 -github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 0 -github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 0 +github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 +github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 +github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 -github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 0 -github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 -github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 -github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 +github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 1 github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 @@ -5671,20 +4536,20 @@ github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 -github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 0 -github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 0 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 -github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 1 -github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 1 -github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 1 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 -github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 1 +github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 -github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 1 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 -github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 1 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 @@ -5764,153 +4629,480 @@ github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 -github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 0 +github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 -github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 0 -github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 -github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 0 -github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 0 -github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 0 -github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 0 -github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 0 -github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 0 -github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 -github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 0 -github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 0 -github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 0 -github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 0 -github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 0 -github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 -github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 0 -github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 -github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 -github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 -github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 -github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 -github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 -github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 -github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 -github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 -github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 -github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 -github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 -github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 -github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 -github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 -github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 1 -github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:55.56,56.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:56.30,58.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:61.59,62.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:62.30,64.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:67.64,68.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:68.30,70.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:73.59,74.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:74.30,76.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:79.59,80.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:80.30,82.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:85.60,86.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:86.30,88.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:91.90,92.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:92.30,94.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:97.77,98.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:98.30,100.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:103.73,104.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:104.30,106.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:109.103,110.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:110.30,112.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:115.65,122.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:122.31,122.32 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:123.31,123.32 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:124.60,126.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:127.85,127.86 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:128.48,128.49 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:129.43,131.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:134.2,134.33 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:134.33,136.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:138.2,138.34 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:138.34,139.13 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:139.13,141.17 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:141.17,143.5 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:144.4,144.8 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:144.8,146.62 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:146.62,147.50 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:147.50,149.7 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:155.2,155.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:158.44,177.58 6 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:177.58,180.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:183.2,185.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:185.16,186.37 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:186.37,189.18 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:189.18,192.5 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:193.4,193.24 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:194.9,197.4 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:200.2,201.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:201.16,204.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:205.2,205.35 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:205.35,208.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:210.2,212.20 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:212.20,213.53 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:213.53,216.4 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:220.2,225.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:225.16,228.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:230.2,231.49 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:231.49,233.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:236.2,239.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:239.16,242.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:245.2,246.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:246.16,249.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:252.2,257.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:257.16,260.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:261.2,261.39 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:261.39,264.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:265.2,265.33 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:265.33,267.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:268.2,268.34 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:268.34,271.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:274.2,275.58 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:275.58,277.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:280.2,281.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:281.16,284.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:285.2,285.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:285.15,286.35 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:286.35,288.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:292.2,292.39 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:292.39,294.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:295.2,295.32 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:295.32,297.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:300.2,305.12 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:308.39,310.50 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:310.50,312.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:313.2,313.16 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:313.16,315.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:316.2,316.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:316.15,317.36 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:317.36,319.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:322.2,325.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:325.16,327.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:329.2,329.52 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:329.52,331.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:333.2,333.46 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:333.46,335.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:337.2,342.50 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:342.50,344.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:345.2,345.16 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:345.16,347.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:348.2,348.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:348.15,349.36 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:349.36,351.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:354.2,355.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:355.16,357.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:359.2,360.58 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:360.58,362.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:364.2,366.99 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:366.99,367.34 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:367.34,369.4 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:372.2,374.12 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:377.46,379.2 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:381.42,383.2 1 1 +github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 +github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 +github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 +github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 +github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 +github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 +github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 +github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 +github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 +github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 +github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 +github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 +github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 +github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 +github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 +github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 +github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 +github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 +github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 +github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 +github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 +github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 +github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 +github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 +github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:26.68,28.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:28.16,30.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:32.2,37.16 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:37.16,39.91 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:39.91,41.4 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:42.3,42.70 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:45.2,46.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:46.9,48.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:50.2,52.51 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:55.69,57.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:57.16,59.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:61.2,64.16 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:64.16,66.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:68.2,69.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:69.9,71.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:73.2,75.57 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:78.69,80.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:80.16,82.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:84.2,87.34 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:87.34,89.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:91.2,92.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:92.9,94.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:96.2,97.41 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:97.41,99.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:99.10,100.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:102.3,102.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:105.2,109.26 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:109.26,111.24 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:111.24,113.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:116.2,116.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:119.74,121.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:121.16,123.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:125.2,129.34 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:129.34,131.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:133.2,134.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:134.9,136.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:138.2,139.40 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:139.40,141.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:141.10,142.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:144.3,144.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:147.2,152.99 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:152.99,154.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:156.2,156.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:159.70,161.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:161.16,163.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:165.2,169.37 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:169.37,170.14 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:170.14,172.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:173.3,174.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:174.10,177.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:178.3,178.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:181.2,181.20 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:181.20,183.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:185.2,189.26 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:189.26,191.24 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:191.24,193.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:196.2,196.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:199.74,201.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:201.16,203.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:205.2,209.67 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:209.67,211.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:212.2,212.35 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:212.35,214.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:215.2,215.20 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:215.20,217.38 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:217.38,219.4 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:221.3,221.71 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:221.71,223.4 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:223.9,225.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:228.2,230.37 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:230.37,231.14 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:231.14,233.4 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:234.3,235.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:235.10,238.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:239.3,239.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:242.2,242.20 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:242.20,244.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:246.2,248.69 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:251.75,253.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:253.16,255.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:257.2,261.37 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:261.37,262.14 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:262.14,264.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:265.3,266.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:266.10,269.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:270.3,270.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:273.2,276.104 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:276.104,278.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:280.2,280.69 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:283.73,285.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:285.16,287.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:289.2,292.16 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:292.16,294.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:296.2,297.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:297.9,299.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:301.2,301.38 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:301.38,303.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:305.2,305.30 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:308.72,310.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:314.2,317.16 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:317.16,319.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:321.2,322.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:322.9,324.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:326.2,329.26 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:329.26,331.24 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:331.24,333.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:336.2,336.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:339.74,341.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:341.16,343.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:345.2,349.16 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:349.16,351.29 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:351.29,353.27 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:353.27,355.5 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:357.3,357.26 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:360.2,361.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:361.9,363.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:365.2,366.36 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:366.36,367.31 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:367.31,369.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:369.9,371.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:373.2,375.25 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:378.69,380.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:380.16,382.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:384.2,388.24 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:388.24,390.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:392.2,395.9 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:395.9,397.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:399.2,400.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:400.9,402.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:404.2,406.49 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:409.68,411.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:411.16,413.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:415.2,419.30 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:419.30,421.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:421.10,423.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:424.3,424.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:427.2,427.16 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:427.16,429.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:431.2,432.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:432.9,434.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:436.2,439.28 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:439.28,441.26 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:441.26,443.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:446.2,446.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:449.75,451.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:451.16,453.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:455.2,459.30 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:459.30,461.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:461.10,463.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:464.3,464.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:467.2,467.16 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:467.16,469.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:471.2,472.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:472.9,474.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:476.2,479.28 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:479.28,481.26 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:481.26,483.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:486.2,486.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:489.68,491.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:491.16,493.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:495.2,499.16 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:499.16,501.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:503.2,504.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:504.9,506.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:508.2,510.51 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:513.70,515.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:515.16,517.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:519.2,522.33 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:522.33,524.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:524.10,526.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:527.3,527.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:530.2,533.35 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:533.35,535.33 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:535.33,537.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:540.2,540.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:543.75,545.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:545.16,547.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:549.2,554.33 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:554.33,556.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:556.10,558.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:559.3,559.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:562.2,564.100 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:564.100,566.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:567.2,567.65 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:570.36,723.2 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:25.74,26.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:26.18,28.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:29.2,33.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:36.75,37.19 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:37.19,39.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:40.2,44.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:47.75,48.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:48.18,50.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:51.2,55.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:58.80,59.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:59.18,61.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:62.2,66.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:69.76,70.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:70.18,72.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:73.2,77.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:80.80,81.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:81.18,83.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:85.2,85.56 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:85.56,87.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:89.2,89.20 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:89.20,95.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:97.2,101.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:104.81,105.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:105.18,107.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:108.2,112.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:115.79,116.19 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:116.19,118.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:119.2,123.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:126.78,127.19 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:127.19,129.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:130.2,134.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:137.80,138.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:138.18,140.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:141.2,145.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:148.75,149.19 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:149.19,151.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:152.2,156.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:159.74,160.34 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:160.34,162.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:163.2,167.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:170.81,171.34 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:171.34,173.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:174.2,178.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:181.74,182.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:182.18,184.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:185.2,189.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:192.76,193.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:193.18,195.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:196.2,200.8 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:203.81,204.18 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:204.18,206.3 1 1 +github.com/echovault/echovault/internal/modules/set/key_funcs.go:207.2,211.8 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:28.34,35.2 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:37.41,39.26 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:39.26,40.23 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:40.23,43.4 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:45.2,46.14 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:49.43,51.2 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:53.35,55.32 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:55.32,57.3 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:58.2,58.12 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:61.35,63.2 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:65.47,68.16 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:68.16,70.3 1 0 +github.com/echovault/echovault/internal/modules/set/set.go:72.2,72.49 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:72.49,74.3 1 0 +github.com/echovault/echovault/internal/modules/set/set.go:76.2,80.15 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:80.15,82.47 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:82.47,85.4 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:86.8,88.43 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:88.43,90.38 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:90.38,92.59 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:92.59,94.6 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:95.5,95.8 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:100.2,100.12 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:103.44,105.26 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:105.26,106.24 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:106.24,109.4 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:111.2,112.14 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:115.41,119.2 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:121.41,123.2 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:126.46,129.27 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:129.27,130.31 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:130.31,131.24 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:131.24,133.5 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:136.2,137.13 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:140.54,141.22 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:141.22,143.3 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:144.2,146.10 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:152.57,154.19 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:155.9,156.24 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:157.9,160.43 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:160.43,161.56 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:161.56,163.10 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:165.4,165.32 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:165.32,167.5 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:169.3,169.36 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:170.10,172.11 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:172.11,174.4 1 0 +github.com/echovault/echovault/internal/modules/set/set.go:175.3,176.11 2 1 +github.com/echovault/echovault/internal/modules/set/set.go:176.11,178.4 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:179.3,179.42 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:184.31,185.19 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:186.9,187.17 1 1 +github.com/echovault/echovault/internal/modules/set/set.go:188.9,191.15 3 1 +github.com/echovault/echovault/internal/modules/set/set.go:192.10,195.28 3 1 +github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 +github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 +github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 +github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 +github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 +github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 +github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 +github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 +github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 +github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 +github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 +github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 +github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 +github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 +github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 @@ -7053,6 +6245,814 @@ github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:33.82,34.19 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:34.19,36.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:37.2,37.33 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:46.34,49.16 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:49.16,51.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:52.2,55.13 3 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:55.13,57.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:59.2,60.9 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:60.9,62.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:64.2,65.20 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:65.20,67.17 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:67.17,69.4 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_get/module_get.go:72.2,72.56 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 +github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 +github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 +github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 +github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 +github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 +github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 +github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 +github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 +github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 +github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 +github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 +github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 +github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 +github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:33.82,34.19 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:34.19,36.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:37.2,37.34 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:46.34,49.16 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:49.16,51.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:52.2,55.16 3 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:55.16,57.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:59.2,60.16 2 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:60.16,62.3 1 0 +github.com/echovault/echovault/internal/volumes/modules/module_set/module_set.go:64.2,64.31 1 0 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 1 +github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 1 +github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 1 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 1 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 1 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 1 +github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 1 +github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 1 +github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 1 +github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 1 +github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 +github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 1 +github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 1 +github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 +github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 1 +github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 +github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 +github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 +github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 +github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 +github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 +github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 +github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 +github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 +github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 1 +github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 +github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 1 +github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 1 +github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 +github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 1 +github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 1 +github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 1 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 +github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 +github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 +github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 1 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 1 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 1 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 +github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 +github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 +github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 +github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 +github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 +github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 +github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 +github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 +github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 +github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 1 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 1 +github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 +github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 +github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 0 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 0 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 0 +github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 +github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 0 +github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 0 +github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 0 +github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 +github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 +github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 +github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 +github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 +github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 +github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 +github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 +github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 +github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 +github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 +github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 +github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 +github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 +github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 +github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 +github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 +github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 +github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 +github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 +github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 +github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 +github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 +github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 +github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 +github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 +github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 +github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 +github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 +github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 +github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 +github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 +github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 +github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 +github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 +github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 +github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 +github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 +github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 +github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 +github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 +github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 +github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 +github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 +github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 +github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 +github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 +github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 +github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 +github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 +github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 +github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 +github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 +github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 +github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 +github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 +github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 +github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 +github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 +github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 +github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 +github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 +github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 +github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 +github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 +github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 +github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 +github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 +github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 +github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 +github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 +github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 +github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 +github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 +github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 +github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 1 +github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 +github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 1 +github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 +github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 1 +github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 1 +github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 1 +github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 1 +github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 1 +github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 1 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 1 +github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 1 +github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 1 +github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 1 +github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 1 +github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 +github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 1 +github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 +github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 +github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 +github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 +github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 +github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 +github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 +github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 +github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 +github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 +github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 0 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:32.88,35.9 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:35.9,37.3 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:39.2,39.33 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:40.18,42.56 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:43.20,45.62 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:46.10,47.15 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:52.60,55.16 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:55.16,58.3 2 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:60.2,60.12 1 0 +github.com/echovault/echovault/internal/memberlist/broadcast.go:64.55,66.2 0 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:42.47,46.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:49.54,59.16 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:63.2,63.10 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:67.54,69.55 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:69.55,72.3 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:74.2,74.20 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:75.18,77.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:77.39,80.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:86.19,88.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:88.39,91.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:93.3,99.67 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:99.67,101.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:103.20,105.39 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:105.39,108.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:110.3,115.17 3 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:115.17,118.4 2 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.3,120.67 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:120.67,122.4 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:127.71,129.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:132.56,135.2 1 0 +github.com/echovault/echovault/internal/memberlist/delegate.go:138.68,140.2 0 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:33.62,37.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:40.71,42.2 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:45.72,52.16 4 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:52.16,55.3 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:57.2,59.16 2 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:59.16,61.3 1 0 +github.com/echovault/echovault/internal/memberlist/event_delegate.go:65.74,67.2 0 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:56.43,63.2 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:65.58,80.26 7 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:80.26,84.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:85.26,89.4 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:93.2,94.41 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:94.41,99.3 4 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:101.2,104.16 3 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:104.16,106.3 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.2,108.37 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:108.37,111.70 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:111.70,113.18 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:113.18,115.5 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:116.4,116.14 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.3,119.17 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:119.17,121.4 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:123.3,123.27 1 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:127.45,137.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:141.72,154.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:158.75,171.2 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:173.43,176.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:176.16,179.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:181.2,182.16 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:182.16,185.3 2 0 +github.com/echovault/echovault/internal/memberlist/memberlist.go:187.2,187.49 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:25.72,27.16 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:27.16,29.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:31.2,35.9 4 1 +github.com/echovault/echovault/internal/modules/string/commands.go:35.9,37.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:39.2,41.16 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:41.16,43.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:45.2,46.9 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:46.9,48.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:51.2,51.24 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:51.24,53.94 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:53.94,55.4 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:56.3,56.58 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:60.2,60.16 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:60.16,62.94 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:62.94,64.4 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:65.3,65.58 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:68.2,70.35 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:70.35,72.24 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:72.24,75.12 3 1 +github.com/echovault/echovault/internal/modules/string/commands.go:78.3,79.8 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:82.2,82.103 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:82.103,84.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:86.2,86.59 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:89.70,91.16 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:91.16,93.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:95.2,98.16 3 1 +github.com/echovault/echovault/internal/modules/string/commands.go:98.16,100.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:102.2,104.9 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:104.9,106.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:108.2,108.56 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:111.70,113.16 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:113.16,115.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:117.2,124.24 6 1 +github.com/echovault/echovault/internal/modules/string/commands.go:124.24,126.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:128.2,128.16 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:128.16,130.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:132.2,133.9 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:133.9,135.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:137.2,137.15 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:137.15,139.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:140.2,140.13 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:140.13,142.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:144.2,144.30 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:144.30,146.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:148.2,148.22 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:148.22,150.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:152.2,152.17 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:152.17,155.3 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:157.2,159.14 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:159.14,161.38 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:161.38,163.4 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:164.3,164.12 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:167.2,167.65 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:170.70,172.16 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:172.16,174.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:176.2,179.16 4 1 +github.com/echovault/echovault/internal/modules/string/commands.go:179.16,182.18 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:182.18,184.4 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:185.3,185.57 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:187.2,188.9 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:188.9,190.3 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:191.2,194.17 2 1 +github.com/echovault/echovault/internal/modules/string/commands.go:194.17,196.3 1 0 +github.com/echovault/echovault/internal/modules/string/commands.go:197.2,197.59 1 1 +github.com/echovault/echovault/internal/modules/string/commands.go:200.36,249.2 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:24.78,25.19 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:25.19,27.3 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:28.2,32.8 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:35.76,36.19 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:36.19,38.3 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:39.2,43.8 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:46.76,47.19 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:47.19,49.3 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:50.2,54.8 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:57.76,58.19 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:58.19,60.3 1 1 +github.com/echovault/echovault/internal/modules/string/key_funcs.go:61.2,65.8 1 1 +github.com/echovault/echovault/internal/raft/fsm.go:48.36,52.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:55.50,56.18 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:57.10,57.10 0 0 +github.com/echovault/echovault/internal/raft/fsm.go:59.23,62.60 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:62.60,67.4 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:69.3,74.40 5 0 +github.com/echovault/echovault/internal/raft/fsm.go:75.11,79.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:81.21,82.66 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:82.66,87.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:88.4,91.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:93.18,96.18 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:96.18,101.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:103.4,106.18 3 0 +github.com/echovault/echovault/internal/raft/fsm.go:106.18,111.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:112.4,113.10 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:113.10,115.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.4,117.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:117.96,122.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:122.10,127.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:131.2,131.12 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:135.54,143.2 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:146.55,149.16 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:149.16,152.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:154.2,159.48 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:159.48,162.3 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.2,165.81 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:165.81,167.34 2 0 +github.com/echovault/echovault/internal/raft/fsm.go:167.34,168.96 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:168.96,170.5 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:171.4,171.60 1 0 +github.com/echovault/echovault/internal/raft/fsm.go:176.2,178.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:39.50,43.2 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:46.58,50.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:50.16,53.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:55.2,62.16 3 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:62.16,65.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.2,67.40 1 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:67.40,70.3 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:72.2,74.12 2 0 +github.com/echovault/echovault/internal/raft/fsm_snapshot.go:78.30,80.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:52.31,56.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:58.46,70.24 9 0 +github.com/echovault/echovault/internal/raft/raft.go:70.24,75.3 3 0 +github.com/echovault/echovault/internal/raft/raft.go:75.8,77.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:77.17,79.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:81.3,82.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:82.17,84.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:86.3,89.17 3 0 +github.com/echovault/echovault/internal/raft/raft.go:89.17,91.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:94.2,96.16 3 0 +github.com/echovault/echovault/internal/raft/raft.go:96.16,98.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:100.2,108.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:108.16,110.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:113.2,133.16 2 0 +github.com/echovault/echovault/internal/raft/raft.go:133.16,135.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.2,137.27 1 0 +github.com/echovault/echovault/internal/raft/raft.go:137.27,148.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:150.2,150.21 1 0 +github.com/echovault/echovault/internal/raft/raft.go:153.74,155.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:157.36,159.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:161.38,163.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:165.40,172.2 4 0 +github.com/echovault/echovault/internal/raft/raft.go:179.9,180.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:180.22,182.44 2 0 +github.com/echovault/echovault/internal/raft/raft.go:182.44,184.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.3,186.56 1 0 +github.com/echovault/echovault/internal/raft/raft.go:186.56,188.42 1 0 +github.com/echovault/echovault/internal/raft/raft.go:188.42,190.5 1 0 +github.com/echovault/echovault/internal/raft/raft.go:193.3,194.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:194.17,196.4 1 0 +github.com/echovault/echovault/internal/raft/raft.go:199.2,199.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:202.61,203.23 1 0 +github.com/echovault/echovault/internal/raft/raft.go:203.23,205.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.2,207.73 1 0 +github.com/echovault/echovault/internal/raft/raft.go:207.73,209.3 1 0 +github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 0 +github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 +github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 0 +github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 0 +github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 +github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 +github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 0 +github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 0 +github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 0 +github.com/echovault/echovault/internal/utils.go:49.15,52.3 2 0 +github.com/echovault/echovault/internal/utils.go:54.2,56.10 2 0 +github.com/echovault/echovault/internal/utils.go:59.43,63.16 3 0 +github.com/echovault/echovault/internal/utils.go:63.16,65.3 1 0 +github.com/echovault/echovault/internal/utils.go:67.2,68.42 2 0 +github.com/echovault/echovault/internal/utils.go:68.42,70.3 1 0 +github.com/echovault/echovault/internal/utils.go:72.2,72.17 1 0 +github.com/echovault/echovault/internal/utils.go:75.47,82.6 4 0 +github.com/echovault/echovault/internal/utils.go:82.6,84.43 2 0 +github.com/echovault/echovault/internal/utils.go:84.43,85.9 1 0 +github.com/echovault/echovault/internal/utils.go:87.3,87.17 1 0 +github.com/echovault/echovault/internal/utils.go:87.17,89.4 1 0 +github.com/echovault/echovault/internal/utils.go:90.3,91.21 2 0 +github.com/echovault/echovault/internal/utils.go:91.21,92.9 1 0 +github.com/echovault/echovault/internal/utils.go:94.3,94.15 1 0 +github.com/echovault/echovault/internal/utils.go:97.2,97.37 1 0 +github.com/echovault/echovault/internal/utils.go:100.120,102.20 2 0 +github.com/echovault/echovault/internal/utils.go:102.20,104.3 1 0 +github.com/echovault/echovault/internal/utils.go:105.2,105.16 1 0 +github.com/echovault/echovault/internal/utils.go:105.16,107.3 1 0 +github.com/echovault/echovault/internal/utils.go:108.2,108.24 1 0 +github.com/echovault/echovault/internal/utils.go:108.24,110.3 1 0 +github.com/echovault/echovault/internal/utils.go:111.2,111.21 1 0 +github.com/echovault/echovault/internal/utils.go:111.21,113.3 1 0 +github.com/echovault/echovault/internal/utils.go:114.2,114.16 1 0 +github.com/echovault/echovault/internal/utils.go:117.37,119.16 2 0 +github.com/echovault/echovault/internal/utils.go:119.16,121.3 1 0 +github.com/echovault/echovault/internal/utils.go:122.2,122.15 1 0 +github.com/echovault/echovault/internal/utils.go:122.15,123.37 1 0 +github.com/echovault/echovault/internal/utils.go:123.37,125.4 1 0 +github.com/echovault/echovault/internal/utils.go:128.2,130.23 2 0 +github.com/echovault/echovault/internal/utils.go:133.72,134.65 1 0 +github.com/echovault/echovault/internal/utils.go:134.65,137.3 1 0 +github.com/echovault/echovault/internal/utils.go:138.2,138.18 1 0 +github.com/echovault/echovault/internal/utils.go:138.18,141.3 1 0 +github.com/echovault/echovault/internal/utils.go:142.2,142.49 1 0 +github.com/echovault/echovault/internal/utils.go:142.49,143.52 1 0 +github.com/echovault/echovault/internal/utils.go:143.52,145.4 1 0 +github.com/echovault/echovault/internal/utils.go:147.2,147.71 1 0 +github.com/echovault/echovault/internal/utils.go:150.66,152.2 1 0 +github.com/echovault/echovault/internal/utils.go:154.24,155.11 1 0 +github.com/echovault/echovault/internal/utils.go:155.11,157.3 1 0 +github.com/echovault/echovault/internal/utils.go:158.2,158.10 1 0 +github.com/echovault/echovault/internal/utils.go:162.49,166.16 3 0 +github.com/echovault/echovault/internal/utils.go:166.16,168.3 1 0 +github.com/echovault/echovault/internal/utils.go:170.2,171.17 2 0 +github.com/echovault/echovault/internal/utils.go:172.12,173.19 1 0 +github.com/echovault/echovault/internal/utils.go:174.12,175.26 1 0 +github.com/echovault/echovault/internal/utils.go:176.12,177.33 1 0 +github.com/echovault/echovault/internal/utils.go:178.12,179.40 1 0 +github.com/echovault/echovault/internal/utils.go:180.12,181.47 1 0 +github.com/echovault/echovault/internal/utils.go:182.10,183.91 1 0 +github.com/echovault/echovault/internal/utils.go:186.2,186.30 1 0 +github.com/echovault/echovault/internal/utils.go:190.49,191.20 1 0 +github.com/echovault/echovault/internal/utils.go:191.20,193.3 1 0 +github.com/echovault/echovault/internal/utils.go:195.2,199.36 3 0 +github.com/echovault/echovault/internal/utils.go:199.36,201.3 1 0 +github.com/echovault/echovault/internal/utils.go:206.2,210.40 3 0 +github.com/echovault/echovault/internal/utils.go:214.100,215.36 1 1 +github.com/echovault/echovault/internal/utils.go:215.36,217.26 2 1 +github.com/echovault/echovault/internal/utils.go:217.26,219.35 1 1 +github.com/echovault/echovault/internal/utils.go:219.35,220.13 1 0 +github.com/echovault/echovault/internal/utils.go:223.4,223.30 1 1 +github.com/echovault/echovault/internal/utils.go:223.30,225.5 1 0 +github.com/echovault/echovault/internal/utils.go:227.3,227.36 1 1 +github.com/echovault/echovault/internal/utils.go:227.36,229.4 1 0 +github.com/echovault/echovault/internal/utils.go:231.2,231.14 1 1 +github.com/echovault/echovault/internal/utils.go:236.43,237.14 1 0 +github.com/echovault/echovault/internal/utils.go:237.14,239.3 1 0 +github.com/echovault/echovault/internal/utils.go:240.2,240.30 1 0 +github.com/echovault/echovault/internal/utils.go:240.30,242.3 1 0 +github.com/echovault/echovault/internal/utils.go:243.2,243.30 1 0 +github.com/echovault/echovault/internal/utils.go:243.30,245.3 1 0 +github.com/echovault/echovault/internal/utils.go:247.2,248.21 2 0 +github.com/echovault/echovault/internal/utils.go:248.21,250.3 1 0 +github.com/echovault/echovault/internal/utils.go:252.2,253.29 2 0 +github.com/echovault/echovault/internal/utils.go:253.29,255.13 2 0 +github.com/echovault/echovault/internal/utils.go:255.13,256.9 1 0 +github.com/echovault/echovault/internal/utils.go:260.2,260.10 1 0 +github.com/echovault/echovault/internal/utils.go:263.41,265.28 2 0 +github.com/echovault/echovault/internal/utils.go:265.28,267.3 1 0 +github.com/echovault/echovault/internal/utils.go:268.2,268.20 1 0 +github.com/echovault/echovault/internal/utils.go:271.47,274.16 3 0 +github.com/echovault/echovault/internal/utils.go:274.16,276.3 1 0 +github.com/echovault/echovault/internal/utils.go:277.2,277.24 1 0 +github.com/echovault/echovault/internal/utils.go:280.52,283.16 3 0 +github.com/echovault/echovault/internal/utils.go:283.16,285.3 1 0 +github.com/echovault/echovault/internal/utils.go:286.2,286.24 1 0 +github.com/echovault/echovault/internal/utils.go:289.50,292.16 3 0 +github.com/echovault/echovault/internal/utils.go:292.16,294.3 1 0 +github.com/echovault/echovault/internal/utils.go:295.2,295.25 1 0 +github.com/echovault/echovault/internal/utils.go:298.52,301.16 3 0 +github.com/echovault/echovault/internal/utils.go:301.16,303.3 1 0 +github.com/echovault/echovault/internal/utils.go:304.2,304.23 1 0 +github.com/echovault/echovault/internal/utils.go:307.51,310.16 3 0 +github.com/echovault/echovault/internal/utils.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/utils.go:313.2,313.22 1 0 +github.com/echovault/echovault/internal/utils.go:316.59,320.16 3 0 +github.com/echovault/echovault/internal/utils.go:320.16,322.3 1 0 +github.com/echovault/echovault/internal/utils.go:324.2,324.16 1 0 +github.com/echovault/echovault/internal/utils.go:324.16,326.3 1 0 +github.com/echovault/echovault/internal/utils.go:328.2,328.39 1 0 +github.com/echovault/echovault/internal/utils.go:328.39,330.3 1 0 +github.com/echovault/echovault/internal/utils.go:332.2,333.30 2 0 +github.com/echovault/echovault/internal/utils.go:333.30,334.17 1 0 +github.com/echovault/echovault/internal/utils.go:334.17,336.12 2 0 +github.com/echovault/echovault/internal/utils.go:338.3,338.22 1 0 +github.com/echovault/echovault/internal/utils.go:340.2,340.17 1 0 +github.com/echovault/echovault/internal/utils.go:343.67,346.16 3 0 +github.com/echovault/echovault/internal/utils.go:346.16,348.3 1 0 +github.com/echovault/echovault/internal/utils.go:349.2,349.16 1 0 +github.com/echovault/echovault/internal/utils.go:349.16,351.3 1 0 +github.com/echovault/echovault/internal/utils.go:352.2,353.31 2 0 +github.com/echovault/echovault/internal/utils.go:353.31,354.18 1 0 +github.com/echovault/echovault/internal/utils.go:354.18,356.12 2 0 +github.com/echovault/echovault/internal/utils.go:358.3,359.33 2 0 +github.com/echovault/echovault/internal/utils.go:359.33,361.4 1 0 +github.com/echovault/echovault/internal/utils.go:362.3,362.17 1 0 +github.com/echovault/echovault/internal/utils.go:364.2,364.17 1 0 +github.com/echovault/echovault/internal/utils.go:367.57,370.16 3 0 +github.com/echovault/echovault/internal/utils.go:370.16,372.3 1 0 +github.com/echovault/echovault/internal/utils.go:373.2,373.16 1 0 +github.com/echovault/echovault/internal/utils.go:373.16,375.3 1 0 +github.com/echovault/echovault/internal/utils.go:376.2,377.30 2 0 +github.com/echovault/echovault/internal/utils.go:377.30,378.17 1 0 +github.com/echovault/echovault/internal/utils.go:378.17,380.12 2 0 +github.com/echovault/echovault/internal/utils.go:382.3,382.23 1 0 +github.com/echovault/echovault/internal/utils.go:384.2,384.17 1 0 +github.com/echovault/echovault/internal/utils.go:387.58,390.16 3 0 +github.com/echovault/echovault/internal/utils.go:390.16,392.3 1 0 +github.com/echovault/echovault/internal/utils.go:393.2,393.16 1 0 +github.com/echovault/echovault/internal/utils.go:393.16,395.3 1 0 +github.com/echovault/echovault/internal/utils.go:396.2,397.30 2 0 +github.com/echovault/echovault/internal/utils.go:397.30,398.17 1 0 +github.com/echovault/echovault/internal/utils.go:398.17,400.12 2 0 +github.com/echovault/echovault/internal/utils.go:402.3,402.20 1 0 +github.com/echovault/echovault/internal/utils.go:404.2,404.17 1 0 +github.com/echovault/echovault/internal/utils.go:407.70,408.32 1 0 +github.com/echovault/echovault/internal/utils.go:408.32,409.60 1 0 +github.com/echovault/echovault/internal/utils.go:409.60,411.4 1 0 +github.com/echovault/echovault/internal/utils.go:411.6,413.4 1 0 +github.com/echovault/echovault/internal/utils.go:415.2,415.30 1 0 +github.com/echovault/echovault/internal/utils.go:415.30,416.62 1 0 +github.com/echovault/echovault/internal/utils.go:416.62,418.4 1 0 +github.com/echovault/echovault/internal/utils.go:418.6,420.4 1 0 +github.com/echovault/echovault/internal/utils.go:422.2,422.13 1 0 +github.com/echovault/echovault/internal/utils.go:425.33,427.16 2 0 +github.com/echovault/echovault/internal/utils.go:427.16,429.3 1 0 +github.com/echovault/echovault/internal/utils.go:431.2,432.16 2 0 +github.com/echovault/echovault/internal/utils.go:432.16,434.3 1 0 +github.com/echovault/echovault/internal/utils.go:435.2,435.15 1 0 +github.com/echovault/echovault/internal/utils.go:435.15,437.3 1 0 +github.com/echovault/echovault/internal/utils.go:439.2,439.42 1 0 +github.com/echovault/echovault/internal/utils.go:442.61,447.12 4 0 +github.com/echovault/echovault/internal/utils.go:447.12,448.7 1 0 +github.com/echovault/echovault/internal/utils.go:448.7,450.73 2 0 +github.com/echovault/echovault/internal/utils.go:450.73,452.13 1 0 +github.com/echovault/echovault/internal/utils.go:454.4,454.9 1 0 +github.com/echovault/echovault/internal/utils.go:456.3,456.21 1 0 +github.com/echovault/echovault/internal/utils.go:459.2,460.15 2 0 +github.com/echovault/echovault/internal/utils.go:460.15,462.3 1 0 +github.com/echovault/echovault/internal/utils.go:464.2,464.9 1 0 +github.com/echovault/echovault/internal/utils.go:465.18,466.47 1 0 +github.com/echovault/echovault/internal/utils.go:467.14,468.19 1 0 +github.com/echovault/echovault/internal/utils.go:472.84,477.12 4 0 +github.com/echovault/echovault/internal/utils.go:477.12,478.7 1 0 +github.com/echovault/echovault/internal/utils.go:478.7,480.73 2 0 +github.com/echovault/echovault/internal/utils.go:480.73,482.13 1 0 +github.com/echovault/echovault/internal/utils.go:484.4,484.9 1 0 +github.com/echovault/echovault/internal/utils.go:486.3,486.21 1 0 +github.com/echovault/echovault/internal/utils.go:489.2,490.15 2 0 +github.com/echovault/echovault/internal/utils.go:490.15,492.3 1 0 +github.com/echovault/echovault/internal/utils.go:494.2,494.9 1 0 +github.com/echovault/echovault/internal/utils.go:495.18,496.47 1 0 +github.com/echovault/echovault/internal/utils.go:497.14,498.19 1 0 +github.com/echovault/echovault/internal/clock/clock.go:14.23,16.43 1 1 +github.com/echovault/echovault/internal/clock/clock.go:16.43,18.3 1 1 +github.com/echovault/echovault/internal/clock/clock.go:19.2,19.20 1 0 +github.com/echovault/echovault/internal/clock/clock.go:24.34,26.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:28.58,30.2 1 0 +github.com/echovault/echovault/internal/clock/clock.go:34.34,37.2 2 1 +github.com/echovault/echovault/internal/clock/clock.go:39.58,41.2 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:55.56,56.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:56.30,58.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:61.59,62.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:62.30,64.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:67.64,68.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:68.30,70.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:73.59,74.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:74.30,76.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:79.59,80.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:80.30,82.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:85.60,86.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:86.30,88.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:91.90,92.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:92.30,94.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:97.77,98.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:98.30,100.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:103.73,104.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:104.30,106.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:109.103,110.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:110.30,112.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:115.65,122.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:122.31,122.32 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:123.31,123.32 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:124.60,126.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:127.85,127.86 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:128.48,128.49 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:129.43,131.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:134.2,134.33 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:134.33,136.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:138.2,138.34 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:138.34,139.13 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:139.13,141.17 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:141.17,143.5 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:144.4,144.8 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:144.8,146.62 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:146.62,147.50 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:147.50,149.7 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:155.2,155.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:158.44,177.58 6 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:177.58,180.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:183.2,185.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:185.16,186.37 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:186.37,189.18 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:189.18,192.5 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:193.4,193.24 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:194.9,197.4 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:200.2,201.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:201.16,204.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:205.2,205.35 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:205.35,208.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:210.2,212.20 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:212.20,213.53 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:213.53,216.4 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:220.2,225.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:225.16,228.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:230.2,231.49 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:231.49,233.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:236.2,239.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:239.16,242.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:245.2,246.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:246.16,249.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:252.2,257.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:257.16,260.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:261.2,261.39 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:261.39,264.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:265.2,265.33 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:265.33,267.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:268.2,268.34 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:268.34,271.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:274.2,275.58 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:275.58,277.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:280.2,281.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:281.16,284.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:285.2,285.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:285.15,286.35 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:286.35,288.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:292.2,292.39 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:292.39,294.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:295.2,295.32 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:295.32,297.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:300.2,305.12 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:308.39,310.50 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:310.50,312.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:313.2,313.16 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:313.16,315.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:316.2,316.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:316.15,317.36 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:317.36,319.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:322.2,325.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:325.16,327.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:329.2,329.52 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:329.52,331.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:333.2,333.46 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:333.46,335.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:337.2,342.50 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:342.50,344.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:345.2,345.16 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:345.16,347.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:348.2,348.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:348.15,349.36 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:349.36,351.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:354.2,355.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:355.16,357.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:359.2,360.58 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:360.58,362.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:364.2,366.99 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:366.99,367.34 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:367.34,369.4 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:372.2,374.12 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:377.46,379.2 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:381.42,383.2 1 1 github.com/echovault/echovault/internal/utils.go:41.38,45.16 2 1 github.com/echovault/echovault/internal/utils.go:45.16,47.3 1 1 github.com/echovault/echovault/internal/utils.go:49.2,49.15 1 1 @@ -8615,12 +8615,12 @@ github.com/echovault/echovault/echovault/echovault.go:327.13,329.17 2 1 github.com/echovault/echovault/echovault/echovault.go:329.17,331.5 1 0 github.com/echovault/echovault/echovault/echovault.go:332.4,332.8 1 1 github.com/echovault/echovault/echovault/echovault.go:332.8,333.12 1 1 -github.com/echovault/echovault/echovault/echovault.go:334.21,337.61 2 0 -github.com/echovault/echovault/echovault/echovault.go:337.61,340.56 3 0 -github.com/echovault/echovault/echovault/echovault.go:340.56,341.69 1 0 +github.com/echovault/echovault/echovault/echovault.go:334.21,337.61 2 1 +github.com/echovault/echovault/echovault/echovault.go:337.61,340.56 3 1 +github.com/echovault/echovault/echovault/echovault.go:340.56,341.69 1 1 github.com/echovault/echovault/echovault/echovault.go:341.69,343.9 1 0 -github.com/echovault/echovault/echovault/echovault.go:344.8,344.17 1 0 -github.com/echovault/echovault/echovault/echovault.go:347.6,347.15 1 0 +github.com/echovault/echovault/echovault/echovault.go:344.8,344.17 1 1 +github.com/echovault/echovault/echovault/echovault.go:347.6,347.15 1 1 github.com/echovault/echovault/echovault/echovault.go:348.30,349.11 1 0 github.com/echovault/echovault/echovault/echovault.go:355.2,355.69 1 1 github.com/echovault/echovault/echovault/echovault.go:355.69,357.3 1 0 @@ -8878,23 +8878,23 @@ github.com/echovault/echovault/echovault/keyspace.go:563.63,565.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:569.4,572.52 3 0 github.com/echovault/echovault/echovault/keyspace.go:572.52,574.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:576.10,577.13 1 0 -github.com/echovault/echovault/echovault/keyspace.go:586.77,588.57 1 0 +github.com/echovault/echovault/echovault/keyspace.go:586.77,588.57 1 1 github.com/echovault/echovault/echovault/keyspace.go:588.57,590.3 1 0 -github.com/echovault/echovault/echovault/keyspace.go:592.2,599.60 4 0 +github.com/echovault/echovault/echovault/keyspace.go:592.2,599.60 4 1 github.com/echovault/echovault/echovault/keyspace.go:599.60,601.3 1 0 -github.com/echovault/echovault/echovault/keyspace.go:602.2,609.33 6 0 +github.com/echovault/echovault/echovault/keyspace.go:602.2,609.33 6 1 github.com/echovault/echovault/echovault/keyspace.go:609.33,610.7 1 0 github.com/echovault/echovault/echovault/keyspace.go:610.7,614.35 3 0 github.com/echovault/echovault/echovault/keyspace.go:614.35,616.10 2 0 -github.com/echovault/echovault/echovault/keyspace.go:620.2,625.25 4 0 +github.com/echovault/echovault/echovault/keyspace.go:620.2,625.25 4 1 github.com/echovault/echovault/echovault/keyspace.go:625.25,628.28 2 0 github.com/echovault/echovault/echovault/keyspace.go:628.28,629.51 1 0 github.com/echovault/echovault/echovault/keyspace.go:629.51,631.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:632.9,632.64 1 0 github.com/echovault/echovault/echovault/keyspace.go:632.64,633.60 1 0 github.com/echovault/echovault/echovault/keyspace.go:633.60,635.5 1 0 -github.com/echovault/echovault/echovault/keyspace.go:640.2,640.21 1 0 -github.com/echovault/echovault/echovault/keyspace.go:640.21,642.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:640.2,640.21 1 1 +github.com/echovault/echovault/echovault/keyspace.go:640.21,642.3 1 1 github.com/echovault/echovault/echovault/keyspace.go:644.2,647.58 2 0 github.com/echovault/echovault/echovault/keyspace.go:647.58,651.3 2 0 github.com/echovault/echovault/echovault/keyspace.go:653.2,653.12 1 0 @@ -9351,5 +9351,5 @@ github.com/echovault/echovault/internal/raft/raft.go:211.2,211.12 1 1 github.com/echovault/echovault/internal/raft/raft.go:214.37,216.2 1 0 github.com/echovault/echovault/internal/raft/raft.go:218.31,220.22 1 1 github.com/echovault/echovault/internal/raft/raft.go:220.22,222.17 2 1 -github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 0 -github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 1 +github.com/echovault/echovault/internal/raft/raft.go:222.17,225.4 2 1 +github.com/echovault/echovault/internal/raft/raft.go:226.3,226.49 1 0 diff --git a/docs/docs/commands/hash/hexpire.mdx b/docs/docs/commands/hash/hexpire.mdx new file mode 100644 index 0000000..cdb090e --- /dev/null +++ b/docs/docs/commands/hash/hexpire.mdx @@ -0,0 +1,48 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +# HEXPIRE + +### Syntax +``` +HEXPIRE key seconds [NX | XX | GT | LT] FIELDS numfields field [field...] +``` + +### Module +hash + +### Categories +fast +hash +write + +### Description +Set an expiration (TTL or time to live) in seconds on one or more fields of a given hash key. +You must specify at least one field. Field(s) will automatically be deleted from the hash key when their TTLs expire. + +### Examples + + + + Set the expiration in seconds for fields in the hash: + ```go + db, err := sugardb.NewSugarDB() + if err != nil { + log.Fatal(err) + } + respArray, err := db.HExpire("key", 500, nil, field1, field2) + ``` + + + Set the expiration in seconds for fields in the hash: + ``` + > HEXPIRE key 500 FIELDS 2 field1 field2 + ``` + + diff --git a/docs/docs/commands/hash/httl.mdx b/docs/docs/commands/hash/httl.mdx new file mode 100644 index 0000000..88b0c7f --- /dev/null +++ b/docs/docs/commands/hash/httl.mdx @@ -0,0 +1,48 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +# HTTL + +### Syntax +``` +HTTL key FIELDS numfields field [field...] +``` + +### Module +hash + +### Categories +fast +hash +read + +### Description +Returns the remaining TTL (time to live) of a hash key's field(s) that have a set expiration. +This introspection capability allows you to check how many seconds a given hash field will continue to be part of the hash key. + +### Examples + + + + Get the expiration time in seconds for fields in the hash: + ```go + db, err := sugardb.NewSugarDB() + if err != nil { + log.Fatal(err) + } + TTLArray, err := db.HTTL("key", field1, field2) + ``` + + + Get the expiration time in seconds for fields in the hash: + ``` + > HTTL key FIELDS 2 field1 field2 + ``` + + diff --git a/internal/constants/const.go b/internal/constants/const.go index 645f194..852f4ab 100644 --- a/internal/constants/const.go +++ b/internal/constants/const.go @@ -54,8 +54,10 @@ const ( ) const ( - OkResponse = "+OK\r\n" - WrongArgsResponse = "wrong number of arguments" + OkResponse = "+OK\r\n" + WrongArgsResponse = "wrong number of arguments" + MissingArgResponse = "missing argument %s" + InvalidCmdResponse = "invalid command provided" ) const ( diff --git a/internal/modules/hash/commands.go b/internal/modules/hash/commands.go index 3c3ea1b..7a26e14 100644 --- a/internal/modules/hash/commands.go +++ b/internal/modules/hash/commands.go @@ -17,12 +17,14 @@ package hash import ( "errors" "fmt" - "github.com/echovault/sugardb/internal" - "github.com/echovault/sugardb/internal/constants" "math/rand" "slices" "strconv" "strings" + "time" + + "github.com/echovault/sugardb/internal" + "github.com/echovault/sugardb/internal/constants" ) func handleHSET(params internal.HandlerFuncParams) ([]byte, error) { @@ -611,6 +613,222 @@ func handleHDEL(params internal.HandlerFuncParams) ([]byte, error) { return []byte(fmt.Sprintf(":%d\r\n", count)), nil } +func handleHEXPIRE(params internal.HandlerFuncParams) ([]byte, error) { + keys, err := hexpireKeyFunc(params.Command) + if err != nil { + return nil, err + } + key := keys.WriteKeys[0] + + // HEXPIRE key seconds [NX | XX | GT | LT] FIELDS numfields field + cmdargs := keys.WriteKeys[1:] + seconds, err := strconv.ParseInt(cmdargs[0], 10, 64) + if err != nil { + return nil, errors.New(fmt.Sprintf("seconds must be integer, was provided %q", cmdargs[0])) + } + + // FIELDS argument provides starting index to work off of to grab fields + var fieldsIdx int + if cmdargs[1] == "FIELDS" { + fieldsIdx = 1 + } else if cmdargs[2] == "FIELDS" { + fieldsIdx = 2 + } else { + return nil, errors.New(fmt.Sprintf(constants.MissingArgResponse, "FIELDS")) + } + + // index through numfields + numfields, err := strconv.ParseInt(cmdargs[fieldsIdx+1], 10, 64) + if err != nil { + return nil, errors.New(fmt.Sprintf("numberfields must be integer, was provided %q", cmdargs[fieldsIdx+1])) + } + endIdx := fieldsIdx + 2 + int(numfields) + fields := cmdargs[fieldsIdx+2 : endIdx] + + expireAt := params.GetClock().Now().Add(time.Duration(seconds) * time.Second) + + // build out response + resp := "*" + fmt.Sprintf("%v", len(fields)) + "\r\n" + + // handle not hash or bad key + keyExists := params.KeysExist(params.Context, keys.WriteKeys)[key] + if !keyExists { + for i := numfields; i > 0; i-- { + resp = resp + ":-2\r\n" + } + return []byte(resp), nil + } + + hash, ok := params.GetValues(params.Context, []string{key})[key].(Hash) + if !ok { + return nil, fmt.Errorf("value of key %s is not a hash", key) + } + + // handle expire time of 0 seconds + if seconds == 0 { + for i := numfields; i > 0; i-- { + resp = resp + ":2\r\n" + } + return []byte(resp), nil + } + + if fieldsIdx == 2 { + // Handle expire options + switch strings.ToLower(cmdargs[1]) { + case "nx": + for _, f := range fields { + _, ok := hash[f] + if !ok { + resp = resp + ":-2\r\n" + continue + } + currentExpireAt := hash[f].ExpireAt + if currentExpireAt != (time.Time{}) { + resp = resp + ":0\r\n" + continue + } + err = params.SetHashExpiry(params.Context, key, f, expireAt) + if err != nil { + return []byte(resp), err + } + + resp = resp + ":1\r\n" + + } + case "xx": + for _, f := range fields { + _, ok := hash[f] + if !ok { + resp = resp + ":-2\r\n" + continue + } + currentExpireAt := hash[f].ExpireAt + if currentExpireAt == (time.Time{}) { + resp = resp + ":0\r\n" + continue + } + err = params.SetHashExpiry(params.Context, key, f, expireAt) + if err != nil { + return []byte(resp), err + } + + resp = resp + ":1\r\n" + + } + case "gt": + for _, f := range fields { + _, ok := hash[f] + if !ok { + resp = resp + ":-2\r\n" + continue + } + currentExpireAt := hash[f].ExpireAt + //TODO + if currentExpireAt == (time.Time{}) || expireAt.Before(currentExpireAt) { + resp = resp + ":0\r\n" + continue + } + err = params.SetHashExpiry(params.Context, key, f, expireAt) + if err != nil { + return []byte(resp), err + } + + resp = resp + ":1\r\n" + + } + case "lt": + for _, f := range fields { + _, ok := hash[f] + if !ok { + resp = resp + ":-2\r\n" + continue + } + currentExpireAt := hash[f].ExpireAt + if currentExpireAt != (time.Time{}) && currentExpireAt.Before(expireAt) { + resp = resp + ":0\r\n" + continue + } + err = params.SetHashExpiry(params.Context, key, f, expireAt) + if err != nil { + return []byte(resp), err + } + + resp = resp + ":1\r\n" + + } + default: + return nil, fmt.Errorf("unknown option %s, must be one of 'NX', 'XX', 'GT', 'LT'.", strings.ToUpper(params.Command[3])) + } + } else { + for _, f := range fields { + _, ok := hash[f] + if !ok { + resp = resp + ":-2\r\n" + continue + } + err = params.SetHashExpiry(params.Context, key, f, expireAt) + if err != nil { + return []byte(resp), err + } + + resp = resp + ":1\r\n" + + } + } + + // Array resp + return []byte(resp), nil +} + +func handleHTTL(params internal.HandlerFuncParams) ([]byte, error) { + keys, err := httlKeyFunc(params.Command) + if err != nil { + return nil, err + } + + cmdargs := keys.ReadKeys[2:] + numfields, err := strconv.ParseInt(cmdargs[0], 10, 64) + if err != nil { + return nil, errors.New(fmt.Sprintf("expire time must be integer, was provided %q", cmdargs[0])) + } + + fields := cmdargs[1 : numfields+1] + // init array response + resp := "*" + fmt.Sprintf("%v", len(fields)) + "\r\n" + + // handle bad key + key := keys.ReadKeys[0] + keyExists := params.KeysExist(params.Context, keys.ReadKeys)[key] + if !keyExists { + resp = resp + ":-2\r\n" + return []byte(resp), nil + } + + // handle not a hash + hash, ok := params.GetValues(params.Context, []string{key})[key].(Hash) + if !ok { + return nil, fmt.Errorf("value at %s is not a hash", key) + } + + // build out response + for _, field := range fields { + f, ok := hash[field] + if !ok { + resp = resp + ":-2\r\n" + continue + } + if f.ExpireAt == (time.Time{}) { + resp = resp + ":-1\r\n" + continue + } + resp = resp + fmt.Sprintf(":%d\r\n", int(f.ExpireAt.Sub(params.GetClock().Now()).Round(time.Second).Seconds())) + + } + + // array response + return []byte(resp), nil +} + func Commands() []internal.Command { return []internal.Command{ { @@ -744,14 +962,23 @@ Return the string length of the values stored at the specified fields. 0 if the KeyExtractionFunc: hdelKeyFunc, HandlerFunc: handleHDEL, }, - // { - // Command: "hexpire", - // Module: constants.HashModule, - // Categories: []string{constants.HashCategory, constants.WriteCategory, constants.FastCategory}, - // Description: `(HEXPIRE key seconds [NX | XX | GT | LT] FIELDS numfields field [field ...]) Sets the expiration, in seconds, of a field in a hash.`, - // Sync: true, - // KeyExtractionFunc: hexpireKeyFunc, - // HandlerFunc: handleHEXPIRE, - // }, + { + Command: "hexpire", + Module: constants.HashModule, + Categories: []string{constants.HashCategory, constants.WriteCategory, constants.FastCategory}, + Description: `(HEXPIRE key seconds [NX | XX | GT | LT] FIELDS numfields field [field ...]) Sets the expiration, in seconds, of a field in a hash.`, + Sync: true, + KeyExtractionFunc: hexpireKeyFunc, + HandlerFunc: handleHEXPIRE, + }, + { + Command: "httl", + Module: constants.HashModule, + Categories: []string{constants.HashCategory, constants.ReadCategory, constants.FastCategory}, + Description: `HTTL key FIELDS numfields field [field ...] Returns the remaining TTL (time to live) of a hash key's field(s) that have a set expiration.`, + Sync: true, + KeyExtractionFunc: httlKeyFunc, + HandlerFunc: handleHTTL, + }, } } diff --git a/internal/modules/hash/commands_test.go b/internal/modules/hash/commands_test.go index 627603a..e0adcc0 100644 --- a/internal/modules/hash/commands_test.go +++ b/internal/modules/hash/commands_test.go @@ -16,12 +16,15 @@ package hash_test import ( "errors" + "fmt" "slices" "strconv" "strings" "testing" + "time" "github.com/echovault/sugardb/internal" + "github.com/echovault/sugardb/internal/clock" "github.com/echovault/sugardb/internal/config" "github.com/echovault/sugardb/internal/constants" "github.com/echovault/sugardb/internal/modules/hash" @@ -30,6 +33,7 @@ import ( ) func Test_Hash(t *testing.T) { + mockClock := clock.NewClock() port, err := internal.GetFreePort() if err != nil { t.Error(err) @@ -1931,4 +1935,561 @@ func Test_Hash(t *testing.T) { }) } }) + + t.Run("Test_HandleHEXPIRE", func(t *testing.T) { + t.Parallel() + conn, err := internal.GetConnection("localhost", port) + if err != nil { + t.Error(err) + return + } + defer func() { + _ = conn.Close() + }() + client := resp.NewConn(conn) + + tests := []struct { + name string + key string + presetValue hash.Hash + command []string + expectedValue string + expectedError error + }{ + + { + name: "1. Set expiration for all keys in hash, no options.", + key: "HexpireKey1", + presetValue: hash.Hash{ + "HexpireK1Field1": hash.HashValue{ + Value: "default1", + }, + "HexpireK1Field2": hash.HashValue{ + Value: "default2", + }, + "HexpireK1Field3": hash.HashValue{ + Value: "default3", + }, + }, + command: []string{"HEXPIRE", "HexpireKey1", "5", "FIELDS", "3", "HexpireK1Field1", "HexpireK1Field2", "HexpireK1Field3"}, + expectedValue: "[1 1 1]", + expectedError: nil, + }, + { + name: "2. Set expiration for one key in hash, no options.", + key: "HexpireKey2", + presetValue: hash.Hash{ + "HexpireK2Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey2", "5", "FIELDS", "1", "HexpireK2Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "3. Set expiration, expireTime already populated, no options.", + key: "HexpireKey3", + presetValue: hash.Hash{ + "HexpireK3Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey3", "100", "FIELDS", "1", "HexpireK3Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "4. Set expiration, option NX with no expire time currently set.", + key: "HexpireKey4", + presetValue: hash.Hash{ + "HexpireK4Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey4", "5", "NX", "FIELDS", "1", "HexpireK4Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "5. Set expiration, option NX with an expire time already set.", + key: "HexpireKey5", + presetValue: hash.Hash{ + "HexpireK5Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey5", "100", "NX", "FIELDS", "1", "HexpireK5Field1"}, + expectedValue: "[0]", + expectedError: nil, + }, + { + name: "6. Set expiration, option XX with no expire time currently set.", + key: "HexpireKey6", + presetValue: hash.Hash{ + "HexpireK6Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey6", "5", "XX", "FIELDS", "1", "HexpireK6Field1"}, + expectedValue: "[0]", + expectedError: nil, + }, + { + name: "7. Set expiration, option XX with expire time already set.", + key: "HexpireKey7", + presetValue: hash.Hash{ + "HexpireK7Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey7", "100", "XX", "FIELDS", "1", "HexpireK7Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "8. Set expiration, option GT with expire time less than one provided.", + key: "HexpireKey8", + presetValue: hash.Hash{ + "HexpireK8Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey8", "1000", "GT", "FIELDS", "1", "HexpireK8Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "9. Set expiration, option GT with expire time greater than one provided.", + key: "HexpireKey9", + presetValue: hash.Hash{ + "HexpireK9Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey9", "100", "GT", "FIELDS", "1", "HexpireK9Field1"}, + expectedValue: "[0]", + expectedError: nil, + }, + { + name: "10. Set expiration, option LT with expire time less than one provided.", + key: "HexpireKey10", + presetValue: hash.Hash{ + "HexpireK10Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey10", "1000", "LT", "FIELDS", "1", "HexpireK10Field1"}, + expectedValue: "[0]", + expectedError: nil, + }, + { + name: "11. Set expiration, option LT with expire time greater than one provided.", + key: "HexpireKey11", + presetValue: hash.Hash{ + "HexpireK11Field1": hash.HashValue{ + Value: "default1", + ExpireAt: mockClock.Now().Add(500 * time.Second), + }, + }, + command: []string{"HEXPIRE", "HexpireKey11", "100", "LT", "FIELDS", "1", "HexpireK11Field1"}, + expectedValue: "[1]", + expectedError: nil, + }, + { + name: "12. Set expiration, provide 0 seconds.", + key: "HexpireKey12", + presetValue: hash.Hash{ + "HexpireK12Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey12", "0", "FIELDS", "1", "HexpireK12Field1"}, + expectedValue: "[2]", + expectedError: nil, + }, + { + name: "13. Attempt to set expiration for non existent key.", + key: "HexpireKeyNOTEXIST", + presetValue: nil, + command: []string{"HEXPIRE", "HexpireKeyNOTEXIST", "100", "FIELDS", "1", "HexpireKNEField1"}, + expectedValue: "[-2]", + expectedError: nil, + }, + { + name: "14. Attempt to set expiration for field that doesn't exist.", + key: "HexpireKey14", + presetValue: hash.Hash{ + "HexpireK14Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey14", "100", "FIELDS", "2", "HexpireK14BadField1", "HexpireK14Field1"}, + expectedValue: "[-2 1]", + expectedError: nil, + }, + { + name: "15. Set expiration, command wrong length.", + key: "HexpireKey15", + presetValue: hash.Hash{ + "HexpireK15Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey15", "100", "1", "HexpireK15Field1"}, + expectedError: errors.New("Error wrong number of arguments"), + }, + { + name: "16. Set expiration, command filed numfields is not a number.", + key: "HexpireKey16", + presetValue: hash.Hash{ + "HexpireK16Field1": hash.HashValue{ + Value: "default1", + }, + }, + command: []string{"HEXPIRE", "HexpireKey16", "100", "FIELDS", "one", "HexpireK16Field1"}, + expectedError: errors.New("Error numberfields must be integer, was provided \"one\""), + }, + } + + for _, test := range tests { + + t.Run(test.name, func(t *testing.T) { + // set key with preset value + if test.presetValue != nil { + var command []resp.Value + var expected string + + command = []resp.Value{resp.StringValue("HSET"), resp.StringValue(test.key)} + for key, value := range test.presetValue { + command = append(command, []resp.Value{ + resp.StringValue(key), + resp.StringValue(value.Value.(string))}..., + ) + } + expected = strconv.Itoa(len(test.presetValue)) + + if err = client.WriteArray(command); err != nil { + t.Error(err) + } + res, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + + if !strings.EqualFold(res.String(), expected) { + t.Errorf("expected preset response to be \"%s\", got %s", expected, res.String()) + } + + } + + // preset Expire Time + for field, value := range test.presetValue { + if value.ExpireAt != (time.Time{}) { + cmd := []resp.Value{ + resp.StringValue("HEXPIRE"), + resp.StringValue(test.key), + resp.StringValue("500"), + resp.StringValue("FIELDS"), + resp.StringValue("1"), + resp.StringValue(field), + } + + if err = client.WriteArray(cmd); err != nil { + t.Error(err) + } + res, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + if res.String() != "[1]" { + t.Errorf("Error presetting expire time - Key: %s, Field: %s, response: %s", test.key, field, res.String()) + } + } + } + + // run HEXPIRE command + command := make([]resp.Value, len(test.command)) + for i, c := range test.command { + command[i] = resp.StringValue(c) + } + + if err = client.WriteArray(command); err != nil { + t.Error(err) + } + res, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + + if test.expectedError != nil { + if !strings.Contains(res.Error().Error(), test.expectedError.Error()) { + t.Errorf("expected error \"%s\", got \"%s\"", test.expectedError.Error(), res.Error()) + } + return + } + + if res.String() != test.expectedValue { + t.Errorf("expected response %q, got %q", test.expectedValue, res.String()) + } + + }) + + } + + }) + + t.Run("Test_HandleHTTL", func(t *testing.T) { + t.Parallel() + conn, err := internal.GetConnection("localhost", port) + if err != nil { + t.Error(err) + return + } + defer func() { + _ = conn.Close() + }() + client := resp.NewConn(conn) + + tests := []struct { + name string + command []string + key string + presetValue interface{} + setExpire bool + expectedValue string + expectedError error + }{ + { + name: "1. Get TTL for one field when expireTime is set.", + key: "HTTLKey1", + command: []string{"HTTL", "HTTLKey1", "FIELDS", "1", "HTTLK1Field1"}, + presetValue: hash.Hash{ + "HTTLK1Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: true, + expectedValue: "[5]", + expectedError: nil, + }, + { + name: "2. Get TTL for multiple fields when expireTime is set.", + key: "HTTLKey2", + command: []string{"HTTL", "HTTLKey2", "FIELDS", "3", "HTTLK2Field1", "HTTLK2Field2", "HTTLK2Field3"}, + presetValue: hash.Hash{ + "HTTLK2Field1": hash.HashValue{ + Value: "default1", + }, + "HTTLK2Field2": hash.HashValue{ + Value: "default1", + }, + "HTTLK2Field3": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: true, + expectedValue: "[5 5 5]", + expectedError: nil, + }, + { + name: "3. Get TTL for one field when expireTime is not set.", + key: "HTTLKey3", + command: []string{"HTTL", "HTTLKey3", "FIELDS", "1", "HTTLK3Field1"}, + presetValue: hash.Hash{ + "HTTLK3Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedValue: "[-1]", + expectedError: nil, + }, + { + name: "4. Get TTL for multiple fields when expireTime is not set.", + key: "HTTLKey4", + command: []string{"HTTL", "HTTLKey4", "FIELDS", "3", "HTTLK4Field1", "HTTLK4Field2", "HTTLK4Field3"}, + presetValue: hash.Hash{ + "HTTLK4Field1": hash.HashValue{ + Value: "default1", + }, + "HTTLK4Field2": hash.HashValue{ + Value: "default1", + }, + "HTTLK4Field3": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedValue: "[-1 -1 -1]", + expectedError: nil, + }, + { + name: "5. Try to get TTL for key that doesn't exist.", + key: "HTTLKeyNOTEXIST", + command: []string{"HTTL", "HTTLKeyNOTEXIST", "FIELDS", "1", "HTTLK1Field1"}, + presetValue: nil, + setExpire: false, + expectedValue: "[-2]", + expectedError: nil, + }, + { + name: "6. Try to get TTL for key that isn't a hash.", + key: "HTTLKey6", + command: []string{"HTTL", "HTTLKey6", "FIELDS", "1", "HTTLK6Field1"}, + presetValue: "NotaHash", + setExpire: false, + expectedError: errors.New("Error value at HTTLKey6 is not a hash"), + }, + { + name: "7. Command missing 'FIELDS'.", + key: "HTTLKey7", + command: []string{"HTTL", "HTTLKey7", "1", "HTTLK7Field1"}, + presetValue: hash.Hash{ + "HTTLK7Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedError: errors.New("Error wrong number of arguments"), + }, + { + name: "8. Command numfields provided isn't a number.", + key: "HTTLKey8", + command: []string{"HTTL", "HTTLKey8", "FIELDS", "one", "HTTLK8Field1"}, + presetValue: hash.Hash{ + "HTTLK8Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedError: errors.New("Error expire time must be integer, was provided \"one\""), + }, + { + name: "9. Command missing numfields.", + key: "HTTLKey9", + command: []string{"HTTL", "HTTLKey9", "FIELDS", "HTTLK9Field1"}, + presetValue: hash.Hash{ + "HTTLK9Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedError: errors.New("Error wrong number of arguments"), + }, + { + name: "10. Command FIELDS index contains something else.", + key: "HTTLKey10", + command: []string{"HTTL", "HTTLKey10", "NOTFIELDS", "1", "HTTLK10Field1"}, + presetValue: hash.Hash{ + "HTTLK10Field1": hash.HashValue{ + Value: "default1", + }, + }, + setExpire: false, + expectedError: errors.New("Error invalid command provided"), + }, + } + + for _, test := range tests { + t.Run(test.name, func(t *testing.T) { + // set preset values + if test.presetValue != nil { + var command []resp.Value + var expected string + + switch test.presetValue.(type) { + case string: + command = []resp.Value{ + resp.StringValue("SET"), + resp.StringValue(test.key), + resp.StringValue(test.presetValue.(string)), + } + expected = "ok" + case hash.Hash: + command = []resp.Value{resp.StringValue("HSET"), resp.StringValue(test.key)} + for key, value := range test.presetValue.(hash.Hash) { + command = append(command, []resp.Value{ + resp.StringValue(key), + resp.StringValue(value.Value.(string))}..., + ) + } + expected = strconv.Itoa(len(test.presetValue.(hash.Hash))) + } + + if err = client.WriteArray(command); err != nil { + t.Error(err) + } + + res, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + + if !strings.EqualFold(res.String(), expected) { + t.Errorf("expected preset response to be \"%s\", got %s", expected, res.String()) + } + + } + + if test.setExpire { + // set expire times + command := make([]resp.Value, len(test.presetValue.(hash.Hash))+5) + command[0] = resp.StringValue("HEXPIRE") + command[1] = resp.StringValue(test.key) + command[2] = resp.StringValue("5") + command[3] = resp.StringValue("FIELDS") + command[4] = resp.StringValue(fmt.Sprintf("%v", (len(test.presetValue.(hash.Hash))))) + + i := 0 + for k, _ := range test.presetValue.(hash.Hash) { + command[5+i] = resp.StringValue(k) + i++ + } + + if err = client.WriteArray(command); err != nil { + t.Error(err) + } + _, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + } + + // read TTL + command := make([]resp.Value, len(test.command)) + for i, v := range test.command { + command[i] = resp.StringValue(v) + } + if err = client.WriteArray(command); err != nil { + t.Error(err) + } + resp, _, err := client.ReadValue() + if err != nil { + t.Error(err) + } + + if test.expectedError != nil { + if !strings.Contains(resp.Error().Error(), test.expectedError.Error()) { + t.Errorf("expected error \"%s\", got \"%s\"", test.expectedError.Error(), resp.Error()) + } + + return + } + + if resp.String() != test.expectedValue { + t.Errorf("Expected value %v but got %v", test.expectedValue, resp) + } + + }) + + } + + }) } diff --git a/internal/modules/hash/key_funcs.go b/internal/modules/hash/key_funcs.go index 3033f20..3f3b5e5 100644 --- a/internal/modules/hash/key_funcs.go +++ b/internal/modules/hash/key_funcs.go @@ -16,6 +16,7 @@ package hash import ( "errors" + "github.com/echovault/sugardb/internal" "github.com/echovault/sugardb/internal/constants" ) @@ -169,3 +170,31 @@ func hdelKeyFunc(cmd []string) (internal.KeyExtractionFuncResult, error) { WriteKeys: cmd[1:2], }, nil } + +func hexpireKeyFunc(cmd []string) (internal.KeyExtractionFuncResult, error) { + if len(cmd) < 6 { + return internal.KeyExtractionFuncResult{}, errors.New(constants.WrongArgsResponse) + } + + return internal.KeyExtractionFuncResult{ + Channels: make([]string, 0), + ReadKeys: make([]string, 0), + WriteKeys: cmd[1:], + }, nil +} + +func httlKeyFunc(cmd []string) (internal.KeyExtractionFuncResult, error) { + if len(cmd) < 5 { + return internal.KeyExtractionFuncResult{}, errors.New(constants.WrongArgsResponse) + } + + if cmd[2] != "FIELDS" { + return internal.KeyExtractionFuncResult{}, errors.New(constants.InvalidCmdResponse) + } + + return internal.KeyExtractionFuncResult{ + Channels: make([]string, 0), + ReadKeys: cmd[1:], + WriteKeys: make([]string, 0), + }, nil +} diff --git a/internal/types.go b/internal/types.go index d7d4394..8ea591f 100644 --- a/internal/types.go +++ b/internal/types.go @@ -140,6 +140,8 @@ type HandlerFuncParams struct { KeysExist func(ctx context.Context, keys []string) map[string]bool // GetExpiry returns the expiry time of a key. GetExpiry func(ctx context.Context, key string) time.Time + // GetHashExpiry returns the expiry time of a field in a key whose value is a hash. + GetHashExpiry func(ctx context.Context, key string, field string) time.Time // DeleteKey deletes the specified key. Returns an error if the deletion was unsuccessful. DeleteKey func(ctx context.Context, key string) error // GetValues retrieves the values from the specified keys. @@ -147,8 +149,10 @@ type HandlerFuncParams struct { GetValues func(ctx context.Context, keys []string) map[string]interface{} // SetValues sets each of the keys with their corresponding values in the provided map. SetValues func(ctx context.Context, entries map[string]interface{}) error - // Set expiry sets the expiry time of the key. + // SetExpiry sets the expiry time of the key. SetExpiry func(ctx context.Context, key string, expire time.Time, touch bool) + // SetHashExpiry sets the expiry time of a field in a key whose value is a hash. + SetHashExpiry func(ctx context.Context, key string, field string, expire time.Time) error // GetClock gets the clock used by the server. // Use this when making use of time methods like .Now and .After. // This inversion of control is a helper for testing as the clock is automatically mocked in tests. diff --git a/sugardb/api_generic.go b/sugardb/api_generic.go index 7af5055..0b89ffa 100644 --- a/sugardb/api_generic.go +++ b/sugardb/api_generic.go @@ -103,6 +103,8 @@ const ( // LT - Only set the expiry time if the new expiry time is less than the current one. // // NX, GT, and LT are mutually exclusive. XX can additionally be passed in with either GT or LT. +// +// Hash only: NX, XX, GT, and LT are all mutually exclusive. type ExpireOptions interface { IsExOpt() ExOpt } diff --git a/sugardb/api_hash.go b/sugardb/api_hash.go index 611bc76..05977c1 100644 --- a/sugardb/api_hash.go +++ b/sugardb/api_hash.go @@ -15,8 +15,10 @@ package sugardb import ( - "github.com/echovault/sugardb/internal" + "fmt" "strconv" + + "github.com/echovault/sugardb/internal" ) // HRandFieldOptions modifies the behaviour of the HRandField function. @@ -354,3 +356,70 @@ func (server *SugarDB) HDel(key string, fields ...string) (int, error) { } return internal.ParseIntegerResponse(b) } + +// HExpire sets the expiration for the provided field(s) in a hash map. +// +// Parameters: +// +// `key` - string - the key to the hash map. +// +// `seconds` - int - number of seconds until expiration. +// +// `ExOpt` - ExpireOptions - One of NX, XX, GT, LT. +// +// `fields` - ...string - a list of fields to set expiration of. +// +// Returns: an integer array representing the outcome of the commmand for each field. +// - Integer reply: -2 if no such field exists in the provided hash key, or the provided key does not exist. +// - Integer reply: 0 if the specified NX | XX | GT | LT condition has not been met. +// - Integer reply: 1 if the expiration time was set/updated. +// - Integer reply: 2 when HEXPIRE/HPEXPIRE is called with 0 seconds +// +// Errors: +// +// "value of key is not a hash" - when the provided key is not a hash. +func (server *SugarDB) HExpire(key string, seconds int, ExOpt ExpireOptions, fields ...string) ([]int, error) { + secs := fmt.Sprintf("%v", seconds) + cmd := []string{"HEXPIRE", key, secs} + if ExOpt != nil { + ExpireOption := fmt.Sprintf("%v", ExOpt) + cmd = append(cmd, ExpireOption) + } + + numFields := fmt.Sprintf("%v", len(fields)) + fieldsArray := append([]string{"FIELDS", numFields}, fields...) + + cmd = append(cmd, fieldsArray...) + b, err := server.handleCommand(server.context, internal.EncodeCommand(cmd), nil, false, true) + if err != nil { + return nil, err + } + return internal.ParseIntegerArrayResponse(b) +} + +// HTTL gets the expiration for the provided field(s) in a hash map. +// +// Parameters: +// +// `key` - string - the key to the hash map. +// +// `fields` - ...string - a list of fields to get TTL for. +// +// Returns: an integer array representing the outcome of the commmand for each field. +// - Integer reply: the TTL in seconds. +// - Integer reply: -2 if no such field exists in the provided hash key, or the provided key does not exist. +// - Integer reply: -1 if the field exists but has no associated expiration set. +// +// Errors: +// +// "value of key is not a hash" - when the provided key is not a hash. +func (server *SugarDB) HTTL(key string, fields ...string) ([]int, error) { + numFields := fmt.Sprintf("%v", len(fields)) + + cmd := append([]string{"HTTL", key, "FIELDS", numFields}, fields...) + b, err := server.handleCommand(server.context, internal.EncodeCommand(cmd), nil, false, true) + if err != nil { + return nil, err + } + return internal.ParseIntegerArrayResponse(b) +} diff --git a/sugardb/api_hash_test.go b/sugardb/api_hash_test.go index 7f38b64..ee32591 100644 --- a/sugardb/api_hash_test.go +++ b/sugardb/api_hash_test.go @@ -19,6 +19,7 @@ import ( "reflect" "slices" "testing" + "time" "github.com/echovault/sugardb/internal/modules/hash" ) @@ -934,3 +935,208 @@ func TestSugarDB_HMGet(t *testing.T) { }) } } + +func TestSugarDB_HExpire(t *testing.T) { + server := createSugarDB() + tests := []struct { + name string + presetValue interface{} + key string + fields []string + expireOption ExpireOptions + want []int + wantErr bool + }{ + { + name: "1. Set Expiration from existing hash.", + key: "HExpireKey1", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + want: []int{1, 1, 1}, + wantErr: false, + }, + { + name: "2. Return -2 when attempting to get from non-existed key", + presetValue: nil, + key: "HExpireKey2", + fields: []string{"field1"}, + want: []int{-2}, + wantErr: false, + }, + { + name: "3. Error when trying to get from a value that is not a hash map", + presetValue: "Default Value", + key: "HExpireKey3", + fields: []string{"field1"}, + want: nil, + wantErr: true, + }, + { + name: "4. Set Expiration with option NX.", + key: "HExpireKey4", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + expireOption: NX, + want: []int{1, 1, 1}, + wantErr: false, + }, + { + name: "5. Set Expiration with option XX.", + key: "HExpireKey5", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + expireOption: XX, + want: []int{0, 0, 0}, + wantErr: false, + }, + { + name: "6. Set Expiration with option GT.", + key: "HExpireKey6", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + expireOption: GT, + want: []int{0, 0, 0}, + wantErr: false, + }, + { + name: "7. Set Expiration with option LT.", + key: "HExpireKey7", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + expireOption: LT, + want: []int{1, 1, 1}, + wantErr: false, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if tt.presetValue != nil { + err := presetValue(server, context.Background(), tt.key, tt.presetValue) + if err != nil { + t.Error(err) + return + } + } + got, err := server.HExpire(tt.key, 5, tt.expireOption, tt.fields...) + if (err != nil) != tt.wantErr { + t.Errorf("HExpire() error = %v, wantErr %v", err, tt.wantErr) + return + } + if !reflect.DeepEqual(got, tt.want) { + t.Errorf("HExpire() got = %v, want %v", got, tt.want) + } + }) + } +} + +func TestSugarDB_HTTL(t *testing.T) { + server := createSugarDB() + tests := []struct { + name string + presetValue interface{} + key string + fields []string + want []int + wantErr bool + }{ + { + name: "1. Get TTL for one field when expireTime is set.", + key: "HExpireKey1", + presetValue: hash.Hash{ + "field1": {Value: "value1", ExpireAt: server.clock.Now().Add(time.Duration(500) * time.Second)}, + }, + fields: []string{"field1"}, + want: []int{500}, + wantErr: false, + }, + { + name: "2. Get TTL for multiple fields when expireTime is set.", + presetValue: hash.Hash{ + "field1": {Value: "value1", ExpireAt: server.clock.Now().Add(time.Duration(500) * time.Second)}, + "field2": {Value: "value2", ExpireAt: server.clock.Now().Add(time.Duration(500) * time.Second)}, + "field3": {Value: "value3", ExpireAt: server.clock.Now().Add(time.Duration(500) * time.Second)}, + }, + key: "HExpireKey2", + fields: []string{"field1", "field2", "field3"}, + want: []int{500, 500, 500}, + wantErr: false, + }, + { + name: "3. Get TTL for one field when expireTime is not set.", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + }, + key: "HExpireKey3", + fields: []string{"field1"}, + want: []int{-1}, + wantErr: false, + }, + { + name: "4. Get TTL for multiple fields when expireTime is not set.", + key: "HExpireKey4", + presetValue: hash.Hash{ + "field1": {Value: "value1"}, + "field2": {Value: 365}, + "field3": {Value: 3.142}, + }, + fields: []string{"field1", "field2", "field3"}, + want: []int{-1, -1, -1}, + wantErr: false, + }, + { + name: "5. Try to get TTL for key that doesn't exist.", + key: "HExpireKey5", + presetValue: nil, + fields: []string{"field1"}, + want: []int{-2}, + wantErr: false, + }, + { + name: "6. Try to get TTL for key that isn't a hash.", + key: "HExpireKey6", + presetValue: "not a hash", + fields: []string{"field1", "field2", "field3"}, + want: nil, + wantErr: true, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if tt.presetValue != nil { + err := presetValue(server, context.Background(), tt.key, tt.presetValue) + if err != nil { + t.Error(err) + return + } + } + got, err := server.HTTL(tt.key, tt.fields...) + if (err != nil) != tt.wantErr { + t.Errorf("HExpire() error = %v, wantErr %v", err, tt.wantErr) + return + } + if !reflect.DeepEqual(got, tt.want) { + t.Errorf("HExpire() got = %v, want %v", got, tt.want) + } + }) + } +} diff --git a/sugardb/keyspace.go b/sugardb/keyspace.go index 7cdda79..90755ab 100644 --- a/sugardb/keyspace.go +++ b/sugardb/keyspace.go @@ -21,6 +21,7 @@ import ( "fmt" "log" "math/rand" + "reflect" "runtime" "slices" "strings" @@ -31,6 +32,7 @@ import ( "github.com/echovault/sugardb/internal" "github.com/echovault/sugardb/internal/constants" "github.com/echovault/sugardb/internal/eviction" + "github.com/echovault/sugardb/internal/modules/hash" ) // SwapDBs swaps every TCP client connection from database1 over to database2. @@ -146,6 +148,22 @@ func (server *SugarDB) getExpiry(ctx context.Context, key string) time.Time { return entry.ExpireAt } +func (server *SugarDB) getHashExpiry(ctx context.Context, key string, field string) time.Time { + server.storeLock.RLock() + defer server.storeLock.RUnlock() + + database := ctx.Value("Database").(int) + + entry, ok := server.store[database][key] + if !ok { + return time.Time{} + } + + hash := entry.Value.(hash.Hash) + + return hash[field].ExpireAt +} + func (server *SugarDB) getValues(ctx context.Context, keys []string) map[string]interface{} { server.storeLock.Lock() defer server.storeLock.Unlock() @@ -278,6 +296,30 @@ func (server *SugarDB) setExpiry(ctx context.Context, key string, expireAt time. } } +func (server *SugarDB) setHashExpiry(ctx context.Context, key string, field string, expireAt time.Time) error { + server.storeLock.Lock() + defer server.storeLock.Unlock() + + database := ctx.Value("Database").(int) + + hashmap, ok := server.store[database][key].Value.(hash.Hash) + if !ok { + return fmt.Errorf("setHashExpiry can only be used on keys whose value is a Hash") + } + hashmap[field] = hash.HashValue{ + Value: hashmap[field].Value, + ExpireAt: expireAt, + } + + server.keysWithExpiry.rwMutex.Lock() + if !slices.Contains(server.keysWithExpiry.keys[database], key) { + server.keysWithExpiry.keys[database] = append(server.keysWithExpiry.keys[database], key) + } + server.keysWithExpiry.rwMutex.Unlock() + + return nil +} + func (server *SugarDB) deleteKey(ctx context.Context, key string) error { database := ctx.Value("Database").(int) @@ -646,6 +688,31 @@ func (server *SugarDB) evictKeysWithExpiredTTL(ctx context.Context) error { server.storeLock.Lock() defer server.storeLock.Unlock() for _, k := range keys { + + // handle keys within a hash type value + value := server.store[database][k].Value + t := reflect.TypeOf(value) + if t.Kind() == reflect.Map { + + hashkey, ok := server.store[database][k].Value.(hash.Hash) + if !ok { + return fmt.Errorf("Hash value should contain type HashValue, but type %s was found.", t.Elem().Name()) + } + + for k, v := range hashkey { + if v.ExpireAt.Before(time.Now()) { + delete(hashkey, k) + } + } + + } + + // Check if key is expired, move on if it's not + ExpireTime := server.store[database][k].ExpireAt + if ExpireTime.Before(time.Now()) { + continue + } + // Delete the expired key deletedCount += 1 if !server.isInCluster() { diff --git a/sugardb/modules.go b/sugardb/modules.go index 08f68be..ccaa585 100644 --- a/sugardb/modules.go +++ b/sugardb/modules.go @@ -44,9 +44,11 @@ func (server *SugarDB) getHandlerFuncParams(ctx context.Context, cmd []string, c Connection: conn, KeysExist: server.keysExist, GetExpiry: server.getExpiry, + GetHashExpiry: server.getHashExpiry, GetValues: server.getValues, SetValues: server.setValues, SetExpiry: server.setExpiry, + SetHashExpiry: server.setHashExpiry, TakeSnapshot: server.takeSnapshot, GetLatestSnapshotTime: server.getLatestSnapshotTime, RewriteAOF: server.rewriteAOF,