nodes: 0, module; 1, function_definition; 2, function_name:cond_int; 3, parameters; 4, block; 5, identifier:self; 6, identifier:conkey; 7, expression_statement; 8, expression_statement; 9, if_statement; 10, return_statement; 11, comment:"""Return the trailing number from cond if any, as an int. If no
          trailing number, return the string conkey as is.
  
          This is used for sorting the conditions properly even when
          passing the number 10. The name of this function could be
          improved since it might return a string."""; 12, assignment; 13, not_operator; 14, block; 15, call; 16, identifier:m; 17, call; 18, identifier:m; 19, return_statement; 20, identifier:int; 21, argument_list; 22, attribute; 23, argument_list; 24, identifier:conkey; 25, call; 26, identifier:re; 27, identifier:match; 28, attribute; 29, identifier:conkey; 30, attribute; 31, argument_list; 32, identifier:self; 33, identifier:numrx; 34, identifier:m; 35, identifier:group; 36, integer:1
code: def cond_int(self, conkey):
          """Return the trailing number from cond if any, as an int. If no
          trailing number, return the string conkey as is.
  
          This is used for sorting the conditions properly even when
          passing the number 10. The name of this function could be
          improved since it might return a string."""
  
          m = re.match(self.numrx, conkey)
          if not m:
              return conkey
          return int(m.group(1))