# Path: TileStache/Core.py
# class KnownUnknown(Exception):
#     """ There are known unknowns. That is to say, there are things that we now know we don't know.
# 
#         This exception gets thrown in a couple places where common mistakes are made.
#     """
#     pass
# 
# Path: TileStache/py3_compat.py
# def is_string_type(val):


from operator import add
from ..Core import KnownUnknown
from ..py3_compat import reduce
    sref = _amfSpatialReference(crs.get('wkid', None), crs.get('wkt', None))
    geometry_type, features = None, []

    for feature in content['features']:
        geometry = feature['geometry']

        if geometry['type'] == 'Point':
            arc_geometry = mapPointDict(sref, *geometry['coordinates'])

        elif geometry['type'] == 'LineString':
            path = geometry['coordinates']
            paths = [[mapPointList(sref, *xy) for xy in path]]
            arc_geometry = _amfGeometryPolyline(sref, paths)

        elif geometry['type'] == 'Polygon':
            rings = geometry['coordinates']
            rings = [[mapPointList(sref, *xy) for xy in ring] for ring in rings]
            arc_geometry = _amfGeometryPolygon(sref, rings)

        elif geometry['type'] == 'MultiPoint':
            points = geometry['coordinates']
            points = [mapPointList(sref, *xy) for xy in points]
            arc_geometry = {'points': points}

        elif geometry['type'] == 'MultiLineString':
            paths = geometry['coordinates']
            paths = [[mapPointList(sref, *xy) for xy in path] for path in paths]
            arc_geometry = _amfGeometryPolyline(sref, paths)

        elif geometry['type'] == 'MultiPolygon':

# Path: TileStache/Core.py
# class KnownUnknown(Exception):
#     """ There are known unknowns. That is to say, there are things that we now know we don't know.
# 
#         This exception gets thrown in a couple places where common mistakes are made.
#     """
#     pass
# 
# Path: TileStache/py3_compat.py
# def is_string_type(val):


# Path: TileStache/Vector/Arc.py
from operator import add
from ..Core import KnownUnknown
from ..py3_compat import reduce

    sref = _amfSpatialReference(crs.get('wkid', None), crs.get('wkt', None))
    geometry_type, features = None, []

    for feature in content['features']:
        geometry = feature['geometry']

        if geometry['type'] == 'Point':
            arc_geometry = mapPointDict(sref, *geometry['coordinates'])

        elif geometry['type'] == 'LineString':
            path = geometry['coordinates']
            paths = [[mapPointList(sref, *xy) for xy in path]]
            arc_geometry = _amfGeometryPolyline(sref, paths)

        elif geometry['type'] == 'Polygon':
            rings = geometry['coordinates']
            rings = [[mapPointList(sref, *xy) for xy in ring] for ring in rings]
            arc_geometry = _amfGeometryPolygon(sref, rings)

        elif geometry['type'] == 'MultiPoint':
            points = geometry['coordinates']
            points = [mapPointList(sref, *xy) for xy in points]
            arc_geometry = {'points': points}

        elif geometry['type'] == 'MultiLineString':
            paths = geometry['coordinates']
            paths = [[mapPointList(sref, *xy) for xy in path] for path in paths]
            arc_geometry = _amfGeometryPolyline(sref, paths)

        elif geometry['type'] == 'MultiPolygon':

            rings = reduce(add, geometry['coordinates'])