def METHOD_NAME(self, ast):
    """
    Indicates whether a this node contains the handed over node.
    :param ast: an arbitrary meta_model node.
    :type ast: AST_
    :return: AST if this or one of the child nodes contains the handed over element.
    :rtype: AST_ or None
    """
    for neuron in self.get_neuron_list():
        if neuron is ast:
            return self
        if neuron.METHOD_NAME(ast) is not None:
            return neuron.METHOD_NAME(ast)
    for synapse in self.get_synapse_list():
        if synapse is ast:
            return self
        elif synapse.METHOD_NAME(ast) is not None:
            return synapse.METHOD_NAME(ast)
    return None