 public prefix func !<T, V>(_ handler: @escaping (T) -> (V)) -> (T?) -> (V?) {
     return { $0 | handler }
 }
+
+postfix operator .!
+
+/**
+ Force Unwrap function result
+ 
+ - Parameters:
+ - handler: function that return an optional
+ 
+ - Returns: function that will unwrap the result of the first function
+ */
+public postfix func .!<T, V>(_ handler: @escaping (T) -> (V?)) -> (T) -> (V) {
+    return { ($0 | handler)! }
+}
+
+

    return { .?($0 | handler) }
}

/**
 Defaultable Handler
 
 - Parameters:
 - handler: Closure you want to evaluate
 
 - Returns: a function that will return the handlers return value or the default value of the return type on nil
 */
public postfix func .?<T, V: Defaultable>(_ handler: @escaping ((T) -> V?)) -> (T) -> V {
    return { ($0 | handler).? }
}

infix operator =>

/**

}

/**
 Defaultable output Handler
 
 - Parameters:
 - handler: Closure you want to evaluate
 
 - Returns: a function that will return the handlers return value or the default value of the return type on nil
 */
public postfix func .?<T, V: Defaultable>(_ handler: @escaping ((T) -> V?)) -> (T) -> V {
    return { ($0 | handler).? }
}

/**
 Defaultable input Handler
 
 - Parameters:
 - handler: Closure you want to evaluate
 
 - Returns: a function that will feed the handler the input or the default of the type in case of nil
 */
public prefix func .?<T: Defaultable, V>(_ handler: @escaping (T) -> (V)) -> (T?) -> V {
    return { $0.? | handler }
}

/**
 Optionalize
 
 - Parameters:
