added IECompatibleMiddleware