TODO Solve part 2 of day 5 of year 2023 by splitting the biggest range (just one range would effectively halve the execution time) An approach that is not suboptimal involves operating on ranges, but I left that to smarter people