nodes: 0, module; 1, function_definition; 2, function_name:get_cantons; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, return_statement; 8, comment:"""
          Return the list of unique cantons, sorted by name.
          """; 9, call; 10, identifier:sorted; 11, argument_list; 12, call; 13, identifier:list; 14, argument_list; 15, call; 16, identifier:set; 17, argument_list; 18, list_comprehension; 19, attribute; 20, for_in_clause; 21, identifier:location; 22, identifier:canton; 23, identifier:location; 24, call; 25, attribute; 26, argument_list; 27, call; 28, identifier:values; 29, attribute; 30, argument_list; 31, identifier:self; 32, identifier:get_locations
code: def get_cantons(self):
          """
          Return the list of unique cantons, sorted by name.
          """
          return sorted(list(set([
              location.canton for location in self.get_locations().values()
          ])))