import json


def get_inputs(sat: str):
    """Extacts arguments past the first from a function string
    def f(a: Dict[int, str], b=12):
       test
    """
    sat = sat.replace(" -> bool", "")
    first_line = sat.split("\n")[0].strip()
    if "#" in first_line:
        first_line = first_line[:first_line.index("#")].strip()
    if not (first_line.endswith("):") and first_line.startswith("def")):
        print("Weird puzzle, cannot extract inputs", json.dumps(sat))
        return ""
    arg_str = first_line[first_line.index("("):-len("):")]
    depth = 0
    for i, c in enumerate(arg_str):
        if c == "," and depth == 0:
            return arg_str[i + 1:].strip()
        elif c == "[":
            depth += 1
        elif c == "]":
            depth -= 1
    return ""