     }
 }
 
-extension Image where Pixel: IntType {
+extension Image where Pixel: IntType { // map with indices
     public func map(transform: (x: Int, y: Int, pixel: Int) -> Int) -> Image<Int> {
         guard let zelf = self as? Image<Int> else { fatalError() }
         return zelf._map(transform)

    }
}

extension Image where Pixel: FloatType {
    public func map(transform: (x: Int, y: Int, pixel: Float) -> Float) -> Image<Float> {
        guard let zelf = self as? Image<Float> else { fatalError() }
        return zelf._map(transform)

    }
}

extension Image where Pixel: UInt8Type { // map
    public func map(transform: UInt8 -> UInt8) -> Image<UInt8> {
        guard let zelf = self as? Image<UInt8> else { fatalError() }
        return zelf._map(transform)
