apache / cloudstack-gcestack
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 36 files with 2,130 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 1 file changed 21-50 times (58 lines of code)
    • 17 files changed 6-20 times (1,668 lines of code)
    • 18 files changed 1-5 times (404 lines of code)
0% | 0% | 2% | 78% | 18%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 36 files with 2,130 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 0 files changed by 11-25 contributors (0 lines of code)
    • 0 files changed by 6-10 contributors (0 lines of code)
    • 29 files changed by 2-5 contributors (2,035 lines of code)
    • 7 files changed by 1 contributor (95 lines of code)
0% | 0% | 0% | 95% | 4%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
py, json, txt, rst, ini, gitignore, yml, mako
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 0% | 2% | 78% | 18%
mako0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
ROOT0% | 0% | 100% | 0% | 0%
gstack0% | 0% | 0% | 87% | 12%
pyoauth20% | 0% | 0% | 80% | 19%
migrations0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 36)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
setup.py
in root
58 1 2013-08-26 2015-04-13 28 3 ian@ianduffy.ie ian@ianduffy.ie
instances.py
in gstack/controllers
160 7 2013-12-04 2015-04-13 18 3 runseb@gmail.com ian@ianduffy.ie
__init__.py
in gstack
66 5 2013-12-04 2015-04-13 15 3 runseb@gmail.com ian@ianduffy.ie
configure.py
in gstack
79 8 2014-05-13 2015-04-13 13 2 darrenbrogan@hotmail.com ian@ianduffy.ie
operations.py
in gstack/controllers
118 8 2013-12-04 2015-04-13 13 3 runseb@gmail.com ian@ianduffy.ie
images.py
in gstack/controllers
56 7 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
networks.py
in gstack/controllers
135 9 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
disks.py
in gstack/controllers
61 4 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
machine_type.py
in gstack/controllers
66 5 2013-12-04 2015-04-13 11 3 runseb@gmail.com ian@ianduffy.ie
project.py
in gstack/controllers
143 7 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
zones.py
in gstack/controllers
56 6 2013-12-04 2014-06-20 10 2 runseb@gmail.com darrenbrogan@hotmail.com
regions.py
in gstack/controllers
36 3 2013-12-04 2014-06-20 9 2 runseb@gmail.com darrenbrogan@hotmail.com
provider.py
in pyoauth2
299 35 2013-08-25 2015-04-13 9 2 ian@ianduffy.ie ian@ianduffy.ie
index.py
in gstack/controllers
13 1 2013-12-04 2015-04-13 8 3 runseb@gmail.com ian@ianduffy.ie
firewalls.py
in gstack/controllers
149 5 2013-12-04 2014-06-24 8 2 runseb@gmail.com darrenbrogan@hotmail.com
__init__.py
in gstack/controllers
92 7 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
110 14 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
helpers.py
in gstack
29 5 2014-06-01 2014-06-19 6 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
utils.py
in pyoauth2
34 4 2013-08-25 2015-04-13 5 2 ian@ianduffy.ie ian@ianduffy.ie
errors.py
in gstack/controllers
47 3 2013-12-04 2014-06-20 5 2 runseb@gmail.com darrenbrogan@hotmail.com
client.py
in pyoauth2
38 6 2013-08-25 2015-04-13 4 2 ian@ianduffy.ie ian@ianduffy.ie
76bb287a37d_.py
in migrations/versions
54 2 2014-06-16 2015-04-13 4 2 darrenbrogan@hotmail.com ian@ianduffy.ie
__init__.py
in gstack/models
10 - 2013-12-04 2014-06-19 3 2 runseb@gmail.com darrenbrogan@hotmail.com
refreshtoken.py
in gstack/models
12 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
accesstoken.py
in gstack/models
14 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
OAuth2.py
in gstack/controllers
20 2 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
__init__.py
in pyoauth2
1 - 2013-08-25 2015-04-13 2 1 ian@ianduffy.ie ian@ianduffy.ie
client.py
in gstack/models
8 1 2013-12-04 2014-06-16 2 2 runseb@gmail.com darrenbrogan@hotmail.com
25c3e5241cd0_.py
in migrations/versions
21 2 2014-07-27 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
core.py
in gstack
22 5 2014-06-16 2014-06-19 2 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
env.py
in migrations
37 2 2014-06-16 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
requester.py
in gstack/services
43 1 2013-12-04 2014-05-15 2 2 runseb@gmail.com darrenbrogan@hotmail.com
__init__.py
in gstack/services
1 - 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
12 1 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
__main__.py
in gstack
15 1 2014-06-08 2014-06-08 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
mako
script.py.mako
in migrations
15 - 2014-06-16 2014-06-16 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
Files With Most Contributors (Top 36)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
setup.py
in root
58 1 2013-08-26 2015-04-13 28 3 ian@ianduffy.ie ian@ianduffy.ie
instances.py
in gstack/controllers
160 7 2013-12-04 2015-04-13 18 3 runseb@gmail.com ian@ianduffy.ie
__init__.py
in gstack
66 5 2013-12-04 2015-04-13 15 3 runseb@gmail.com ian@ianduffy.ie
operations.py
in gstack/controllers
118 8 2013-12-04 2015-04-13 13 3 runseb@gmail.com ian@ianduffy.ie
networks.py
in gstack/controllers
135 9 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
images.py
in gstack/controllers
56 7 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
machine_type.py
in gstack/controllers
66 5 2013-12-04 2015-04-13 11 3 runseb@gmail.com ian@ianduffy.ie
index.py
in gstack/controllers
13 1 2013-12-04 2015-04-13 8 3 runseb@gmail.com ian@ianduffy.ie
110 14 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
__init__.py
in gstack/controllers
92 7 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
configure.py
in gstack
79 8 2014-05-13 2015-04-13 13 2 darrenbrogan@hotmail.com ian@ianduffy.ie
disks.py
in gstack/controllers
61 4 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
project.py
in gstack/controllers
143 7 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
zones.py
in gstack/controllers
56 6 2013-12-04 2014-06-20 10 2 runseb@gmail.com darrenbrogan@hotmail.com
regions.py
in gstack/controllers
36 3 2013-12-04 2014-06-20 9 2 runseb@gmail.com darrenbrogan@hotmail.com
provider.py
in pyoauth2
299 35 2013-08-25 2015-04-13 9 2 ian@ianduffy.ie ian@ianduffy.ie
firewalls.py
in gstack/controllers
149 5 2013-12-04 2014-06-24 8 2 runseb@gmail.com darrenbrogan@hotmail.com
errors.py
in gstack/controllers
47 3 2013-12-04 2014-06-20 5 2 runseb@gmail.com darrenbrogan@hotmail.com
utils.py
in pyoauth2
34 4 2013-08-25 2015-04-13 5 2 ian@ianduffy.ie ian@ianduffy.ie
76bb287a37d_.py
in migrations/versions
54 2 2014-06-16 2015-04-13 4 2 darrenbrogan@hotmail.com ian@ianduffy.ie
client.py
in pyoauth2
38 6 2013-08-25 2015-04-13 4 2 ian@ianduffy.ie ian@ianduffy.ie
refreshtoken.py
in gstack/models
12 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
__init__.py
in gstack/models
10 - 2013-12-04 2014-06-19 3 2 runseb@gmail.com darrenbrogan@hotmail.com
accesstoken.py
in gstack/models
14 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
OAuth2.py
in gstack/controllers
20 2 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
env.py
in migrations
37 2 2014-06-16 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
25c3e5241cd0_.py
in migrations/versions
21 2 2014-07-27 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
client.py
in gstack/models
8 1 2013-12-04 2014-06-16 2 2 runseb@gmail.com darrenbrogan@hotmail.com
requester.py
in gstack/services
43 1 2013-12-04 2014-05-15 2 2 runseb@gmail.com darrenbrogan@hotmail.com
helpers.py
in gstack
29 5 2014-06-01 2014-06-19 6 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
core.py
in gstack
22 5 2014-06-16 2014-06-19 2 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
__init__.py
in pyoauth2
1 - 2013-08-25 2015-04-13 2 1 ian@ianduffy.ie ian@ianduffy.ie
mako
script.py.mako
in migrations
15 - 2014-06-16 2014-06-16 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
12 1 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
__main__.py
in gstack
15 1 2014-06-08 2014-06-08 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
__init__.py
in gstack/services
1 - 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
Files With Least Contributors (Top 36)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
helpers.py
in gstack
29 5 2014-06-01 2014-06-19 6 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
core.py
in gstack
22 5 2014-06-16 2014-06-19 2 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
mako
script.py.mako
in migrations
15 - 2014-06-16 2014-06-16 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
__main__.py
in gstack
15 1 2014-06-08 2014-06-08 1 1 darrenbrogan@hotmail.com darrenbrogan@hotmail.com
12 1 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
__init__.py
in gstack/services
1 - 2013-12-04 2013-12-04 1 1 runseb@gmail.com runseb@gmail.com
__init__.py
in pyoauth2
1 - 2013-08-25 2015-04-13 2 1 ian@ianduffy.ie ian@ianduffy.ie
provider.py
in pyoauth2
299 35 2013-08-25 2015-04-13 9 2 ian@ianduffy.ie ian@ianduffy.ie
firewalls.py
in gstack/controllers
149 5 2013-12-04 2014-06-24 8 2 runseb@gmail.com darrenbrogan@hotmail.com
project.py
in gstack/controllers
143 7 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
configure.py
in gstack
79 8 2014-05-13 2015-04-13 13 2 darrenbrogan@hotmail.com ian@ianduffy.ie
disks.py
in gstack/controllers
61 4 2013-12-04 2014-06-20 11 2 runseb@gmail.com darrenbrogan@hotmail.com
zones.py
in gstack/controllers
56 6 2013-12-04 2014-06-20 10 2 runseb@gmail.com darrenbrogan@hotmail.com
76bb287a37d_.py
in migrations/versions
54 2 2014-06-16 2015-04-13 4 2 darrenbrogan@hotmail.com ian@ianduffy.ie
errors.py
in gstack/controllers
47 3 2013-12-04 2014-06-20 5 2 runseb@gmail.com darrenbrogan@hotmail.com
requester.py
in gstack/services
43 1 2013-12-04 2014-05-15 2 2 runseb@gmail.com darrenbrogan@hotmail.com
client.py
in pyoauth2
38 6 2013-08-25 2015-04-13 4 2 ian@ianduffy.ie ian@ianduffy.ie
env.py
in migrations
37 2 2014-06-16 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
regions.py
in gstack/controllers
36 3 2013-12-04 2014-06-20 9 2 runseb@gmail.com darrenbrogan@hotmail.com
utils.py
in pyoauth2
34 4 2013-08-25 2015-04-13 5 2 ian@ianduffy.ie ian@ianduffy.ie
25c3e5241cd0_.py
in migrations/versions
21 2 2014-07-27 2015-04-13 2 2 darrenbrogan@hotmail.com ian@ianduffy.ie
OAuth2.py
in gstack/controllers
20 2 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
accesstoken.py
in gstack/models
14 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
refreshtoken.py
in gstack/models
12 1 2013-12-04 2014-07-25 3 2 runseb@gmail.com darrenbrogan@hotmail.com
__init__.py
in gstack/models
10 - 2013-12-04 2014-06-19 3 2 runseb@gmail.com darrenbrogan@hotmail.com
client.py
in gstack/models
8 1 2013-12-04 2014-06-16 2 2 runseb@gmail.com darrenbrogan@hotmail.com
instances.py
in gstack/controllers
160 7 2013-12-04 2015-04-13 18 3 runseb@gmail.com ian@ianduffy.ie
networks.py
in gstack/controllers
135 9 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
operations.py
in gstack/controllers
118 8 2013-12-04 2015-04-13 13 3 runseb@gmail.com ian@ianduffy.ie
110 14 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
__init__.py
in gstack/controllers
92 7 2013-12-04 2015-04-13 7 3 runseb@gmail.com ian@ianduffy.ie
__init__.py
in gstack
66 5 2013-12-04 2015-04-13 15 3 runseb@gmail.com ian@ianduffy.ie
machine_type.py
in gstack/controllers
66 5 2013-12-04 2015-04-13 11 3 runseb@gmail.com ian@ianduffy.ie
setup.py
in root
58 1 2013-08-26 2015-04-13 28 3 ian@ianduffy.ie ian@ianduffy.ie
images.py
in gstack/controllers
56 7 2013-12-04 2015-04-13 12 3 runseb@gmail.com ian@ianduffy.ie
index.py
in gstack/controllers
13 1 2013-12-04 2015-04-13 8 3 runseb@gmail.com ian@ianduffy.ie
Correlations

File Size vs. Number of Changes: 36 points

gstack/__init__.py x: 66 lines of code y: 15 # changes gstack/configure.py x: 79 lines of code y: 13 # changes gstack/controllers/__init__.py x: 92 lines of code y: 7 # changes gstack/controllers/images.py x: 56 lines of code y: 12 # changes gstack/controllers/index.py x: 13 lines of code y: 8 # changes gstack/controllers/instances.py x: 160 lines of code y: 18 # changes gstack/controllers/machine_type.py x: 66 lines of code y: 11 # changes gstack/controllers/networks.py x: 135 lines of code y: 12 # changes gstack/controllers/operations.py x: 118 lines of code y: 13 # changes gstack/oauth2provider.py x: 110 lines of code y: 7 # changes migrations/env.py x: 37 lines of code y: 2 # changes migrations/versions/25c3e5241cd0_.py x: 21 lines of code y: 2 # changes migrations/versions/76bb287a37d_.py x: 54 lines of code y: 4 # changes pyoauth2/__init__.py x: 1 lines of code y: 2 # changes pyoauth2/client.py x: 38 lines of code y: 4 # changes pyoauth2/provider.py x: 299 lines of code y: 9 # changes pyoauth2/utils.py x: 34 lines of code y: 5 # changes setup.py x: 58 lines of code y: 28 # changes gstack/controllers/OAuth2.py x: 20 lines of code y: 3 # changes gstack/models/accesstoken.py x: 14 lines of code y: 3 # changes gstack/models/refreshtoken.py x: 12 lines of code y: 3 # changes gstack/controllers/firewalls.py x: 149 lines of code y: 8 # changes gstack/controllers/disks.py x: 61 lines of code y: 11 # changes gstack/controllers/errors.py x: 47 lines of code y: 5 # changes gstack/controllers/project.py x: 143 lines of code y: 11 # changes gstack/controllers/regions.py x: 36 lines of code y: 9 # changes gstack/controllers/zones.py x: 56 lines of code y: 10 # changes gstack/core.py x: 22 lines of code y: 2 # changes gstack/helpers.py x: 29 lines of code y: 6 # changes gstack/models/__init__.py x: 10 lines of code y: 3 # changes gstack/models/client.py x: 8 lines of code y: 2 # changes migrations/script.py.mako x: 15 lines of code y: 1 # changes gstack/services/requester.py x: 43 lines of code y: 2 # changes gstack/authentication.py x: 12 lines of code y: 1 # changes gstack/services/__init__.py x: 1 lines of code y: 1 # changes
28.0
# changes
  min: 1.0
  average: 7.06
  25th percentile: 2.0
  median: 5.5
  75th percentile: 11.0
  max: 28.0
0 299.0
lines of code
min: 1.0 | average: 59.17 | 25th percentile: 15.0 | median: 40.5 | 75th percentile: 75.75 | max: 299.0

Number of Contributors vs. Number of Changes: 36 points

gstack/__init__.py x: 3 # contributors y: 15 # changes gstack/configure.py x: 2 # contributors y: 13 # changes gstack/controllers/__init__.py x: 3 # contributors y: 7 # changes gstack/controllers/images.py x: 3 # contributors y: 12 # changes gstack/controllers/index.py x: 3 # contributors y: 8 # changes gstack/controllers/instances.py x: 3 # contributors y: 18 # changes gstack/controllers/machine_type.py x: 3 # contributors y: 11 # changes gstack/controllers/operations.py x: 3 # contributors y: 13 # changes migrations/env.py x: 2 # contributors y: 2 # changes migrations/versions/76bb287a37d_.py x: 2 # contributors y: 4 # changes pyoauth2/__init__.py x: 1 # contributors y: 2 # changes pyoauth2/provider.py x: 2 # contributors y: 9 # changes pyoauth2/utils.py x: 2 # contributors y: 5 # changes setup.py x: 3 # contributors y: 28 # changes gstack/controllers/OAuth2.py x: 2 # contributors y: 3 # changes gstack/controllers/firewalls.py x: 2 # contributors y: 8 # changes gstack/controllers/disks.py x: 2 # contributors y: 11 # changes gstack/controllers/zones.py x: 2 # contributors y: 10 # changes gstack/helpers.py x: 1 # contributors y: 6 # changes migrations/script.py.mako x: 1 # contributors y: 1 # changes
28.0
# changes
  min: 1.0
  average: 7.06
  25th percentile: 2.0
  median: 5.5
  75th percentile: 11.0
  max: 28.0
0 3.0
# contributors
min: 1.0 | average: 2.08 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 3.0 | max: 3.0

Number of Contributors vs. File Size: 36 points

gstack/__init__.py x: 3 # contributors y: 66 lines of code gstack/configure.py x: 2 # contributors y: 79 lines of code gstack/controllers/__init__.py x: 3 # contributors y: 92 lines of code gstack/controllers/images.py x: 3 # contributors y: 56 lines of code gstack/controllers/index.py x: 3 # contributors y: 13 lines of code gstack/controllers/instances.py x: 3 # contributors y: 160 lines of code gstack/controllers/networks.py x: 3 # contributors y: 135 lines of code gstack/controllers/operations.py x: 3 # contributors y: 118 lines of code gstack/oauth2provider.py x: 3 # contributors y: 110 lines of code migrations/env.py x: 2 # contributors y: 37 lines of code migrations/versions/25c3e5241cd0_.py x: 2 # contributors y: 21 lines of code migrations/versions/76bb287a37d_.py x: 2 # contributors y: 54 lines of code pyoauth2/__init__.py x: 1 # contributors y: 1 lines of code pyoauth2/client.py x: 2 # contributors y: 38 lines of code pyoauth2/provider.py x: 2 # contributors y: 299 lines of code pyoauth2/utils.py x: 2 # contributors y: 34 lines of code setup.py x: 3 # contributors y: 58 lines of code gstack/controllers/OAuth2.py x: 2 # contributors y: 20 lines of code gstack/models/accesstoken.py x: 2 # contributors y: 14 lines of code gstack/models/refreshtoken.py x: 2 # contributors y: 12 lines of code gstack/controllers/firewalls.py x: 2 # contributors y: 149 lines of code gstack/controllers/disks.py x: 2 # contributors y: 61 lines of code gstack/controllers/errors.py x: 2 # contributors y: 47 lines of code gstack/controllers/project.py x: 2 # contributors y: 143 lines of code gstack/controllers/regions.py x: 2 # contributors y: 36 lines of code gstack/controllers/zones.py x: 2 # contributors y: 56 lines of code gstack/core.py x: 1 # contributors y: 22 lines of code gstack/helpers.py x: 1 # contributors y: 29 lines of code gstack/models/__init__.py x: 2 # contributors y: 10 lines of code gstack/models/client.py x: 2 # contributors y: 8 lines of code migrations/script.py.mako x: 1 # contributors y: 15 lines of code gstack/services/requester.py x: 2 # contributors y: 43 lines of code gstack/authentication.py x: 1 # contributors y: 12 lines of code
299.0
lines of code
  min: 1.0
  average: 59.17
  25th percentile: 15.0
  median: 40.5
  75th percentile: 75.75
  max: 299.0
0 3.0
# contributors
min: 1.0 | average: 2.08 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 3.0 | max: 3.0