code: def construct_rest_of_worlds(self, excluded, fp=None, use_mp=True, simplify=True):
          
          geoms = {}
          raw_data = []
          for key in sorted(excluded):
              locations = excluded[key]
              for location in locations:
                  assert location in self.locations, "Can't find location {}".format(location)
              included = self.all_faces.difference(
                  {face for loc in locations for face in self.data[loc]}
              )
              raw_data.append((key, self.faces_fp, included))
          if use_mp:
              with Pool(cpu_count() - 1) as pool:
                  results = pool.map(_union, raw_data)
              geoms = dict(results)
          else:
              geoms = dict([_union(row) for row in raw_data])
          if simplify:
              geoms = {k: v.simplify(0.05) for k, v in geoms.items()}
          if fp:
              labels = sorted(geoms)
              self.write_geoms_to_file(fp, [geoms[key] for key in labels], labels)
              return fp
          else:
              return geoms
docs: Construct many rest-of-world geometries and optionally write to filepath ``fp``.
  
          ``excluded`` must be a **dictionary** of {"rest-of-world label": ["names", "of", "excluded", "locations"]}``.