def accidentalName(cents: int) ->str:
    """
    Given a number of cents, return the name of the accidental
    """
    accidentals = {(0): 'natural', (25): 'natural-up', (50):
        'quarter-sharp', (75): 'sharp-down', (100): 'sharp', (125):
        'sharp-up', (150): 'three-quarters-sharp', (-25): 'natural-down', (
        -50): 'quarter-flat', (-75): 'flat-up', (-100): 'flat', (-125):
        'flat-down', (-150): 'three-quarters-flat'}
    if not -150 <= cents <= 150:
        raise ValueError('cents should be between -150 and +150')
    rndcents = round(cents / 25) * 25
    return accidentals.get(rndcents)
