public static <W extends WitnessType<W>,A> OptionalT<W,A> fromAnyM(final AnyM<W,A> anyM) {
        return of(anyM.map(Optional::ofNullable));
    }
public static < W extends WitnessType < W > , A > OptionalT < W , A > fromAnyM ( final AnyM < W , A > anyM ) { return of ( anyM . map ( Optional :: ofNullable ) ) ; }
Construct an OptionalWT from an AnyM that contains a monad type that contains type other than Optional
The values in the underlying monad will be mapped to Optional<A>

@param anyM AnyM that doesn't contain a monad wrapping an Optional
@return OptionalWT