original_docstring: 
      all children of a max node have same scope as the parent
      
docstring: all children of a max node have same scope as the parent
docstring_tokens: all children of a max node have same scope as the parent
code: def is_max_complete(node):
      '''
      all children of a max node have same scope as the parent
      '''
  
      assert node is not None
  
      for max_node in reversed(get_nodes_by_type(node, Max)):
          nscope = set(max_node.scope)
  
          # if len(max_node.children) == 0:
          #     return False, "Max node %s has no children" % (max_node.id)
  
          for child in max_node.children:
              if nscope != set(child.scope):
                  return False, "children of (max) node %s do not have the same scope as parent" % (max_node.id)
  
      return True, None
code_tokens: def is_max_complete ( node ) : assert node is not None for max_node in reversed ( get_nodes_by_type ( node , Max ) ) : nscope = set ( max_node . scope ) for child in max_node . children : if nscope != set ( child . scope ) : return False , "children of (max) node %s do not have the same scope as parent" % ( max_node . id ) return True , None
short_docstring: all children of a max node have same scope as the parent
short_docstring_tokens: all children of a max node have same scope as the parent
comment: '''
      all children of a max node have same scope as the parent
      '''$SEP$# if len(max_node.children) == 0:$SEP$#     return False, "Max node %s has no children" % (max_node.id)