code: def create_keypoint_hflip_indices(dataset_names):
      """
      Args:
          dataset_names (list[str]): list of dataset names
      Returns:
          ndarray[int]: a vector of size=#keypoints, storing the
          horizontally-flipped keypoint indices.
      """
  
      check_metadata_consistency("keypoint_names", dataset_names)
      check_metadata_consistency("keypoint_flip_map", dataset_names)
  
      meta = MetadataCatalog.get(dataset_names[0])
      names = meta.keypoint_names
      # TODO flip -> hflip
      flip_map = dict(meta.keypoint_flip_map)
      flip_map.update({v: k for k, v in flip_map.items()})
      flipped_names = [
          i if i not in flip_map else flip_map[i] for i in names
      ]
      flip_indices = [names.index(i) for i in flipped_names]
      return np.asarray(flip_indices)
  
imports: import os
  import logging
  import numpy
  from PIL import Image
  import torch
  from ..structures import BitMasks, Boxes, BoxMode, Instances, Keypoints, PolygonMasks, polygons_to_bitmask
  from ..transforms import instance_transforms
  from ..registry.catalog import MetadataCatalog
label_desc: Use image node_id 14 for calling a global function with example usage: create_keypoint_hflip_indices(dataset_names) and returns: np