You might want to try a different storing strategy. 0.25 is above 0.4. These are, I believe, what are called in Unix flags "human numbers".

I understood the list is ordered by biggest number, aka 189 > 172 > 161 > 159 > 120

I think in semver 0.4 usually means 0.04, not 0.40..., so it should be lower than 0.25.

Edit: nevermind, I misunderstood your point