function mod_counts(base) {
const arranged = arrange_by_mod(base);
const lengths = _.countBy(arranged, "length");
const repr = symbolic(arranged);
const stable = lengths[1];
return {
base,
stable,
unstable: base - BigInt(stable),
ratio: stable / Number(base),
ratio_u: (Number(base) - stable) / Number(base),
min_unstable_len: _(lengths).omit(1).keys().map(_.toNumber).min(),
max_unstable_len: _(lengths).keys().map(_.toNumber).max(),
lengths,
repr: _.join(repr, " "),
repr_count: _.countBy(repr),
highest_in_stable: _.max(repr),
lowest_in_unstable: _(arranged)
.filter((it) => it.length > 1)
.map(_.min)
.min(),
raw: arranged
};
}