docs: def ordered_load(self, stream, Loader=yaml.Loader, object_pairs_hook=OrderedDict):
          """Allows you to use `pyyaml` to load as OrderedDict.
  
          Taken from https://stackoverflow.com/a/21912744/1927102
          """
          class OrderedLoader(Loader):
              pass
  
          def construct_mapping(loader, node):
              loader.flatten_mapping(node)
              return object_pairs_hook(loader.construct_pairs(node))
          OrderedLoader.add_constructor(
              yaml.resolver.BaseResolver.DEFAULT_MAPPING_TAG,
              construct_mapping)
          try:
              try:
                  result = yaml.load(stream, OrderedLoader)
              except yaml.scanner.ScannerError:
                  if type(stream) == str:
                      result = json.loads(stream, object_pairs_hook=object_pairs_hook)
                  else:
                      stream.seek(0)
                      result = json.load(stream, object_pairs_hook=object_pairs_hook)
          except Exception as e:
              self.error(e)
              result = {}
          return result