code: def _ordered(generator, *args, **kwargs):
      unordered_dict = {k: v for k, v in generator(*args, **kwargs)}
      keys = sorted(list(dict(unordered_dict).keys()))
      result = OrderedDict()
      for key in keys:
          result[key] = unordered_dict[key]
      return result