             }
         }
     }
-    
+
     /// Accept input one or more times, separated by some separator
     /// - parameter separator: separator
     /// - returns: the composed parser

    /// Transform the target to the desired data structure
    /// - returns: the composed parser
    @inline(__always)
    public static func ^^ <MapTarget>(
        _ lhs: Parser<Target>, _ rhs: MapTarget) -> Parser<MapTarget> {
        return lhs.map { _ in rhs }
    }

infix operator !~~  : FunctionCompositionPrecedence /// Non-backtracking ~~
infix operator **   : FunctionCompositionPrecedence /// Apply lhs's result function to rhs's result
infix operator !**  : FunctionCompositionPrecedence /// Non-backtracking !**
infix operator ^^=  : FunctionCompositionPrecedence /// .map { _ in ... }
infix operator ^^   : FunctionCompositionPrecedence /// .map(_:)
infix operator ^^^  : FunctionCompositionPrecedence /// .mapParse(_:)
infix operator !^^  : FunctionCompositionPrecedence /// .nonbacktracking().map(_:)
infix operator !^^=  : FunctionCompositionPrecedence /// .nonbacktracking().map { _ in ... }
infix operator !^^^ : FunctionCompositionPrecedence /// .nonbacktracking().mapParse(_:)
infix operator <!-- : FunctionCompositionPrecedence /// .tagged(_:)
infix operator ..   : FunctionCompositionPrecedence /// .tagged(_:)
