By default, Python's fractions
rounds halves to the nearest even number. If you, instead, want to round a fraction but send halves up, here's how that's done:
def roundhalfup(x: Fraction) -> int:
"""
Rounds x to the nearest integer, with ties being rounded towards positive infinity
"""
return floor(x + Fraction(1, 2))