'All assignments to names go through this function.'

def visit_Name(self, node, store_as_param=False, **kwargs):

    if (store_as_param or (node.ctx == 'param')):
        self.symbols.declare_parameter(node.name)
    elif (node.ctx == 'store'):
        self.symbols.store(node.name)
    elif (node.ctx == 'load'):
        self.symbols.load(node.name)
