code: def probably_geojson(input):
      '''A quick check to see if this input looks like GeoJSON. If not a dict
      JSON-like object, attempt to parse input as JSON. If the resulting object
      has a type property that looks like GeoJSON, return that object or None'''
      valid = False
      if not isinstance(input, dict):
          try:
              input = json.loads(input)
          except ValueError:
              return None
      typename = input.get('type', None)
      supported_types = set([
          'Point', 'LineString', 'Polygon', 'MultiPoint', 'MultiLineString',
          'MultiPolygon', 'GeometryCollection', 'Feature', 'FeatureCollection'
      ])
      valid = typename in supported_types
      return input if valid else Nonf probably_geojson(input):
      '''A quick check to see if this input looks like GeoJSON. If not a dict
      JSON-like object, attempt to parse input as JSON. If the resulting object
      has a type property that looks like GeoJSON, return that object or None'''
      valid = False
      if not isinstance(input, dict):
          try:
              input = json.loads(input)
          except ValueError:
              return None
      typename = input.get('type', None)
      supported_types = set([
          'Point', 'LineString', 'Polygon', 'MultiPoint', 'MultiLineString',
          'MultiPolygon', 'GeometryCollection', 'Feature', 'FeatureCollection'
      ])
      valid = typename in supported_types
      return input if valid else None
docs: A quick check to see if this input looks like GeoJSON. If not a dict
      JSON-like object, attempt to parse input as JSON. If the resulting object
      has a type property that looks like GeoJSON, return that object or None