use reducing methods instead of splicing min/max