def METHOD_NAME(obj):
    if isinstance(obj, jt.Var):
        return "Var"
    if isinstance(obj, (int, float, bool, str, type(None))):
        return obj
    if isinstance(obj, (list, tuple)):
        return [ METHOD_NAME(v) for v in obj ]
    if isinstance(obj, dict):
        return { k:METHOD_NAME(v) for k, v in obj.items() }
    raise ValueError(f"Unknown type {type(obj)}")