def METHOD_NAME(clkdef: 'dict | float | None'):
    def get_clk(freq):
        clk = Clk()
        clk.actual = freq
        clk.hold_violation = 0.0
        clk.met = False
        clk.requested = 0.0
        clk.setup_violation = 0.0
        return clk
    clks = {}
    if type(clkdef) is dict:
        for clkname, clkvals in clkdef.items():
            clk = Clk()
            for k, v in clkvals.items():
                setattr(clk, k, v)
            clks[clkname] = clk
    elif type(clkdef) is float:
        clks['clk'] = get_clk(clkdef)
    elif clkdef is None:
        return clks
    else:
        raise Exception('Wrong type for clock definition')
    return clks