code: def load_cities():
      """Load data from data/cities/cities.json.
  
      Returns
      -------
      data : array-like, shape=[50, 2]
          Array with each row representing one sample,
          i. e. latitude and longitude of a city.
          Angles are in radians.
      name : list
          List of city names.
      """
      with open(CITIES_PATH, encoding="utf-8") as json_file:
          data_file = json.load(json_file)
  
          names = [row["city"] for row in data_file]
          data = list(
              map(
                  lambda row: [
                      row[col_name] / 180 * gs.pi
                      for col_name in ["lat", "lng"]
                  ],
                  data_file,
              )
          )
  
      data = gs.array(data)
  
      colat = gs.pi / 2 - data[:, 0]
      colat = gs.expand_dims(colat, axis=1)
      lng = gs.expand_dims(data[:, 1] + gs.pi, axis=1)
  
      data = gs.concatenate([colat, lng], axis=1)
      sphere = Hypersphere(dim=2)
      data = sphere.spherical_to_extrinsic(data)
      return data, names
  
imports: import csv
  import json
  import os
  import zipfile
  import numpy
  import pandas
  import geomstats.backend
  from geomstats.datasets._base import RemoteFileMetadata, _fetch_remote
  from geomstats.datasets.prepare_graph_data import Graph
  from geomstats.geometry.hypersphere import Hypersphere
  from geomstats.geometry.skew_symmetric_matrices import SkewSymmetricMatrices
  from geomstats.geometry.special_orthogonal import SpecialOrthogonal
label_desc: Use image node_id 1 for calling a global function with example usage: load_cities() and returns: data,  names