def top_level_name(node): if type(node) is ast.Name: return node.id elif type(node) is ast.Subscript or type(node) is ast.Attribute: return SchedulerRewriter.top_level_name(node.value) return None