/*** Autogenerated by WIDL 9.0 from include/windows.foundation.idl - Do not edit ***/

#ifdef _WIN32
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#endif

#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif

#ifndef __windows_foundation_h__
#define __windows_foundation_h__

#ifndef __WIDL_INLINE
#if defined(__cplusplus) || defined(_MSC_VER)
#define __WIDL_INLINE inline
#elif defined(__GNUC__)
#define __WIDL_INLINE __inline__
#endif
#endif

/* Forward declarations */

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet ABI::Windows::Foundation::Collections::IPropertySet
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                interface IPropertySet;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler ABI::Windows::Foundation::IAsyncActionCompletedHandler
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IAsyncActionCompletedHandler;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler ABI::Windows::Foundation::IDeferralCompletedHandler
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferralCompletedHandler;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIStringable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIStringable_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIStringable __x_ABI_CWindows_CFoundation_CIStringable;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIStringable ABI::Windows::Foundation::IStringable
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IStringable;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIClosable __x_ABI_CWindows_CFoundation_CIClosable;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIClosable ABI::Windows::Foundation::IClosable
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IClosable;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferral __x_ABI_CWindows_CFoundation_CIDeferral;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIDeferral ABI::Windows::Foundation::IDeferral
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferral;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferralFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferralFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferralFactory __x_ABI_CWindows_CFoundation_CIDeferralFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory ABI::Windows::Foundation::IDeferralFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferralFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIAsyncAction ABI::Windows::Foundation::IAsyncAction
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IAsyncAction;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBuffer __x_ABI_CWindows_CFoundation_CIMemoryBuffer;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer ABI::Windows::Foundation::IMemoryBuffer
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBuffer;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory ABI::Windows::Foundation::IMemoryBufferFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBufferFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBufferReference __x_ABI_CWindows_CFoundation_CIMemoryBufferReference;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference ABI::Windows::Foundation::IMemoryBufferReference
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBufferReference;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics ABI::Windows::Foundation::IUriEscapeStatics
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriEscapeStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass ABI::Windows::Foundation::IUriRuntimeClass
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClass;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory ABI::Windows::Foundation::IUriRuntimeClassFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClassFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri ABI::Windows::Foundation::IUriRuntimeClassWithAbsoluteCanonicalUri
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClassWithAbsoluteCanonicalUri;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::IWwwFormUrlDecoderEntry
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderEntry;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderRuntimeClass;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClassFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderRuntimeClassFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CDeferral_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Foundation {
            class Deferral;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CFoundation_CDeferral __x_ABI_CWindows_CFoundation_CDeferral;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CFoundation_CDeferral_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CFoundation_CMemoryBuffer_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CMemoryBuffer_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Foundation {
            class MemoryBuffer;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CFoundation_CMemoryBuffer __x_ABI_CWindows_CFoundation_CMemoryBuffer;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CFoundation_CMemoryBuffer_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Foundation {
            class Uri;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CFoundation_CUri __x_ABI_CWindows_CFoundation_CUri;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Foundation {
            class WwwFormUrlDecoder;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Foundation {
            class WwwFormUrlDecoderEntry;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__ */

#ifndef ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIKeyValuePair_2_HSTRING_IInspectable __FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapChangedEventArgs_1_HSTRING_FWD_DEFINED__
#define ____FIMapChangedEventArgs_1_HSTRING_FWD_DEFINED__
typedef interface __FIMapChangedEventArgs_1_HSTRING __FIMapChangedEventArgs_1_HSTRING;
#ifdef __cplusplus
#define __FIMapChangedEventArgs_1_HSTRING ABI::Windows::Foundation::Collections::IMapChangedEventArgs<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapChangedEventHandler_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIMapChangedEventHandler_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIMapChangedEventHandler_2_HSTRING_IInspectable __FIMapChangedEventHandler_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIMapChangedEventHandler_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IMapChangedEventHandler<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIMap_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIMap_2_HSTRING_IInspectable __FIMap_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IMap<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIMapView_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING_IInspectable __FIMapView_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IMapView<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIObservableMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIObservableMap_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIObservableMap_2_HSTRING_IInspectable __FIObservableMap_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIObservableMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IObservableMap<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_HSTRING_FWD_DEFINED__
#define ____FIIterable_1_HSTRING_FWD_DEFINED__
typedef interface __FIIterable_1_HSTRING __FIIterable_1_HSTRING;
#ifdef __cplusplus
#define __FIIterable_1_HSTRING ABI::Windows::Foundation::Collections::IIterable<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_IInspectable_FWD_DEFINED__
#define ____FIIterable_1_IInspectable_FWD_DEFINED__
typedef interface __FIIterable_1_IInspectable __FIIterable_1_IInspectable;
#ifdef __cplusplus
#define __FIIterable_1_IInspectable ABI::Windows::Foundation::Collections::IIterable<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CFoundation__CUri __FIIterable_1_Windows__CFoundation__CUri;
#ifdef __cplusplus
#define __FIIterable_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::Uri* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_HSTRING_FWD_DEFINED__
#define ____FIIterator_1_HSTRING_FWD_DEFINED__
typedef interface __FIIterator_1_HSTRING __FIIterator_1_HSTRING;
#ifdef __cplusplus
#define __FIIterator_1_HSTRING ABI::Windows::Foundation::Collections::IIterator<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_IInspectable_FWD_DEFINED__
#define ____FIIterator_1_IInspectable_FWD_DEFINED__
typedef interface __FIIterator_1_IInspectable __FIIterator_1_IInspectable;
#ifdef __cplusplus
#define __FIIterator_1_IInspectable ABI::Windows::Foundation::Collections::IIterator<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CFoundation__CUri __FIIterator_1_Windows__CFoundation__CUri;
#ifdef __cplusplus
#define __FIIterator_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::Uri* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_HSTRING_FWD_DEFINED__
#define ____FIVectorView_1_HSTRING_FWD_DEFINED__
typedef interface __FIVectorView_1_HSTRING __FIVectorView_1_HSTRING;
#ifdef __cplusplus
#define __FIVectorView_1_HSTRING ABI::Windows::Foundation::Collections::IVectorView<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_IInspectable_FWD_DEFINED__
#define ____FIVectorView_1_IInspectable_FWD_DEFINED__
typedef interface __FIVectorView_1_IInspectable __FIVectorView_1_IInspectable;
#ifdef __cplusplus
#define __FIVectorView_1_IInspectable ABI::Windows::Foundation::Collections::IVectorView<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_HSTRING_FWD_DEFINED__
#define ____FIVector_1_HSTRING_FWD_DEFINED__
typedef interface __FIVector_1_HSTRING __FIVector_1_HSTRING;
#ifdef __cplusplus
#define __FIVector_1_HSTRING ABI::Windows::Foundation::Collections::IVector<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_IInspectable_FWD_DEFINED__
#define ____FIVector_1_IInspectable_FWD_DEFINED__
typedef interface __FIVector_1_IInspectable __FIVector_1_IInspectable;
#ifdef __cplusplus
#define __FIVector_1_IInspectable ABI::Windows::Foundation::Collections::IVector<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_FWD_DEFINED__
#define ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING___FIVectorView_1_HSTRING __FIMapView_2_HSTRING___FIVectorView_1_HSTRING;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING ABI::Windows::Foundation::Collections::IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIEventHandler_1_IInspectable_FWD_DEFINED__
#define ____FIEventHandler_1_IInspectable_FWD_DEFINED__
typedef interface __FIEventHandler_1_IInspectable __FIEventHandler_1_IInspectable;
#ifdef __cplusplus
#define __FIEventHandler_1_IInspectable ABI::Windows::Foundation::IEventHandler<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperationCompletedHandler_1_IInspectable_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_IInspectable_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_IInspectable __FIAsyncOperationCompletedHandler_1_IInspectable;
#ifdef __cplusplus
#define __FIAsyncOperationCompletedHandler_1_IInspectable ABI::Windows::Foundation::IAsyncOperationCompletedHandler<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperationCompletedHandler_1_boolean_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_boolean_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_boolean __FIAsyncOperationCompletedHandler_1_boolean;
#ifdef __cplusplus
#define __FIAsyncOperationCompletedHandler_1_boolean ABI::Windows::Foundation::IAsyncOperationCompletedHandler<boolean >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperationCompletedHandler_1_UINT32_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_UINT32_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_UINT32 __FIAsyncOperationCompletedHandler_1_UINT32;
#ifdef __cplusplus
#define __FIAsyncOperationCompletedHandler_1_UINT32 ABI::Windows::Foundation::IAsyncOperationCompletedHandler<UINT32 >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_IInspectable_FWD_DEFINED__
#define ____FIAsyncOperation_1_IInspectable_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_IInspectable __FIAsyncOperation_1_IInspectable;
#ifdef __cplusplus
#define __FIAsyncOperation_1_IInspectable ABI::Windows::Foundation::IAsyncOperation<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_boolean_FWD_DEFINED__
#define ____FIAsyncOperation_1_boolean_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_boolean __FIAsyncOperation_1_boolean;
#ifdef __cplusplus
#define __FIAsyncOperation_1_boolean ABI::Windows::Foundation::IAsyncOperation<boolean >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_UINT32_FWD_DEFINED__
#define ____FIAsyncOperation_1_UINT32_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_UINT32 __FIAsyncOperation_1_UINT32;
#ifdef __cplusplus
#define __FIAsyncOperation_1_UINT32 ABI::Windows::Foundation::IAsyncOperation<UINT32 >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_BYTE_FWD_DEFINED__
#define ____FIReference_1_BYTE_FWD_DEFINED__
typedef interface __FIReference_1_BYTE __FIReference_1_BYTE;
#ifdef __cplusplus
#define __FIReference_1_BYTE ABI::Windows::Foundation::IReference<BYTE >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_INT32_FWD_DEFINED__
#define ____FIReference_1_INT32_FWD_DEFINED__
typedef interface __FIReference_1_INT32 __FIReference_1_INT32;
#ifdef __cplusplus
#define __FIReference_1_INT32 ABI::Windows::Foundation::IReference<INT32 >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_DOUBLE_FWD_DEFINED__
#define ____FIReference_1_DOUBLE_FWD_DEFINED__
typedef interface __FIReference_1_DOUBLE __FIReference_1_DOUBLE;
#ifdef __cplusplus
#define __FIReference_1_DOUBLE ABI::Windows::Foundation::IReference<DOUBLE >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_IInspectable_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_IInspectable_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_IInspectable_IInspectable __FITypedEventHandler_2_IInspectable_IInspectable;
#ifdef __cplusplus
#define __FITypedEventHandler_2_IInspectable_IInspectable ABI::Windows::Foundation::ITypedEventHandler<IInspectable*,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* >
#endif /* __cplusplus */
#endif

/* Headers for imported files */

#include <inspectable.h>
#include <asyncinfo.h>
#include <windowscontracts.h>
#include <eventtoken.h>
#include <windows.foundation.collections.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet ABI::Windows::Foundation::Collections::IPropertySet
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                interface IPropertySet;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIKeyValuePair_2_HSTRING_IInspectable __FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapChangedEventArgs_1_HSTRING_FWD_DEFINED__
#define ____FIMapChangedEventArgs_1_HSTRING_FWD_DEFINED__
typedef interface __FIMapChangedEventArgs_1_HSTRING __FIMapChangedEventArgs_1_HSTRING;
#ifdef __cplusplus
#define __FIMapChangedEventArgs_1_HSTRING ABI::Windows::Foundation::Collections::IMapChangedEventArgs<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIMap_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIMap_2_HSTRING_IInspectable __FIMap_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IMap<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIMapView_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING_IInspectable __FIMapView_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IMapView<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIObservableMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define ____FIObservableMap_2_HSTRING_IInspectable_FWD_DEFINED__
typedef interface __FIObservableMap_2_HSTRING_IInspectable __FIObservableMap_2_HSTRING_IInspectable;
#ifdef __cplusplus
#define __FIObservableMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::IObservableMap<HSTRING,IInspectable* >
#endif /* __cplusplus */
#endif

/*****************************************************************************
 * IPropertySet interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CCollections_CIPropertySet, 0x8a43ed9f, 0xf4e6, 0x4421, 0xac,0xf9, 0x1d,0xab,0x29,0x86,0x82,0x0c);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                MIDL_INTERFACE("8a43ed9f-f4e6-4421-acf9-1dab2986820c")
                IPropertySet : public IInspectable
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet, 0x8a43ed9f, 0xf4e6, 0x4421, 0xac,0xf9, 0x1d,0xab,0x29,0x86,0x82,0x0c)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CCollections_CIPropertySetVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet *This,
        TrustLevel *trustLevel);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CCollections_CIPropertySetVtbl;

interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CCollections_CIPropertySetVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_QueryInterface(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_AddRef(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_Release(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetIids(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetTrustLevel(__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IPropertySet IID___x_ABI_CWindows_CFoundation_CCollections_CIPropertySet
#define IPropertySetVtbl __x_ABI_CWindows_CFoundation_CCollections_CIPropertySetVtbl
#define IPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet
#define IPropertySet_QueryInterface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_QueryInterface
#define IPropertySet_AddRef __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_AddRef
#define IPropertySet_Release __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_Release
#define IPropertySet_GetIids __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetIids
#define IPropertySet_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetRuntimeClassName
#define IPropertySet_GetTrustLevel __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_GetTrustLevel
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CFoundation_CPropertyType __x_ABI_CWindows_CFoundation_CPropertyType;
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CFoundation_CPoint __x_ABI_CWindows_CFoundation_CPoint;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct Point Point;
        }
    }
}
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CFoundation_CSize __x_ABI_CWindows_CFoundation_CSize;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct Size Size;
        }
    }
}
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CFoundation_CRect __x_ABI_CWindows_CFoundation_CRect;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct Rect Rect;
        }
    }
}
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CFoundation_CDateTime __x_ABI_CWindows_CFoundation_CDateTime;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct DateTime DateTime;
        }
    }
}
#endif /* __cplusplus */

#ifndef __cplusplus
typedef struct __x_ABI_CWindows_CFoundation_CTimeSpan __x_ABI_CWindows_CFoundation_CTimeSpan;
#else /* __cplusplus */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            typedef struct TimeSpan TimeSpan;
        }
    }
}
#endif /* __cplusplus */

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIAsyncAction ABI::Windows::Foundation::IAsyncAction
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IAsyncAction;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIClosable __x_ABI_CWindows_CFoundation_CIClosable;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIClosable ABI::Windows::Foundation::IClosable
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IClosable;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferral __x_ABI_CWindows_CFoundation_CIDeferral;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIDeferral ABI::Windows::Foundation::IDeferral
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferral;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferralFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferralFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIDeferralFactory __x_ABI_CWindows_CFoundation_CIDeferralFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory ABI::Windows::Foundation::IDeferralFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IDeferralFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBuffer __x_ABI_CWindows_CFoundation_CIMemoryBuffer;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer ABI::Windows::Foundation::IMemoryBuffer
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBuffer;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory ABI::Windows::Foundation::IMemoryBufferFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBufferFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIMemoryBufferReference __x_ABI_CWindows_CFoundation_CIMemoryBufferReference;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference ABI::Windows::Foundation::IMemoryBufferReference
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IMemoryBufferReference;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIStringable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIStringable_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIStringable __x_ABI_CWindows_CFoundation_CIStringable;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIStringable ABI::Windows::Foundation::IStringable
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IStringable;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics ABI::Windows::Foundation::IUriEscapeStatics
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriEscapeStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass ABI::Windows::Foundation::IUriRuntimeClass
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClass;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory ABI::Windows::Foundation::IUriRuntimeClassFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClassFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri ABI::Windows::Foundation::IUriRuntimeClassWithAbsoluteCanonicalUri
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IUriRuntimeClassWithAbsoluteCanonicalUri;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::IWwwFormUrlDecoderEntry
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderEntry;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderRuntimeClass;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClassFactory
namespace ABI {
    namespace Windows {
        namespace Foundation {
            interface IWwwFormUrlDecoderRuntimeClassFactory;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_HSTRING_FWD_DEFINED__
#define ____FIIterable_1_HSTRING_FWD_DEFINED__
typedef interface __FIIterable_1_HSTRING __FIIterable_1_HSTRING;
#ifdef __cplusplus
#define __FIIterable_1_HSTRING ABI::Windows::Foundation::Collections::IIterable<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_IInspectable_FWD_DEFINED__
#define ____FIIterable_1_IInspectable_FWD_DEFINED__
typedef interface __FIIterable_1_IInspectable __FIIterable_1_IInspectable;
#ifdef __cplusplus
#define __FIIterable_1_IInspectable ABI::Windows::Foundation::Collections::IIterable<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CFoundation__CUri __FIIterable_1_Windows__CFoundation__CUri;
#ifdef __cplusplus
#define __FIIterable_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterable<ABI::Windows::Foundation::Uri* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_HSTRING_FWD_DEFINED__
#define ____FIIterator_1_HSTRING_FWD_DEFINED__
typedef interface __FIIterator_1_HSTRING __FIIterator_1_HSTRING;
#ifdef __cplusplus
#define __FIIterator_1_HSTRING ABI::Windows::Foundation::Collections::IIterator<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_IInspectable_FWD_DEFINED__
#define ____FIIterator_1_IInspectable_FWD_DEFINED__
typedef interface __FIIterator_1_IInspectable __FIIterator_1_IInspectable;
#ifdef __cplusplus
#define __FIIterator_1_IInspectable ABI::Windows::Foundation::Collections::IIterator<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CFoundation__CUri __FIIterator_1_Windows__CFoundation__CUri;
#ifdef __cplusplus
#define __FIIterator_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterator<ABI::Windows::Foundation::Uri* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_HSTRING_FWD_DEFINED__
#define ____FIVectorView_1_HSTRING_FWD_DEFINED__
typedef interface __FIVectorView_1_HSTRING __FIVectorView_1_HSTRING;
#ifdef __cplusplus
#define __FIVectorView_1_HSTRING ABI::Windows::Foundation::Collections::IVectorView<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_IInspectable_FWD_DEFINED__
#define ____FIVectorView_1_IInspectable_FWD_DEFINED__
typedef interface __FIVectorView_1_IInspectable __FIVectorView_1_IInspectable;
#ifdef __cplusplus
#define __FIVectorView_1_IInspectable ABI::Windows::Foundation::Collections::IVectorView<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry;
#ifdef __cplusplus
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_HSTRING_FWD_DEFINED__
#define ____FIVector_1_HSTRING_FWD_DEFINED__
typedef interface __FIVector_1_HSTRING __FIVector_1_HSTRING;
#ifdef __cplusplus
#define __FIVector_1_HSTRING ABI::Windows::Foundation::Collections::IVector<HSTRING >
#endif /* __cplusplus */
#endif

#ifndef ____FIVector_1_IInspectable_FWD_DEFINED__
#define ____FIVector_1_IInspectable_FWD_DEFINED__
typedef interface __FIVector_1_IInspectable __FIVector_1_IInspectable;
#ifdef __cplusplus
#define __FIVector_1_IInspectable ABI::Windows::Foundation::Collections::IVector<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_FWD_DEFINED__
#define ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_FWD_DEFINED__
typedef interface __FIMapView_2_HSTRING___FIVectorView_1_HSTRING __FIMapView_2_HSTRING___FIVectorView_1_HSTRING;
#ifdef __cplusplus
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING ABI::Windows::Foundation::Collections::IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_IInspectable_FWD_DEFINED__
#define ____FIAsyncOperation_1_IInspectable_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_IInspectable __FIAsyncOperation_1_IInspectable;
#ifdef __cplusplus
#define __FIAsyncOperation_1_IInspectable ABI::Windows::Foundation::IAsyncOperation<IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_boolean_FWD_DEFINED__
#define ____FIAsyncOperation_1_boolean_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_boolean __FIAsyncOperation_1_boolean;
#ifdef __cplusplus
#define __FIAsyncOperation_1_boolean ABI::Windows::Foundation::IAsyncOperation<boolean >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_UINT32_FWD_DEFINED__
#define ____FIAsyncOperation_1_UINT32_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_UINT32 __FIAsyncOperation_1_UINT32;
#ifdef __cplusplus
#define __FIAsyncOperation_1_UINT32 ABI::Windows::Foundation::IAsyncOperation<UINT32 >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_BYTE_FWD_DEFINED__
#define ____FIReference_1_BYTE_FWD_DEFINED__
typedef interface __FIReference_1_BYTE __FIReference_1_BYTE;
#ifdef __cplusplus
#define __FIReference_1_BYTE ABI::Windows::Foundation::IReference<BYTE >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_INT32_FWD_DEFINED__
#define ____FIReference_1_INT32_FWD_DEFINED__
typedef interface __FIReference_1_INT32 __FIReference_1_INT32;
#ifdef __cplusplus
#define __FIReference_1_INT32 ABI::Windows::Foundation::IReference<INT32 >
#endif /* __cplusplus */
#endif

#ifndef ____FIReference_1_DOUBLE_FWD_DEFINED__
#define ____FIReference_1_DOUBLE_FWD_DEFINED__
typedef interface __FIReference_1_DOUBLE __FIReference_1_DOUBLE;
#ifdef __cplusplus
#define __FIReference_1_DOUBLE ABI::Windows::Foundation::IReference<DOUBLE >
#endif /* __cplusplus */
#endif

/*****************************************************************************
 * IAsyncActionCompletedHandler interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler, 0xa4ed5c81, 0x76c9, 0x40bd, 0x8b,0xe6, 0xb1,0xd9,0x0f,0xb2,0x0a,0xe7);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("a4ed5c81-76c9-40bd-8be6-b1d90fb20ae7")
            IAsyncActionCompletedHandler : public IUnknown
            {
                virtual HRESULT STDMETHODCALLTYPE Invoke(
                    ABI::Windows::Foundation::IAsyncAction *action,
                    AsyncStatus status) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler, 0xa4ed5c81, 0x76c9, 0x40bd, 0x8b,0xe6, 0xb1,0xd9,0x0f,0xb2,0x0a,0xe7)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandlerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *This);

    /*** IAsyncActionCompletedHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *This,
        __x_ABI_CWindows_CFoundation_CIAsyncAction *action,
        AsyncStatus status);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandlerVtbl;

interface __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncActionCompletedHandler methods ***/
#define __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Invoke(This,action,status) (This)->lpVtbl->Invoke(This,action,status)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_QueryInterface(__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_AddRef(__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Release(__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncActionCompletedHandler methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Invoke(__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler* This,__x_ABI_CWindows_CFoundation_CIAsyncAction *action,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,action,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncActionCompletedHandler IID___x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler
#define IAsyncActionCompletedHandlerVtbl __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandlerVtbl
#define IAsyncActionCompletedHandler __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler
#define IAsyncActionCompletedHandler_QueryInterface __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_QueryInterface
#define IAsyncActionCompletedHandler_AddRef __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_AddRef
#define IAsyncActionCompletedHandler_Release __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Release
#define IAsyncActionCompletedHandler_Invoke __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IDeferralCompletedHandler interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler, 0xed32a372, 0xf3c8, 0x4faa, 0x9c,0xfb, 0x47,0x01,0x48,0xda,0x38,0x88);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("ed32a372-f3c8-4faa-9cfb-470148da3888")
            IDeferralCompletedHandler : public IUnknown
            {
                virtual HRESULT STDMETHODCALLTYPE Invoke(
                    ) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler, 0xed32a372, 0xf3c8, 0x4faa, 0x9c,0xfb, 0x47,0x01,0x48,0xda,0x38,0x88)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandlerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *This);

    /*** IDeferralCompletedHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *This);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandlerVtbl;

interface __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IDeferralCompletedHandler methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Invoke(This) (This)->lpVtbl->Invoke(This)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_QueryInterface(__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_AddRef(__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Release(__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IDeferralCompletedHandler methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Invoke(__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler* This) {
    return This->lpVtbl->Invoke(This);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IDeferralCompletedHandler IID___x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler
#define IDeferralCompletedHandlerVtbl __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandlerVtbl
#define IDeferralCompletedHandler __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler
#define IDeferralCompletedHandler_QueryInterface __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_QueryInterface
#define IDeferralCompletedHandler_AddRef __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_AddRef
#define IDeferralCompletedHandler_Release __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Release
#define IDeferralCompletedHandler_Invoke __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            enum PropertyType {
                PropertyType_Empty = 0,
                PropertyType_UInt8 = 1,
                PropertyType_Int16 = 2,
                PropertyType_UInt16 = 3,
                PropertyType_Int32 = 4,
                PropertyType_UInt32 = 5,
                PropertyType_Int64 = 6,
                PropertyType_UInt64 = 7,
                PropertyType_Single = 8,
                PropertyType_Double = 9,
                PropertyType_Char16 = 10,
                PropertyType_Boolean = 11,
                PropertyType_String = 12,
                PropertyType_Inspectable = 13,
                PropertyType_DateTime = 14,
                PropertyType_TimeSpan = 15,
                PropertyType_Guid = 16,
                PropertyType_Point = 17,
                PropertyType_Size = 18,
                PropertyType_Rect = 19,
                PropertyType_OtherType = 20,
                PropertyType_UInt8Array = 1025,
                PropertyType_Int16Array = 1026,
                PropertyType_UInt16Array = 1027,
                PropertyType_Int32Array = 1028,
                PropertyType_UInt32Array = 1029,
                PropertyType_Int64Array = 1030,
                PropertyType_UInt64Array = 1031,
                PropertyType_SingleArray = 1032,
                PropertyType_DoubleArray = 1033,
                PropertyType_Char16Array = 1034,
                PropertyType_BooleanArray = 1035,
                PropertyType_StringArray = 1036,
                PropertyType_InspectableArray = 1037,
                PropertyType_DateTimeArray = 1038,
                PropertyType_TimeSpanArray = 1039,
                PropertyType_GuidArray = 1040,
                PropertyType_PointArray = 1041,
                PropertyType_SizeArray = 1042,
                PropertyType_RectArray = 1043,
                PropertyType_OtherTypeArray = 1044
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CFoundation_CPropertyType {
    PropertyType_Empty = 0,
    PropertyType_UInt8 = 1,
    PropertyType_Int16 = 2,
    PropertyType_UInt16 = 3,
    PropertyType_Int32 = 4,
    PropertyType_UInt32 = 5,
    PropertyType_Int64 = 6,
    PropertyType_UInt64 = 7,
    PropertyType_Single = 8,
    PropertyType_Double = 9,
    PropertyType_Char16 = 10,
    PropertyType_Boolean = 11,
    PropertyType_String = 12,
    PropertyType_Inspectable = 13,
    PropertyType_DateTime = 14,
    PropertyType_TimeSpan = 15,
    PropertyType_Guid = 16,
    PropertyType_Point = 17,
    PropertyType_Size = 18,
    PropertyType_Rect = 19,
    PropertyType_OtherType = 20,
    PropertyType_UInt8Array = 1025,
    PropertyType_Int16Array = 1026,
    PropertyType_UInt16Array = 1027,
    PropertyType_Int32Array = 1028,
    PropertyType_UInt32Array = 1029,
    PropertyType_Int64Array = 1030,
    PropertyType_UInt64Array = 1031,
    PropertyType_SingleArray = 1032,
    PropertyType_DoubleArray = 1033,
    PropertyType_Char16Array = 1034,
    PropertyType_BooleanArray = 1035,
    PropertyType_StringArray = 1036,
    PropertyType_InspectableArray = 1037,
    PropertyType_DateTimeArray = 1038,
    PropertyType_TimeSpanArray = 1039,
    PropertyType_GuidArray = 1040,
    PropertyType_PointArray = 1041,
    PropertyType_SizeArray = 1042,
    PropertyType_RectArray = 1043,
    PropertyType_OtherTypeArray = 1044
};
#ifdef WIDL_using_Windows_Foundation
#define PropertyType __x_ABI_CWindows_CFoundation_CPropertyType
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            struct Point {
                FLOAT X;
                FLOAT Y;
            };
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CFoundation_CPoint {
    FLOAT X;
    FLOAT Y;
};
#ifdef WIDL_using_Windows_Foundation
#define Point __x_ABI_CWindows_CFoundation_CPoint
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            struct Size {
                FLOAT Width;
                FLOAT Height;
            };
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CFoundation_CSize {
    FLOAT Width;
    FLOAT Height;
};
#ifdef WIDL_using_Windows_Foundation
#define Size __x_ABI_CWindows_CFoundation_CSize
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            struct Rect {
                FLOAT X;
                FLOAT Y;
                FLOAT Width;
                FLOAT Height;
            };
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CFoundation_CRect {
    FLOAT X;
    FLOAT Y;
    FLOAT Width;
    FLOAT Height;
};
#ifdef WIDL_using_Windows_Foundation
#define Rect __x_ABI_CWindows_CFoundation_CRect
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            struct DateTime {
                INT64 UniversalTime;
            };
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CFoundation_CDateTime {
    INT64 UniversalTime;
};
#ifdef WIDL_using_Windows_Foundation
#define DateTime __x_ABI_CWindows_CFoundation_CDateTime
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            struct TimeSpan {
                INT64 Duration;
            };
        }
    }
}
extern "C" {
#else
struct __x_ABI_CWindows_CFoundation_CTimeSpan {
    INT64 Duration;
};
#ifdef WIDL_using_Windows_Foundation
#define TimeSpan __x_ABI_CWindows_CFoundation_CTimeSpan
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */
/*****************************************************************************
 * IStringable interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIStringable_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIStringable_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIStringable, 0x96369f54, 0x8eb6, 0x48f0, 0xab,0xce, 0xc1,0xb2,0x11,0xe6,0x27,0xc3);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("96369f54-8eb6-48f0-abce-c1b211e627c3")
            IStringable : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE ToString(
                    HSTRING *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIStringable, 0x96369f54, 0x8eb6, 0x48f0, 0xab,0xce, 0xc1,0xb2,0x11,0xe6,0x27,0xc3)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIStringableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIStringable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIStringable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIStringable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIStringable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIStringable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIStringable *This,
        TrustLevel *trustLevel);

    /*** IStringable methods ***/
    HRESULT (STDMETHODCALLTYPE *ToString)(
        __x_ABI_CWindows_CFoundation_CIStringable *This,
        HSTRING *value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIStringableVtbl;

interface __x_ABI_CWindows_CFoundation_CIStringable {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIStringableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIStringable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIStringable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIStringable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIStringable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIStringable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIStringable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IStringable methods ***/
#define __x_ABI_CWindows_CFoundation_CIStringable_ToString(This,value) (This)->lpVtbl->ToString(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIStringable_QueryInterface(__x_ABI_CWindows_CFoundation_CIStringable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIStringable_AddRef(__x_ABI_CWindows_CFoundation_CIStringable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIStringable_Release(__x_ABI_CWindows_CFoundation_CIStringable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIStringable_GetIids(__x_ABI_CWindows_CFoundation_CIStringable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIStringable_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIStringable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIStringable_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIStringable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IStringable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIStringable_ToString(__x_ABI_CWindows_CFoundation_CIStringable* This,HSTRING *value) {
    return This->lpVtbl->ToString(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IStringable IID___x_ABI_CWindows_CFoundation_CIStringable
#define IStringableVtbl __x_ABI_CWindows_CFoundation_CIStringableVtbl
#define IStringable __x_ABI_CWindows_CFoundation_CIStringable
#define IStringable_QueryInterface __x_ABI_CWindows_CFoundation_CIStringable_QueryInterface
#define IStringable_AddRef __x_ABI_CWindows_CFoundation_CIStringable_AddRef
#define IStringable_Release __x_ABI_CWindows_CFoundation_CIStringable_Release
#define IStringable_GetIids __x_ABI_CWindows_CFoundation_CIStringable_GetIids
#define IStringable_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIStringable_GetRuntimeClassName
#define IStringable_GetTrustLevel __x_ABI_CWindows_CFoundation_CIStringable_GetTrustLevel
#define IStringable_ToString __x_ABI_CWindows_CFoundation_CIStringable_ToString
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIStringable_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IClosable interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIClosable, 0x30d5a829, 0x7fa4, 0x4026, 0x83,0xbb, 0xd7,0x5b,0xae,0x4e,0xa9,0x9e);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("30d5a829-7fa4-4026-83bb-d75bae4ea99e")
            IClosable : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE Close(
                    ) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIClosable, 0x30d5a829, 0x7fa4, 0x4026, 0x83,0xbb, 0xd7,0x5b,0xae,0x4e,0xa9,0x9e)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIClosableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIClosable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIClosable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIClosable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIClosable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIClosable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIClosable *This,
        TrustLevel *trustLevel);

    /*** IClosable methods ***/
    HRESULT (STDMETHODCALLTYPE *Close)(
        __x_ABI_CWindows_CFoundation_CIClosable *This);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIClosableVtbl;

interface __x_ABI_CWindows_CFoundation_CIClosable {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIClosableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIClosable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIClosable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIClosable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIClosable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIClosable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIClosable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IClosable methods ***/
#define __x_ABI_CWindows_CFoundation_CIClosable_Close(This) (This)->lpVtbl->Close(This)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIClosable_QueryInterface(__x_ABI_CWindows_CFoundation_CIClosable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIClosable_AddRef(__x_ABI_CWindows_CFoundation_CIClosable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIClosable_Release(__x_ABI_CWindows_CFoundation_CIClosable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIClosable_GetIids(__x_ABI_CWindows_CFoundation_CIClosable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIClosable_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIClosable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIClosable_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIClosable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IClosable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIClosable_Close(__x_ABI_CWindows_CFoundation_CIClosable* This) {
    return This->lpVtbl->Close(This);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IClosable IID___x_ABI_CWindows_CFoundation_CIClosable
#define IClosableVtbl __x_ABI_CWindows_CFoundation_CIClosableVtbl
#define IClosable __x_ABI_CWindows_CFoundation_CIClosable
#define IClosable_QueryInterface __x_ABI_CWindows_CFoundation_CIClosable_QueryInterface
#define IClosable_AddRef __x_ABI_CWindows_CFoundation_CIClosable_AddRef
#define IClosable_Release __x_ABI_CWindows_CFoundation_CIClosable_Release
#define IClosable_GetIids __x_ABI_CWindows_CFoundation_CIClosable_GetIids
#define IClosable_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIClosable_GetRuntimeClassName
#define IClosable_GetTrustLevel __x_ABI_CWindows_CFoundation_CIClosable_GetTrustLevel
#define IClosable_Close __x_ABI_CWindows_CFoundation_CIClosable_Close
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIClosable_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IDeferral interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIDeferral, 0xd6269732, 0x3b7f, 0x46a7, 0xb4,0x0b, 0x4f,0xdc,0xa2,0xa2,0xc6,0x93);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("d6269732-3b7f-46a7-b40b-4fdca2a2c693")
            IDeferral : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE Complete(
                    ) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIDeferral, 0xd6269732, 0x3b7f, 0x46a7, 0xb4,0x0b, 0x4f,0xdc,0xa2,0xa2,0xc6,0x93)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIDeferralVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This,
        TrustLevel *trustLevel);

    /*** IDeferral methods ***/
    HRESULT (STDMETHODCALLTYPE *Complete)(
        __x_ABI_CWindows_CFoundation_CIDeferral *This);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIDeferralVtbl;

interface __x_ABI_CWindows_CFoundation_CIDeferral {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIDeferralVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferral_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIDeferral_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIDeferral_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferral_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIDeferral_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIDeferral_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDeferral methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferral_Complete(This) (This)->lpVtbl->Complete(This)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferral_QueryInterface(__x_ABI_CWindows_CFoundation_CIDeferral* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferral_AddRef(__x_ABI_CWindows_CFoundation_CIDeferral* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferral_Release(__x_ABI_CWindows_CFoundation_CIDeferral* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferral_GetIids(__x_ABI_CWindows_CFoundation_CIDeferral* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferral_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIDeferral* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferral_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIDeferral* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDeferral methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferral_Complete(__x_ABI_CWindows_CFoundation_CIDeferral* This) {
    return This->lpVtbl->Complete(This);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IDeferral IID___x_ABI_CWindows_CFoundation_CIDeferral
#define IDeferralVtbl __x_ABI_CWindows_CFoundation_CIDeferralVtbl
#define IDeferral __x_ABI_CWindows_CFoundation_CIDeferral
#define IDeferral_QueryInterface __x_ABI_CWindows_CFoundation_CIDeferral_QueryInterface
#define IDeferral_AddRef __x_ABI_CWindows_CFoundation_CIDeferral_AddRef
#define IDeferral_Release __x_ABI_CWindows_CFoundation_CIDeferral_Release
#define IDeferral_GetIids __x_ABI_CWindows_CFoundation_CIDeferral_GetIids
#define IDeferral_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIDeferral_GetRuntimeClassName
#define IDeferral_GetTrustLevel __x_ABI_CWindows_CFoundation_CIDeferral_GetTrustLevel
#define IDeferral_Complete __x_ABI_CWindows_CFoundation_CIDeferral_Complete
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIDeferral_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IDeferralFactory interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIDeferralFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferralFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIDeferralFactory, 0x65a1ecc5, 0x3fb5, 0x4832, 0x8c,0xa9, 0xf0,0x61,0xb2,0x81,0xd1,0x3a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("65a1ecc5-3fb5-4832-8ca9-f061b281d13a")
            IDeferralFactory : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE Create(
                    ABI::Windows::Foundation::IDeferralCompletedHandler *handler,
                    ABI::Windows::Foundation::IDeferral **result) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIDeferralFactory, 0x65a1ecc5, 0x3fb5, 0x4832, 0x8c,0xa9, 0xf0,0x61,0xb2,0x81,0xd1,0x3a)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIDeferralFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This,
        TrustLevel *trustLevel);

    /*** IDeferralFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *Create)(
        __x_ABI_CWindows_CFoundation_CIDeferralFactory *This,
        __x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *handler,
        __x_ABI_CWindows_CFoundation_CIDeferral **result);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIDeferralFactoryVtbl;

interface __x_ABI_CWindows_CFoundation_CIDeferralFactory {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIDeferralFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDeferralFactory methods ***/
#define __x_ABI_CWindows_CFoundation_CIDeferralFactory_Create(This,handler,result) (This)->lpVtbl->Create(This,handler,result)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferralFactory_AddRef(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIDeferralFactory_Release(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetIids(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDeferralFactory methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIDeferralFactory_Create(__x_ABI_CWindows_CFoundation_CIDeferralFactory* This,__x_ABI_CWindows_CFoundation_CIDeferralCompletedHandler *handler,__x_ABI_CWindows_CFoundation_CIDeferral **result) {
    return This->lpVtbl->Create(This,handler,result);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IDeferralFactory IID___x_ABI_CWindows_CFoundation_CIDeferralFactory
#define IDeferralFactoryVtbl __x_ABI_CWindows_CFoundation_CIDeferralFactoryVtbl
#define IDeferralFactory __x_ABI_CWindows_CFoundation_CIDeferralFactory
#define IDeferralFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIDeferralFactory_QueryInterface
#define IDeferralFactory_AddRef __x_ABI_CWindows_CFoundation_CIDeferralFactory_AddRef
#define IDeferralFactory_Release __x_ABI_CWindows_CFoundation_CIDeferralFactory_Release
#define IDeferralFactory_GetIids __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetIids
#define IDeferralFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetRuntimeClassName
#define IDeferralFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIDeferralFactory_GetTrustLevel
#define IDeferralFactory_Create __x_ABI_CWindows_CFoundation_CIDeferralFactory_Create
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIDeferralFactory_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IAsyncAction interface
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIAsyncAction, 0x5a648006, 0x843a, 0x4da9, 0x86,0x5b, 0x9d,0x26,0xe5,0xdf,0xad,0x7b);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("5a648006-843a-4da9-865b-9d26e5dfad7b")
            IAsyncAction : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE put_Completed(
                    ABI::Windows::Foundation::IAsyncActionCompletedHandler *handler) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Completed(
                    ABI::Windows::Foundation::IAsyncActionCompletedHandler **handler) = 0;

                virtual HRESULT STDMETHODCALLTYPE GetResults(
                    ) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIAsyncAction, 0x5a648006, 0x843a, 0x4da9, 0x86,0x5b, 0x9d,0x26,0xe5,0xdf,0xad,0x7b)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIAsyncActionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        TrustLevel *trustLevel);

    /*** IAsyncAction methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This,
        __x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __x_ABI_CWindows_CFoundation_CIAsyncAction *This);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIAsyncActionVtbl;

interface __x_ABI_CWindows_CFoundation_CIAsyncAction {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIAsyncActionVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncAction methods ***/
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __x_ABI_CWindows_CFoundation_CIAsyncAction_GetResults(This) (This)->lpVtbl->GetResults(This)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_QueryInterface(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIAsyncAction_AddRef(__x_ABI_CWindows_CFoundation_CIAsyncAction* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIAsyncAction_Release(__x_ABI_CWindows_CFoundation_CIAsyncAction* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_GetIids(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncAction methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_put_Completed(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_get_Completed(__x_ABI_CWindows_CFoundation_CIAsyncAction* This,__x_ABI_CWindows_CFoundation_CIAsyncActionCompletedHandler **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIAsyncAction_GetResults(__x_ABI_CWindows_CFoundation_CIAsyncAction* This) {
    return This->lpVtbl->GetResults(This);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncAction IID___x_ABI_CWindows_CFoundation_CIAsyncAction
#define IAsyncActionVtbl __x_ABI_CWindows_CFoundation_CIAsyncActionVtbl
#define IAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction
#define IAsyncAction_QueryInterface __x_ABI_CWindows_CFoundation_CIAsyncAction_QueryInterface
#define IAsyncAction_AddRef __x_ABI_CWindows_CFoundation_CIAsyncAction_AddRef
#define IAsyncAction_Release __x_ABI_CWindows_CFoundation_CIAsyncAction_Release
#define IAsyncAction_GetIids __x_ABI_CWindows_CFoundation_CIAsyncAction_GetIids
#define IAsyncAction_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIAsyncAction_GetRuntimeClassName
#define IAsyncAction_GetTrustLevel __x_ABI_CWindows_CFoundation_CIAsyncAction_GetTrustLevel
#define IAsyncAction_put_Completed __x_ABI_CWindows_CFoundation_CIAsyncAction_put_Completed
#define IAsyncAction_get_Completed __x_ABI_CWindows_CFoundation_CIAsyncAction_get_Completed
#define IAsyncAction_GetResults __x_ABI_CWindows_CFoundation_CIAsyncAction_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIAsyncAction_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IMemoryBuffer interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIMemoryBuffer, 0xfbc4dd2a, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("fbc4dd2a-245b-11e4-af98-689423260cf8")
            IMemoryBuffer : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE CreateReference(
                    ABI::Windows::Foundation::IMemoryBufferReference **reference) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIMemoryBuffer, 0xfbc4dd2a, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIMemoryBufferVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This,
        TrustLevel *trustLevel);

    /*** IMemoryBuffer methods ***/
    HRESULT (STDMETHODCALLTYPE *CreateReference)(
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer *This,
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference **reference);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIMemoryBufferVtbl;

interface __x_ABI_CWindows_CFoundation_CIMemoryBuffer {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIMemoryBufferVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMemoryBuffer methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBuffer_CreateReference(This,reference) (This)->lpVtbl->CreateReference(This,reference)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBuffer_QueryInterface(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBuffer_AddRef(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBuffer_Release(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetIids(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMemoryBuffer methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBuffer_CreateReference(__x_ABI_CWindows_CFoundation_CIMemoryBuffer* This,__x_ABI_CWindows_CFoundation_CIMemoryBufferReference **reference) {
    return This->lpVtbl->CreateReference(This,reference);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IMemoryBuffer IID___x_ABI_CWindows_CFoundation_CIMemoryBuffer
#define IMemoryBufferVtbl __x_ABI_CWindows_CFoundation_CIMemoryBufferVtbl
#define IMemoryBuffer __x_ABI_CWindows_CFoundation_CIMemoryBuffer
#define IMemoryBuffer_QueryInterface __x_ABI_CWindows_CFoundation_CIMemoryBuffer_QueryInterface
#define IMemoryBuffer_AddRef __x_ABI_CWindows_CFoundation_CIMemoryBuffer_AddRef
#define IMemoryBuffer_Release __x_ABI_CWindows_CFoundation_CIMemoryBuffer_Release
#define IMemoryBuffer_GetIids __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetIids
#define IMemoryBuffer_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetRuntimeClassName
#define IMemoryBuffer_GetTrustLevel __x_ABI_CWindows_CFoundation_CIMemoryBuffer_GetTrustLevel
#define IMemoryBuffer_CreateReference __x_ABI_CWindows_CFoundation_CIMemoryBuffer_CreateReference
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIMemoryBuffer_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IMemoryBufferFactory interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIMemoryBufferFactory, 0xfbc4dd2b, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("fbc4dd2b-245b-11e4-af98-689423260cf8")
            IMemoryBufferFactory : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE Create(
                    UINT32 capacity,
                    ABI::Windows::Foundation::IMemoryBuffer **value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory, 0xfbc4dd2b, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIMemoryBufferFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This,
        TrustLevel *trustLevel);

    /*** IMemoryBufferFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *Create)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory *This,
        UINT32 capacity,
        __x_ABI_CWindows_CFoundation_CIMemoryBuffer **value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIMemoryBufferFactoryVtbl;

interface __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIMemoryBufferFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMemoryBufferFactory methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Create(This,capacity,value) (This)->lpVtbl->Create(This,capacity,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_AddRef(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Release(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetIids(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMemoryBufferFactory methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Create(__x_ABI_CWindows_CFoundation_CIMemoryBufferFactory* This,UINT32 capacity,__x_ABI_CWindows_CFoundation_CIMemoryBuffer **value) {
    return This->lpVtbl->Create(This,capacity,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IMemoryBufferFactory IID___x_ABI_CWindows_CFoundation_CIMemoryBufferFactory
#define IMemoryBufferFactoryVtbl __x_ABI_CWindows_CFoundation_CIMemoryBufferFactoryVtbl
#define IMemoryBufferFactory __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory
#define IMemoryBufferFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_QueryInterface
#define IMemoryBufferFactory_AddRef __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_AddRef
#define IMemoryBufferFactory_Release __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Release
#define IMemoryBufferFactory_GetIids __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetIids
#define IMemoryBufferFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetRuntimeClassName
#define IMemoryBufferFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_GetTrustLevel
#define IMemoryBufferFactory_Create __x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_Create
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIMemoryBufferFactory_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IMemoryBufferReference interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIMemoryBufferReference, 0xfbc4dd29, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("fbc4dd29-245b-11e4-af98-689423260cf8")
            IMemoryBufferReference : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_Capacity(
                    UINT32 *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE add_Closed(
                    ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > *handler,
                    EventRegistrationToken *cookie) = 0;

                virtual HRESULT STDMETHODCALLTYPE remove_Closed(
                    EventRegistrationToken cookie) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference, 0xfbc4dd29, 0x245b, 0x11e4, 0xaf,0x98, 0x68,0x94,0x23,0x26,0x0c,0xf8)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIMemoryBufferReferenceVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        TrustLevel *trustLevel);

    /*** IMemoryBufferReference methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Capacity)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *add_Closed)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *handler,
        EventRegistrationToken *cookie);

    HRESULT (STDMETHODCALLTYPE *remove_Closed)(
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *This,
        EventRegistrationToken cookie);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIMemoryBufferReferenceVtbl;

interface __x_ABI_CWindows_CFoundation_CIMemoryBufferReference {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIMemoryBufferReferenceVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMemoryBufferReference methods ***/
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_get_Capacity(This,value) (This)->lpVtbl->get_Capacity(This,value)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_add_Closed(This,handler,cookie) (This)->lpVtbl->add_Closed(This,handler,cookie)
#define __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_remove_Closed(This,cookie) (This)->lpVtbl->remove_Closed(This,cookie)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_QueryInterface(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_AddRef(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_Release(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetIids(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMemoryBufferReference methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_get_Capacity(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,UINT32 *value) {
    return This->lpVtbl->get_Capacity(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_add_Closed(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *handler,EventRegistrationToken *cookie) {
    return This->lpVtbl->add_Closed(This,handler,cookie);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_remove_Closed(__x_ABI_CWindows_CFoundation_CIMemoryBufferReference* This,EventRegistrationToken cookie) {
    return This->lpVtbl->remove_Closed(This,cookie);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IMemoryBufferReference IID___x_ABI_CWindows_CFoundation_CIMemoryBufferReference
#define IMemoryBufferReferenceVtbl __x_ABI_CWindows_CFoundation_CIMemoryBufferReferenceVtbl
#define IMemoryBufferReference __x_ABI_CWindows_CFoundation_CIMemoryBufferReference
#define IMemoryBufferReference_QueryInterface __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_QueryInterface
#define IMemoryBufferReference_AddRef __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_AddRef
#define IMemoryBufferReference_Release __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_Release
#define IMemoryBufferReference_GetIids __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetIids
#define IMemoryBufferReference_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetRuntimeClassName
#define IMemoryBufferReference_GetTrustLevel __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_GetTrustLevel
#define IMemoryBufferReference_get_Capacity __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_get_Capacity
#define IMemoryBufferReference_add_Closed __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_add_Closed
#define IMemoryBufferReference_remove_Closed __x_ABI_CWindows_CFoundation_CIMemoryBufferReference_remove_Closed
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IUriEscapeStatics interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriEscapeStatics, 0xc1d432ba, 0xc824, 0x4452, 0xa7,0xfd, 0x51,0x2b,0xc3,0xbb,0xe9,0xa1);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("c1d432ba-c824-4452-a7fd-512bc3bbe9a1")
            IUriEscapeStatics : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE UnescapeComponent(
                    HSTRING to_unescape,
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE EscapeComponent(
                    HSTRING to_escape,
                    HSTRING *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics, 0xc1d432ba, 0xc824, 0x4452, 0xa7,0xfd, 0x51,0x2b,0xc3,0xbb,0xe9,0xa1)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        TrustLevel *trustLevel);

    /*** IUriEscapeStatics methods ***/
    HRESULT (STDMETHODCALLTYPE *UnescapeComponent)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        HSTRING to_unescape,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *EscapeComponent)(
        __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This,
        HSTRING to_escape,
        HSTRING *value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl;

interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUriEscapeStatics methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent(This,to_unescape,value) (This)->lpVtbl->UnescapeComponent(This,to_unescape,value)
#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent(This,to_escape,value) (This)->lpVtbl->EscapeComponent(This,to_escape,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUriEscapeStatics methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING to_unescape,HSTRING *value) {
    return This->lpVtbl->UnescapeComponent(This,to_unescape,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING to_escape,HSTRING *value) {
    return This->lpVtbl->EscapeComponent(This,to_escape,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IUriEscapeStatics IID___x_ABI_CWindows_CFoundation_CIUriEscapeStatics
#define IUriEscapeStaticsVtbl __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl
#define IUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics
#define IUriEscapeStatics_QueryInterface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface
#define IUriEscapeStatics_AddRef __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef
#define IUriEscapeStatics_Release __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release
#define IUriEscapeStatics_GetIids __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids
#define IUriEscapeStatics_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName
#define IUriEscapeStatics_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel
#define IUriEscapeStatics_UnescapeComponent __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent
#define IUriEscapeStatics_EscapeComponent __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IUriRuntimeClass interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClass, 0x9e365e57, 0x48b2, 0x4160, 0x95,0x6f, 0xc7,0x38,0x51,0x20,0xbb,0xfc);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("9e365e57-48b2-4160-956f-c7385120bbfc")
            IUriRuntimeClass : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_AbsoluteUri(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_DisplayUri(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Domain(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Extension(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Fragment(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Host(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Password(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Path(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Query(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_QueryParsed(
                    ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **decoder) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_RawUri(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_SchemeName(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_UserName(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Port(
                    INT32 *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Suspicious(
                    boolean *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE Equals(
                    ABI::Windows::Foundation::IUriRuntimeClass *uri,
                    boolean *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE CombineUri(
                    HSTRING relative_uri,
                    ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass, 0x9e365e57, 0x48b2, 0x4160, 0x95,0x6f, 0xc7,0x38,0x51,0x20,0xbb,0xfc)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        TrustLevel *trustLevel);

    /*** IUriRuntimeClass methods ***/
    HRESULT (STDMETHODCALLTYPE *get_AbsoluteUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_DisplayUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Domain)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Extension)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Fragment)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Host)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Password)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Path)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Query)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_QueryParsed)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **decoder);

    HRESULT (STDMETHODCALLTYPE *get_RawUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_SchemeName)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_UserName)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Port)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        INT32 *value);

    HRESULT (STDMETHODCALLTYPE *get_Suspicious)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *Equals)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *uri,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *CombineUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This,
        HSTRING relative_uri,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl;

interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUriRuntimeClass methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri(This,value) (This)->lpVtbl->get_AbsoluteUri(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri(This,value) (This)->lpVtbl->get_DisplayUri(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain(This,value) (This)->lpVtbl->get_Domain(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension(This,value) (This)->lpVtbl->get_Extension(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment(This,value) (This)->lpVtbl->get_Fragment(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host(This,value) (This)->lpVtbl->get_Host(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password(This,value) (This)->lpVtbl->get_Password(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path(This,value) (This)->lpVtbl->get_Path(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query(This,value) (This)->lpVtbl->get_Query(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed(This,decoder) (This)->lpVtbl->get_QueryParsed(This,decoder)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri(This,value) (This)->lpVtbl->get_RawUri(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName(This,value) (This)->lpVtbl->get_SchemeName(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName(This,value) (This)->lpVtbl->get_UserName(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port(This,value) (This)->lpVtbl->get_Port(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious(This,value) (This)->lpVtbl->get_Suspicious(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals(This,uri,value) (This)->lpVtbl->Equals(This,uri,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri(This,relative_uri,instance) (This)->lpVtbl->CombineUri(This,relative_uri,instance)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUriRuntimeClass methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_AbsoluteUri(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_DisplayUri(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Domain(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Extension(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Fragment(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Host(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Password(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Path(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_Query(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **decoder) {
    return This->lpVtbl->get_QueryParsed(This,decoder);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_RawUri(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_SchemeName(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) {
    return This->lpVtbl->get_UserName(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,INT32 *value) {
    return This->lpVtbl->get_Port(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,boolean *value) {
    return This->lpVtbl->get_Suspicious(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass *uri,boolean *value) {
    return This->lpVtbl->Equals(This,uri,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING relative_uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) {
    return This->lpVtbl->CombineUri(This,relative_uri,instance);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IUriRuntimeClass IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClass
#define IUriRuntimeClassVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl
#define IUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass
#define IUriRuntimeClass_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface
#define IUriRuntimeClass_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef
#define IUriRuntimeClass_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release
#define IUriRuntimeClass_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids
#define IUriRuntimeClass_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName
#define IUriRuntimeClass_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel
#define IUriRuntimeClass_get_AbsoluteUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri
#define IUriRuntimeClass_get_DisplayUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri
#define IUriRuntimeClass_get_Domain __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain
#define IUriRuntimeClass_get_Extension __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension
#define IUriRuntimeClass_get_Fragment __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment
#define IUriRuntimeClass_get_Host __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host
#define IUriRuntimeClass_get_Password __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password
#define IUriRuntimeClass_get_Path __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path
#define IUriRuntimeClass_get_Query __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query
#define IUriRuntimeClass_get_QueryParsed __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed
#define IUriRuntimeClass_get_RawUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri
#define IUriRuntimeClass_get_SchemeName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName
#define IUriRuntimeClass_get_UserName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName
#define IUriRuntimeClass_get_Port __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port
#define IUriRuntimeClass_get_Suspicious __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious
#define IUriRuntimeClass_Equals __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals
#define IUriRuntimeClass_CombineUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IUriRuntimeClassFactory interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory, 0x44a9796f, 0x723e, 0x4fdf, 0xa2,0x18, 0x03,0x3e,0x75,0xb0,0xc0,0x84);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("44a9796f-723e-4fdf-a218-033e75b0c084")
            IUriRuntimeClassFactory : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE CreateUri(
                    HSTRING uri,
                    ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0;

                virtual HRESULT STDMETHODCALLTYPE CreateWithRelativeUri(
                    HSTRING base_uri,
                    HSTRING relative_uri,
                    ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory, 0x44a9796f, 0x723e, 0x4fdf, 0xa2,0x18, 0x03,0x3e,0x75,0xb0,0xc0,0x84)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        TrustLevel *trustLevel);

    /*** IUriRuntimeClassFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *CreateUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        HSTRING uri,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance);

    HRESULT (STDMETHODCALLTYPE *CreateWithRelativeUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This,
        HSTRING base_uri,
        HSTRING relative_uri,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl;

interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUriRuntimeClassFactory methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri(This,uri,instance) (This)->lpVtbl->CreateUri(This,uri,instance)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri(This,base_uri,relative_uri,instance) (This)->lpVtbl->CreateWithRelativeUri(This,base_uri,relative_uri,instance)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUriRuntimeClassFactory methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) {
    return This->lpVtbl->CreateUri(This,uri,instance);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING base_uri,HSTRING relative_uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) {
    return This->lpVtbl->CreateWithRelativeUri(This,base_uri,relative_uri,instance);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IUriRuntimeClassFactory IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory
#define IUriRuntimeClassFactoryVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl
#define IUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory
#define IUriRuntimeClassFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface
#define IUriRuntimeClassFactory_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef
#define IUriRuntimeClassFactory_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release
#define IUriRuntimeClassFactory_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids
#define IUriRuntimeClassFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName
#define IUriRuntimeClassFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel
#define IUriRuntimeClassFactory_CreateUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri
#define IUriRuntimeClassFactory_CreateWithRelativeUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IUriRuntimeClassWithAbsoluteCanonicalUri interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri, 0x758d9661, 0x221c, 0x480f, 0xa3,0x39, 0x50,0x65,0x66,0x73,0xf4,0x6f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("758d9661-221c-480f-a339-50656673f46f")
            IUriRuntimeClassWithAbsoluteCanonicalUri : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_AbsoluteCanonicalUri(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_DisplayIri(
                    HSTRING *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri, 0x758d9661, 0x221c, 0x480f, 0xa3,0x39, 0x50,0x65,0x66,0x73,0xf4,0x6f)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        TrustLevel *trustLevel);

    /*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/
    HRESULT (STDMETHODCALLTYPE *get_AbsoluteCanonicalUri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_DisplayIri)(
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This,
        HSTRING *value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl;

interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri(This,value) (This)->lpVtbl->get_AbsoluteCanonicalUri(This,value)
#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri(This,value) (This)->lpVtbl->get_DisplayIri(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *value) {
    return This->lpVtbl->get_AbsoluteCanonicalUri(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *value) {
    return This->lpVtbl->get_DisplayIri(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IUriRuntimeClassWithAbsoluteCanonicalUri IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri
#define IUriRuntimeClassWithAbsoluteCanonicalUriVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl
#define IUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri
#define IUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface
#define IUriRuntimeClassWithAbsoluteCanonicalUri_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef
#define IUriRuntimeClassWithAbsoluteCanonicalUri_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release
#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids
#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName
#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel
#define IUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri
#define IUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IWwwFormUrlDecoderEntry interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry, 0x125e7431, 0xf678, 0x4e8e, 0xb6,0x70, 0x20,0xa9,0xb0,0x6c,0x51,0x2d);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("125e7431-f678-4e8e-b670-20a9b06c512d")
            IWwwFormUrlDecoderEntry : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_Name(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Value(
                    HSTRING *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry, 0x125e7431, 0xf678, 0x4e8e, 0xb6,0x70, 0x20,0xa9,0xb0,0x6c,0x51,0x2d)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        TrustLevel *trustLevel);

    /*** IWwwFormUrlDecoderEntry methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Name)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This,
        HSTRING *value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl;

interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IWwwFormUrlDecoderEntry methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name(This,value) (This)->lpVtbl->get_Name(This,value)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IWwwFormUrlDecoderEntry methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *value) {
    return This->lpVtbl->get_Name(This,value);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IWwwFormUrlDecoderEntry IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry
#define IWwwFormUrlDecoderEntryVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl
#define IWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry
#define IWwwFormUrlDecoderEntry_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface
#define IWwwFormUrlDecoderEntry_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef
#define IWwwFormUrlDecoderEntry_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release
#define IWwwFormUrlDecoderEntry_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids
#define IWwwFormUrlDecoderEntry_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName
#define IWwwFormUrlDecoderEntry_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel
#define IWwwFormUrlDecoderEntry_get_Name __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name
#define IWwwFormUrlDecoderEntry_get_Value __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IWwwFormUrlDecoderRuntimeClass interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass, 0xd45a0451, 0xf225, 0x4542, 0x92,0x96, 0x0e,0x1d,0xf5,0xd2,0x54,0xdf);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("d45a0451-f225-4542-9296-0e1df5d254df")
            IWwwFormUrlDecoderRuntimeClass : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE GetFirstValueByName(
                    HSTRING name,
                    HSTRING *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass, 0xd45a0451, 0xf225, 0x4542, 0x92,0x96, 0x0e,0x1d,0xf5,0xd2,0x54,0xdf)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This,
        TrustLevel *trustLevel);

    /*** IWwwFormUrlDecoderRuntimeClass methods ***/
    HRESULT (STDMETHODCALLTYPE *GetFirstValueByName)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This,
        HSTRING name,
        HSTRING *value);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl;

interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IWwwFormUrlDecoderRuntimeClass methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName(This,name,value) (This)->lpVtbl->GetFirstValueByName(This,name,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IWwwFormUrlDecoderRuntimeClass methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,HSTRING name,HSTRING *value) {
    return This->lpVtbl->GetFirstValueByName(This,name,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IWwwFormUrlDecoderRuntimeClass IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass
#define IWwwFormUrlDecoderRuntimeClassVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl
#define IWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass
#define IWwwFormUrlDecoderRuntimeClass_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface
#define IWwwFormUrlDecoderRuntimeClass_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef
#define IWwwFormUrlDecoderRuntimeClass_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release
#define IWwwFormUrlDecoderRuntimeClass_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids
#define IWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName
#define IWwwFormUrlDecoderRuntimeClass_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel
#define IWwwFormUrlDecoderRuntimeClass_GetFirstValueByName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IWwwFormUrlDecoderRuntimeClassFactory interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory, 0x5b8c6b3d, 0x24ae, 0x41b5, 0xa1,0xbf, 0xf0,0xc3,0xd5,0x44,0x84,0x5b);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            MIDL_INTERFACE("5b8c6b3d-24ae-41b5-a1bf-f0c3d544845b")
            IWwwFormUrlDecoderRuntimeClassFactory : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE CreateWwwFormUrlDecoder(
                    HSTRING query,
                    ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **instance) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory, 0x5b8c6b3d, 0x24ae, 0x41b5, 0xa1,0xbf, 0xf0,0xc3,0xd5,0x44,0x84,0x5b)
#endif
#else
typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This,
        TrustLevel *trustLevel);

    /*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *CreateWwwFormUrlDecoder)(
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This,
        HSTRING query,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **instance);

    END_INTERFACE
} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl;

interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory {
    CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/
#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder(This,query,instance) (This)->lpVtbl->CreateWwwFormUrlDecoder(This,query,instance)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/
static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,HSTRING query,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **instance) {
    return This->lpVtbl->CreateWwwFormUrlDecoder(This,query,instance);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IWwwFormUrlDecoderRuntimeClassFactory IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory
#define IWwwFormUrlDecoderRuntimeClassFactoryVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl
#define IWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory
#define IWwwFormUrlDecoderRuntimeClassFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface
#define IWwwFormUrlDecoderRuntimeClassFactory_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef
#define IWwwFormUrlDecoderRuntimeClassFactory_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release
#define IWwwFormUrlDecoderRuntimeClassFactory_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids
#define IWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName
#define IWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel
#define IWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.Foundation.Deferral
 */
#if WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Foundation_Deferral_DEFINED
#define RUNTIMECLASS_Windows_Foundation_Deferral_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Foundation_Deferral[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','D','e','f','e','r','r','a','l',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Deferral[] = L"Windows.Foundation.Deferral";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Deferral[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','D','e','f','e','r','r','a','l',0};
#endif
#endif /* RUNTIMECLASS_Windows_Foundation_Deferral_DEFINED */
#endif /* WINDOWS_FOUNDATION_FOUNDATIONCONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.Foundation.MemoryBuffer
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Foundation_MemoryBuffer_DEFINED
#define RUNTIMECLASS_Windows_Foundation_MemoryBuffer_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Foundation_MemoryBuffer[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','M','e','m','o','r','y','B','u','f','f','e','r',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_MemoryBuffer[] = L"Windows.Foundation.MemoryBuffer";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_MemoryBuffer[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','M','e','m','o','r','y','B','u','f','f','e','r',0};
#endif
#endif /* RUNTIMECLASS_Windows_Foundation_MemoryBuffer_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.Foundation.Uri
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Foundation_Uri_DEFINED
#define RUNTIMECLASS_Windows_Foundation_Uri_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Foundation_Uri[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','U','r','i',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Uri[] = L"Windows.Foundation.Uri";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Uri[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','U','r','i',0};
#endif
#endif /* RUNTIMECLASS_Windows_Foundation_Uri_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.Foundation.WwwFormUrlDecoder
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED
#define RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = L"Windows.Foundation.WwwFormUrlDecoder";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r',0};
#endif
#endif /* RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.Foundation.WwwFormUrlDecoderEntry
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED
#define RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r','E','n','t','r','y',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = L"Windows.Foundation.WwwFormUrlDecoderEntry";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r','E','n','t','r','y',0};
#endif
#endif /* RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IKeyValuePair<HSTRING,IInspectable* > interface
 */
#ifndef ____FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIKeyValuePair_2_HSTRING_IInspectable, 0x09335560, 0x6c6b, 0x5a26, 0x93,0x48, 0x97,0xb7,0x81,0x13,0x2b,0x20);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("09335560-6c6b-5a26-9348-97b781132b20")
                IKeyValuePair<HSTRING,IInspectable* > : IKeyValuePair_impl<HSTRING, IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIKeyValuePair_2_HSTRING_IInspectable, 0x09335560, 0x6c6b, 0x5a26, 0x93,0x48, 0x97,0xb7,0x81,0x13,0x2b,0x20)
#endif
#else
typedef struct __FIKeyValuePair_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IKeyValuePair<HSTRING,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Key)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        HSTRING *key);

    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __FIKeyValuePair_2_HSTRING_IInspectable *This,
        IInspectable **value);

    END_INTERFACE
} __FIKeyValuePair_2_HSTRING_IInspectableVtbl;

interface __FIKeyValuePair_2_HSTRING_IInspectable {
    CONST_VTBL __FIKeyValuePair_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIKeyValuePair_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIKeyValuePair_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIKeyValuePair_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IKeyValuePair<HSTRING,IInspectable* > methods ***/
#define __FIKeyValuePair_2_HSTRING_IInspectable_get_Key(This,key) (This)->lpVtbl->get_Key(This,key)
#define __FIKeyValuePair_2_HSTRING_IInspectable_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(__FIKeyValuePair_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIKeyValuePair_2_HSTRING_IInspectable_AddRef(__FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIKeyValuePair_2_HSTRING_IInspectable_Release(__FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_GetIids(__FIKeyValuePair_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(__FIKeyValuePair_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(__FIKeyValuePair_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IKeyValuePair<HSTRING,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_get_Key(__FIKeyValuePair_2_HSTRING_IInspectable* This,HSTRING *key) {
    return This->lpVtbl->get_Key(This,key);
}
static __WIDL_INLINE HRESULT __FIKeyValuePair_2_HSTRING_IInspectable_get_Value(__FIKeyValuePair_2_HSTRING_IInspectable* This,IInspectable **value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IKeyValuePair_HSTRING_IInspectable IID___FIKeyValuePair_2_HSTRING_IInspectable
#define IKeyValuePair_HSTRING_IInspectableVtbl __FIKeyValuePair_2_HSTRING_IInspectableVtbl
#define IKeyValuePair_HSTRING_IInspectable __FIKeyValuePair_2_HSTRING_IInspectable
#define IKeyValuePair_HSTRING_IInspectable_QueryInterface __FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface
#define IKeyValuePair_HSTRING_IInspectable_AddRef __FIKeyValuePair_2_HSTRING_IInspectable_AddRef
#define IKeyValuePair_HSTRING_IInspectable_Release __FIKeyValuePair_2_HSTRING_IInspectable_Release
#define IKeyValuePair_HSTRING_IInspectable_GetIids __FIKeyValuePair_2_HSTRING_IInspectable_GetIids
#define IKeyValuePair_HSTRING_IInspectable_GetRuntimeClassName __FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName
#define IKeyValuePair_HSTRING_IInspectable_GetTrustLevel __FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel
#define IKeyValuePair_HSTRING_IInspectable_get_Key __FIKeyValuePair_2_HSTRING_IInspectable_get_Key
#define IKeyValuePair_HSTRING_IInspectable_get_Value __FIKeyValuePair_2_HSTRING_IInspectable_get_Value
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > interface
 */
#ifndef ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable, 0xfe2f3d47, 0x5d47, 0x5499, 0x83,0x74, 0x43,0x0c,0x7c,0xda,0x02,0x04);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("fe2f3d47-5d47-5499-8374-430c7cda0204")
                IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > : IIterable_impl<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable, 0xfe2f3d47, 0x5d47, 0x5499, 0x83,0x74, 0x43,0x0c,0x7c,0xda,0x02,0x04)
#endif
#else
typedef struct __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
    HRESULT (STDMETHODCALLTYPE *First)(
        __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable **value);

    END_INTERFACE
} __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl;

interface __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable {
    CONST_VTBL __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_First(This,value) (This)->lpVtbl->First(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_Release(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterable<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_First(__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable* This,__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable **value) {
    return This->lpVtbl->First(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterable_IKeyValuePair_HSTRING_IInspectable IID___FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable
#define IIterable_IKeyValuePair_HSTRING_IInspectableVtbl __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl
#define IIterable_IKeyValuePair_HSTRING_IInspectable __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable
#define IIterable_IKeyValuePair_HSTRING_IInspectable_QueryInterface __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface
#define IIterable_IKeyValuePair_HSTRING_IInspectable_AddRef __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef
#define IIterable_IKeyValuePair_HSTRING_IInspectable_Release __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_Release
#define IIterable_IKeyValuePair_HSTRING_IInspectable_GetIids __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids
#define IIterable_IKeyValuePair_HSTRING_IInspectable_GetRuntimeClassName __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName
#define IIterable_IKeyValuePair_HSTRING_IInspectable_GetTrustLevel __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel
#define IIterable_IKeyValuePair_HSTRING_IInspectable_First __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_First
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > interface
 */
#ifndef ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable, 0x5db5fa32, 0x707c, 0x5849, 0xa0,0x6b, 0x91,0xc8,0xeb,0x9d,0x10,0xe8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("5db5fa32-707c-5849-a06b-91c8eb9d10e8")
                IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > : IIterator_impl<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable, 0x5db5fa32, 0x707c, 0x5849, 0xa0,0x6b, 0x91,0xc8,0xeb,0x9d,0x10,0xe8)
#endif
#else
typedef struct __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Current)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        __FIKeyValuePair_2_HSTRING_IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_HasCurrent)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *MoveNext)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable *This,
        UINT32 items_size,
        __FIKeyValuePair_2_HSTRING_IInspectable **items,
        UINT32 *value);

    END_INTERFACE
} __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl;

interface __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable {
    CONST_VTBL __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_Current(This,value) (This)->lpVtbl->get_Current(This,value)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value)
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_Release(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterator<ABI::Windows::Foundation::Collections::IKeyValuePair<HSTRING,IInspectable* >* > methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_Current(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,__FIKeyValuePair_2_HSTRING_IInspectable **value) {
    return This->lpVtbl->get_Current(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_HasCurrent(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,boolean *value) {
    return This->lpVtbl->get_HasCurrent(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_MoveNext(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,boolean *value) {
    return This->lpVtbl->MoveNext(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetMany(__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable* This,UINT32 items_size,__FIKeyValuePair_2_HSTRING_IInspectable **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterator_IKeyValuePair_HSTRING_IInspectable IID___FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable
#define IIterator_IKeyValuePair_HSTRING_IInspectableVtbl __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectableVtbl
#define IIterator_IKeyValuePair_HSTRING_IInspectable __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable
#define IIterator_IKeyValuePair_HSTRING_IInspectable_QueryInterface __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_QueryInterface
#define IIterator_IKeyValuePair_HSTRING_IInspectable_AddRef __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_AddRef
#define IIterator_IKeyValuePair_HSTRING_IInspectable_Release __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_Release
#define IIterator_IKeyValuePair_HSTRING_IInspectable_GetIids __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetIids
#define IIterator_IKeyValuePair_HSTRING_IInspectable_GetRuntimeClassName __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetRuntimeClassName
#define IIterator_IKeyValuePair_HSTRING_IInspectable_GetTrustLevel __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetTrustLevel
#define IIterator_IKeyValuePair_HSTRING_IInspectable_get_Current __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_Current
#define IIterator_IKeyValuePair_HSTRING_IInspectable_get_HasCurrent __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_get_HasCurrent
#define IIterator_IKeyValuePair_HSTRING_IInspectable_MoveNext __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_MoveNext
#define IIterator_IKeyValuePair_HSTRING_IInspectable_GetMany __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapChangedEventArgs<HSTRING > interface
 */
#ifndef ____FIMapChangedEventArgs_1_HSTRING_INTERFACE_DEFINED__
#define ____FIMapChangedEventArgs_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapChangedEventArgs_1_HSTRING, 0x60141efb, 0xf2f9, 0x5377, 0x96,0xfd, 0xf8,0xc6,0x0d,0x95,0x58,0xb5);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("60141efb-f2f9-5377-96fd-f8c60d9558b5")
                IMapChangedEventArgs<HSTRING > : IMapChangedEventArgs_impl<HSTRING >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapChangedEventArgs_1_HSTRING, 0x60141efb, 0xf2f9, 0x5377, 0x96,0xfd, 0xf8,0xc6,0x0d,0x95,0x58,0xb5)
#endif
#else
typedef struct __FIMapChangedEventArgs_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIMapChangedEventArgs_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIMapChangedEventArgs_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IMapChangedEventArgs<HSTRING > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_CollectionChanged)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        enum __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange *value);

    HRESULT (STDMETHODCALLTYPE *get_Key)(
        __FIMapChangedEventArgs_1_HSTRING *This,
        HSTRING *key);

    END_INTERFACE
} __FIMapChangedEventArgs_1_HSTRINGVtbl;

interface __FIMapChangedEventArgs_1_HSTRING {
    CONST_VTBL __FIMapChangedEventArgs_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapChangedEventArgs_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapChangedEventArgs_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapChangedEventArgs_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapChangedEventArgs_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapChangedEventArgs_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapChangedEventArgs_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapChangedEventArgs<HSTRING > methods ***/
#define __FIMapChangedEventArgs_1_HSTRING_get_CollectionChanged(This,value) (This)->lpVtbl->get_CollectionChanged(This,value)
#define __FIMapChangedEventArgs_1_HSTRING_get_Key(This,key) (This)->lpVtbl->get_Key(This,key)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_QueryInterface(__FIMapChangedEventArgs_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIMapChangedEventArgs_1_HSTRING_AddRef(__FIMapChangedEventArgs_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIMapChangedEventArgs_1_HSTRING_Release(__FIMapChangedEventArgs_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_GetIids(__FIMapChangedEventArgs_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_GetRuntimeClassName(__FIMapChangedEventArgs_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_GetTrustLevel(__FIMapChangedEventArgs_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapChangedEventArgs<HSTRING > methods ***/
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_get_CollectionChanged(__FIMapChangedEventArgs_1_HSTRING* This,enum __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange *value) {
    return This->lpVtbl->get_CollectionChanged(This,value);
}
static __WIDL_INLINE HRESULT __FIMapChangedEventArgs_1_HSTRING_get_Key(__FIMapChangedEventArgs_1_HSTRING* This,HSTRING *key) {
    return This->lpVtbl->get_Key(This,key);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapChangedEventArgs_HSTRING IID___FIMapChangedEventArgs_1_HSTRING
#define IMapChangedEventArgs_HSTRINGVtbl __FIMapChangedEventArgs_1_HSTRINGVtbl
#define IMapChangedEventArgs_HSTRING __FIMapChangedEventArgs_1_HSTRING
#define IMapChangedEventArgs_HSTRING_QueryInterface __FIMapChangedEventArgs_1_HSTRING_QueryInterface
#define IMapChangedEventArgs_HSTRING_AddRef __FIMapChangedEventArgs_1_HSTRING_AddRef
#define IMapChangedEventArgs_HSTRING_Release __FIMapChangedEventArgs_1_HSTRING_Release
#define IMapChangedEventArgs_HSTRING_GetIids __FIMapChangedEventArgs_1_HSTRING_GetIids
#define IMapChangedEventArgs_HSTRING_GetRuntimeClassName __FIMapChangedEventArgs_1_HSTRING_GetRuntimeClassName
#define IMapChangedEventArgs_HSTRING_GetTrustLevel __FIMapChangedEventArgs_1_HSTRING_GetTrustLevel
#define IMapChangedEventArgs_HSTRING_get_CollectionChanged __FIMapChangedEventArgs_1_HSTRING_get_CollectionChanged
#define IMapChangedEventArgs_HSTRING_get_Key __FIMapChangedEventArgs_1_HSTRING_get_Key
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapChangedEventArgs_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapChangedEventHandler<HSTRING,IInspectable* > interface
 */
#ifndef ____FIMapChangedEventHandler_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIMapChangedEventHandler_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapChangedEventHandler_2_HSTRING_IInspectable, 0x24f981e5, 0xddca, 0x538d, 0xaa,0xda, 0xa5,0x99,0x06,0x08,0x4c,0xf1);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("24f981e5-ddca-538d-aada-a59906084cf1")
                IMapChangedEventHandler<HSTRING,IInspectable* > : IMapChangedEventHandler_impl<HSTRING, IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapChangedEventHandler_2_HSTRING_IInspectable, 0x24f981e5, 0xddca, 0x538d, 0xaa,0xda, 0xa5,0x99,0x06,0x08,0x4c,0xf1)
#endif
#else
typedef struct __FIMapChangedEventHandler_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIMapChangedEventHandler_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIMapChangedEventHandler_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIMapChangedEventHandler_2_HSTRING_IInspectable *This);

    /*** IMapChangedEventHandler<HSTRING,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIMapChangedEventHandler_2_HSTRING_IInspectable *This,
        __FIObservableMap_2_HSTRING_IInspectable *sender,
        __FIMapChangedEventArgs_1_HSTRING *args);

    END_INTERFACE
} __FIMapChangedEventHandler_2_HSTRING_IInspectableVtbl;

interface __FIMapChangedEventHandler_2_HSTRING_IInspectable {
    CONST_VTBL __FIMapChangedEventHandler_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapChangedEventHandler_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapChangedEventHandler_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapChangedEventHandler_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IMapChangedEventHandler<HSTRING,IInspectable* > methods ***/
#define __FIMapChangedEventHandler_2_HSTRING_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIMapChangedEventHandler_2_HSTRING_IInspectable_QueryInterface(__FIMapChangedEventHandler_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIMapChangedEventHandler_2_HSTRING_IInspectable_AddRef(__FIMapChangedEventHandler_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIMapChangedEventHandler_2_HSTRING_IInspectable_Release(__FIMapChangedEventHandler_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IMapChangedEventHandler<HSTRING,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIMapChangedEventHandler_2_HSTRING_IInspectable_Invoke(__FIMapChangedEventHandler_2_HSTRING_IInspectable* This,__FIObservableMap_2_HSTRING_IInspectable *sender,__FIMapChangedEventArgs_1_HSTRING *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapChangedEventHandler_HSTRING_IInspectable IID___FIMapChangedEventHandler_2_HSTRING_IInspectable
#define IMapChangedEventHandler_HSTRING_IInspectableVtbl __FIMapChangedEventHandler_2_HSTRING_IInspectableVtbl
#define IMapChangedEventHandler_HSTRING_IInspectable __FIMapChangedEventHandler_2_HSTRING_IInspectable
#define IMapChangedEventHandler_HSTRING_IInspectable_QueryInterface __FIMapChangedEventHandler_2_HSTRING_IInspectable_QueryInterface
#define IMapChangedEventHandler_HSTRING_IInspectable_AddRef __FIMapChangedEventHandler_2_HSTRING_IInspectable_AddRef
#define IMapChangedEventHandler_HSTRING_IInspectable_Release __FIMapChangedEventHandler_2_HSTRING_IInspectable_Release
#define IMapChangedEventHandler_HSTRING_IInspectable_Invoke __FIMapChangedEventHandler_2_HSTRING_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapChangedEventHandler_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMap<HSTRING,IInspectable* > interface
 */
#ifndef ____FIMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMap_2_HSTRING_IInspectable, 0x1b0d3570, 0x0877, 0x5ec2, 0x8a,0x2c, 0x3b,0x95,0x39,0x50,0x6a,0xca);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("1b0d3570-0877-5ec2-8a2c-3b9539506aca")
                IMap<HSTRING,IInspectable* > : IMap_impl<HSTRING, IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMap_2_HSTRING_IInspectable, 0x1b0d3570, 0x0877, 0x5ec2, 0x8a,0x2c, 0x3b,0x95,0x39,0x50,0x6a,0xca)
#endif
#else
typedef struct __FIMap_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIMap_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIMap_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIMap_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIMap_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIMap_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIMap_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IMap<HSTRING,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMap_2_HSTRING_IInspectable *This,
        HSTRING key,
        IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMap_2_HSTRING_IInspectable *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMap_2_HSTRING_IInspectable *This,
        HSTRING key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *GetView)(
        __FIMap_2_HSTRING_IInspectable *This,
        __FIMapView_2_HSTRING_IInspectable **view);

    HRESULT (STDMETHODCALLTYPE *Insert)(
        __FIMap_2_HSTRING_IInspectable *This,
        HSTRING key,
        IInspectable *value,
        boolean *replaced);

    HRESULT (STDMETHODCALLTYPE *Remove)(
        __FIMap_2_HSTRING_IInspectable *This,
        HSTRING key);

    HRESULT (STDMETHODCALLTYPE *Clear)(
        __FIMap_2_HSTRING_IInspectable *This);

    END_INTERFACE
} __FIMap_2_HSTRING_IInspectableVtbl;

interface __FIMap_2_HSTRING_IInspectable {
    CONST_VTBL __FIMap_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMap_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMap_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMap_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMap_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMap_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMap_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMap<HSTRING,IInspectable* > methods ***/
#define __FIMap_2_HSTRING_IInspectable_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMap_2_HSTRING_IInspectable_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMap_2_HSTRING_IInspectable_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMap_2_HSTRING_IInspectable_GetView(This,view) (This)->lpVtbl->GetView(This,view)
#define __FIMap_2_HSTRING_IInspectable_Insert(This,key,value,replaced) (This)->lpVtbl->Insert(This,key,value,replaced)
#define __FIMap_2_HSTRING_IInspectable_Remove(This,key) (This)->lpVtbl->Remove(This,key)
#define __FIMap_2_HSTRING_IInspectable_Clear(This) (This)->lpVtbl->Clear(This)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_QueryInterface(__FIMap_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIMap_2_HSTRING_IInspectable_AddRef(__FIMap_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIMap_2_HSTRING_IInspectable_Release(__FIMap_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_GetIids(__FIMap_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_GetRuntimeClassName(__FIMap_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_GetTrustLevel(__FIMap_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMap<HSTRING,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_Lookup(__FIMap_2_HSTRING_IInspectable* This,HSTRING key,IInspectable **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_get_Size(__FIMap_2_HSTRING_IInspectable* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_HasKey(__FIMap_2_HSTRING_IInspectable* This,HSTRING key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_GetView(__FIMap_2_HSTRING_IInspectable* This,__FIMapView_2_HSTRING_IInspectable **view) {
    return This->lpVtbl->GetView(This,view);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_Insert(__FIMap_2_HSTRING_IInspectable* This,HSTRING key,IInspectable *value,boolean *replaced) {
    return This->lpVtbl->Insert(This,key,value,replaced);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_Remove(__FIMap_2_HSTRING_IInspectable* This,HSTRING key) {
    return This->lpVtbl->Remove(This,key);
}
static __WIDL_INLINE HRESULT __FIMap_2_HSTRING_IInspectable_Clear(__FIMap_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Clear(This);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMap_HSTRING_IInspectable IID___FIMap_2_HSTRING_IInspectable
#define IMap_HSTRING_IInspectableVtbl __FIMap_2_HSTRING_IInspectableVtbl
#define IMap_HSTRING_IInspectable __FIMap_2_HSTRING_IInspectable
#define IMap_HSTRING_IInspectable_QueryInterface __FIMap_2_HSTRING_IInspectable_QueryInterface
#define IMap_HSTRING_IInspectable_AddRef __FIMap_2_HSTRING_IInspectable_AddRef
#define IMap_HSTRING_IInspectable_Release __FIMap_2_HSTRING_IInspectable_Release
#define IMap_HSTRING_IInspectable_GetIids __FIMap_2_HSTRING_IInspectable_GetIids
#define IMap_HSTRING_IInspectable_GetRuntimeClassName __FIMap_2_HSTRING_IInspectable_GetRuntimeClassName
#define IMap_HSTRING_IInspectable_GetTrustLevel __FIMap_2_HSTRING_IInspectable_GetTrustLevel
#define IMap_HSTRING_IInspectable_Lookup __FIMap_2_HSTRING_IInspectable_Lookup
#define IMap_HSTRING_IInspectable_get_Size __FIMap_2_HSTRING_IInspectable_get_Size
#define IMap_HSTRING_IInspectable_HasKey __FIMap_2_HSTRING_IInspectable_HasKey
#define IMap_HSTRING_IInspectable_GetView __FIMap_2_HSTRING_IInspectable_GetView
#define IMap_HSTRING_IInspectable_Insert __FIMap_2_HSTRING_IInspectable_Insert
#define IMap_HSTRING_IInspectable_Remove __FIMap_2_HSTRING_IInspectable_Remove
#define IMap_HSTRING_IInspectable_Clear __FIMap_2_HSTRING_IInspectable_Clear
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapView<HSTRING,IInspectable* > interface
 */
#ifndef ____FIMapView_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIMapView_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapView_2_HSTRING_IInspectable, 0xbb78502a, 0xf79d, 0x54fa, 0x92,0xc9, 0x90,0xc5,0x03,0x9f,0xdf,0x7e);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("bb78502a-f79d-54fa-92c9-90c5039fdf7e")
                IMapView<HSTRING,IInspectable* > : IMapView_impl<HSTRING, IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapView_2_HSTRING_IInspectable, 0xbb78502a, 0xf79d, 0x54fa, 0x92,0xc9, 0x90,0xc5,0x03,0x9f,0xdf,0x7e)
#endif
#else
typedef struct __FIMapView_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIMapView_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIMapView_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIMapView_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIMapView_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIMapView_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIMapView_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IMapView<HSTRING,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMapView_2_HSTRING_IInspectable *This,
        HSTRING key,
        IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMapView_2_HSTRING_IInspectable *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMapView_2_HSTRING_IInspectable *This,
        HSTRING key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *Split)(
        __FIMapView_2_HSTRING_IInspectable *This,
        __FIMapView_2_HSTRING_IInspectable **first,
        __FIMapView_2_HSTRING_IInspectable **second);

    END_INTERFACE
} __FIMapView_2_HSTRING_IInspectableVtbl;

interface __FIMapView_2_HSTRING_IInspectable {
    CONST_VTBL __FIMapView_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapView_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapView_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapView_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapView_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapView_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapView_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapView<HSTRING,IInspectable* > methods ***/
#define __FIMapView_2_HSTRING_IInspectable_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMapView_2_HSTRING_IInspectable_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMapView_2_HSTRING_IInspectable_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMapView_2_HSTRING_IInspectable_Split(This,first,second) (This)->lpVtbl->Split(This,first,second)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_QueryInterface(__FIMapView_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIMapView_2_HSTRING_IInspectable_AddRef(__FIMapView_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIMapView_2_HSTRING_IInspectable_Release(__FIMapView_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_GetIids(__FIMapView_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_GetRuntimeClassName(__FIMapView_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_GetTrustLevel(__FIMapView_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapView<HSTRING,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_Lookup(__FIMapView_2_HSTRING_IInspectable* This,HSTRING key,IInspectable **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_get_Size(__FIMapView_2_HSTRING_IInspectable* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_HasKey(__FIMapView_2_HSTRING_IInspectable* This,HSTRING key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING_IInspectable_Split(__FIMapView_2_HSTRING_IInspectable* This,__FIMapView_2_HSTRING_IInspectable **first,__FIMapView_2_HSTRING_IInspectable **second) {
    return This->lpVtbl->Split(This,first,second);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapView_HSTRING_IInspectable IID___FIMapView_2_HSTRING_IInspectable
#define IMapView_HSTRING_IInspectableVtbl __FIMapView_2_HSTRING_IInspectableVtbl
#define IMapView_HSTRING_IInspectable __FIMapView_2_HSTRING_IInspectable
#define IMapView_HSTRING_IInspectable_QueryInterface __FIMapView_2_HSTRING_IInspectable_QueryInterface
#define IMapView_HSTRING_IInspectable_AddRef __FIMapView_2_HSTRING_IInspectable_AddRef
#define IMapView_HSTRING_IInspectable_Release __FIMapView_2_HSTRING_IInspectable_Release
#define IMapView_HSTRING_IInspectable_GetIids __FIMapView_2_HSTRING_IInspectable_GetIids
#define IMapView_HSTRING_IInspectable_GetRuntimeClassName __FIMapView_2_HSTRING_IInspectable_GetRuntimeClassName
#define IMapView_HSTRING_IInspectable_GetTrustLevel __FIMapView_2_HSTRING_IInspectable_GetTrustLevel
#define IMapView_HSTRING_IInspectable_Lookup __FIMapView_2_HSTRING_IInspectable_Lookup
#define IMapView_HSTRING_IInspectable_get_Size __FIMapView_2_HSTRING_IInspectable_get_Size
#define IMapView_HSTRING_IInspectable_HasKey __FIMapView_2_HSTRING_IInspectable_HasKey
#define IMapView_HSTRING_IInspectable_Split __FIMapView_2_HSTRING_IInspectable_Split
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapView_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IObservableMap<HSTRING,IInspectable* > interface
 */
#ifndef ____FIObservableMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__
#define ____FIObservableMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIObservableMap_2_HSTRING_IInspectable, 0x236aac9d, 0xfb12, 0x5c4d, 0xa4,0x1c, 0x9e,0x44,0x5f,0xb4,0xd7,0xec);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("236aac9d-fb12-5c4d-a41c-9e445fb4d7ec")
                IObservableMap<HSTRING,IInspectable* > : IObservableMap_impl<HSTRING, IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIObservableMap_2_HSTRING_IInspectable, 0x236aac9d, 0xfb12, 0x5c4d, 0xa4,0x1c, 0x9e,0x44,0x5f,0xb4,0xd7,0xec)
#endif
#else
typedef struct __FIObservableMap_2_HSTRING_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIObservableMap_2_HSTRING_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIObservableMap_2_HSTRING_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IObservableMap<HSTRING,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *add_MapChanged)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        __FIMapChangedEventHandler_2_HSTRING_IInspectable *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_MapChanged)(
        __FIObservableMap_2_HSTRING_IInspectable *This,
        EventRegistrationToken token);

    END_INTERFACE
} __FIObservableMap_2_HSTRING_IInspectableVtbl;

interface __FIObservableMap_2_HSTRING_IInspectable {
    CONST_VTBL __FIObservableMap_2_HSTRING_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIObservableMap_2_HSTRING_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIObservableMap_2_HSTRING_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIObservableMap_2_HSTRING_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIObservableMap_2_HSTRING_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIObservableMap_2_HSTRING_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIObservableMap_2_HSTRING_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IObservableMap<HSTRING,IInspectable* > methods ***/
#define __FIObservableMap_2_HSTRING_IInspectable_add_MapChanged(This,handler,token) (This)->lpVtbl->add_MapChanged(This,handler,token)
#define __FIObservableMap_2_HSTRING_IInspectable_remove_MapChanged(This,token) (This)->lpVtbl->remove_MapChanged(This,token)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_QueryInterface(__FIObservableMap_2_HSTRING_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIObservableMap_2_HSTRING_IInspectable_AddRef(__FIObservableMap_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIObservableMap_2_HSTRING_IInspectable_Release(__FIObservableMap_2_HSTRING_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_GetIids(__FIObservableMap_2_HSTRING_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_GetRuntimeClassName(__FIObservableMap_2_HSTRING_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_GetTrustLevel(__FIObservableMap_2_HSTRING_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IObservableMap<HSTRING,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_add_MapChanged(__FIObservableMap_2_HSTRING_IInspectable* This,__FIMapChangedEventHandler_2_HSTRING_IInspectable *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_MapChanged(This,handler,token);
}
static __WIDL_INLINE HRESULT __FIObservableMap_2_HSTRING_IInspectable_remove_MapChanged(__FIObservableMap_2_HSTRING_IInspectable* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_MapChanged(This,token);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IObservableMap_HSTRING_IInspectable IID___FIObservableMap_2_HSTRING_IInspectable
#define IObservableMap_HSTRING_IInspectableVtbl __FIObservableMap_2_HSTRING_IInspectableVtbl
#define IObservableMap_HSTRING_IInspectable __FIObservableMap_2_HSTRING_IInspectable
#define IObservableMap_HSTRING_IInspectable_QueryInterface __FIObservableMap_2_HSTRING_IInspectable_QueryInterface
#define IObservableMap_HSTRING_IInspectable_AddRef __FIObservableMap_2_HSTRING_IInspectable_AddRef
#define IObservableMap_HSTRING_IInspectable_Release __FIObservableMap_2_HSTRING_IInspectable_Release
#define IObservableMap_HSTRING_IInspectable_GetIids __FIObservableMap_2_HSTRING_IInspectable_GetIids
#define IObservableMap_HSTRING_IInspectable_GetRuntimeClassName __FIObservableMap_2_HSTRING_IInspectable_GetRuntimeClassName
#define IObservableMap_HSTRING_IInspectable_GetTrustLevel __FIObservableMap_2_HSTRING_IInspectable_GetTrustLevel
#define IObservableMap_HSTRING_IInspectable_add_MapChanged __FIObservableMap_2_HSTRING_IInspectable_add_MapChanged
#define IObservableMap_HSTRING_IInspectable_remove_MapChanged __FIObservableMap_2_HSTRING_IInspectable_remove_MapChanged
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIObservableMap_2_HSTRING_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterable<HSTRING > interface
 */
#ifndef ____FIIterable_1_HSTRING_INTERFACE_DEFINED__
#define ____FIIterable_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterable_1_HSTRING, 0xe2fcc7c1, 0x3bfc, 0x5a0b, 0xb2,0xb0, 0x72,0xe7,0x69,0xd1,0xcb,0x7e);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("e2fcc7c1-3bfc-5a0b-b2b0-72e769d1cb7e")
                IIterable<HSTRING > : IIterable_impl<HSTRING >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterable_1_HSTRING, 0xe2fcc7c1, 0x3bfc, 0x5a0b, 0xb2,0xb0, 0x72,0xe7,0x69,0xd1,0xcb,0x7e)
#endif
#else
typedef struct __FIIterable_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterable_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterable_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterable_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterable_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterable_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterable_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IIterable<HSTRING > methods ***/
    HRESULT (STDMETHODCALLTYPE *First)(
        __FIIterable_1_HSTRING *This,
        __FIIterator_1_HSTRING **value);

    END_INTERFACE
} __FIIterable_1_HSTRINGVtbl;

interface __FIIterable_1_HSTRING {
    CONST_VTBL __FIIterable_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterable_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterable_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterable_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterable_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterable_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterable_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterable<HSTRING > methods ***/
#define __FIIterable_1_HSTRING_First(This,value) (This)->lpVtbl->First(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_HSTRING_QueryInterface(__FIIterable_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterable_1_HSTRING_AddRef(__FIIterable_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterable_1_HSTRING_Release(__FIIterable_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_HSTRING_GetIids(__FIIterable_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterable_1_HSTRING_GetRuntimeClassName(__FIIterable_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterable_1_HSTRING_GetTrustLevel(__FIIterable_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterable<HSTRING > methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_HSTRING_First(__FIIterable_1_HSTRING* This,__FIIterator_1_HSTRING **value) {
    return This->lpVtbl->First(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterable_HSTRING IID___FIIterable_1_HSTRING
#define IIterable_HSTRINGVtbl __FIIterable_1_HSTRINGVtbl
#define IIterable_HSTRING __FIIterable_1_HSTRING
#define IIterable_HSTRING_QueryInterface __FIIterable_1_HSTRING_QueryInterface
#define IIterable_HSTRING_AddRef __FIIterable_1_HSTRING_AddRef
#define IIterable_HSTRING_Release __FIIterable_1_HSTRING_Release
#define IIterable_HSTRING_GetIids __FIIterable_1_HSTRING_GetIids
#define IIterable_HSTRING_GetRuntimeClassName __FIIterable_1_HSTRING_GetRuntimeClassName
#define IIterable_HSTRING_GetTrustLevel __FIIterable_1_HSTRING_GetTrustLevel
#define IIterable_HSTRING_First __FIIterable_1_HSTRING_First
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterable_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterable<IInspectable* > interface
 */
#ifndef ____FIIterable_1_IInspectable_INTERFACE_DEFINED__
#define ____FIIterable_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterable_1_IInspectable, 0x092b849b, 0x60b1, 0x52be, 0xa4,0x4a, 0x6f,0xe8,0xe9,0x33,0xcb,0xe4);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("092b849b-60b1-52be-a44a-6fe8e933cbe4")
                IIterable<IInspectable* > : IIterable_impl<IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterable_1_IInspectable, 0x092b849b, 0x60b1, 0x52be, 0xa4,0x4a, 0x6f,0xe8,0xe9,0x33,0xcb,0xe4)
#endif
#else
typedef struct __FIIterable_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterable_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterable_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterable_1_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterable_1_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterable_1_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterable_1_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IIterable<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *First)(
        __FIIterable_1_IInspectable *This,
        __FIIterator_1_IInspectable **value);

    END_INTERFACE
} __FIIterable_1_IInspectableVtbl;

interface __FIIterable_1_IInspectable {
    CONST_VTBL __FIIterable_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterable_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterable_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterable_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterable_1_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterable_1_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterable_1_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterable<IInspectable* > methods ***/
#define __FIIterable_1_IInspectable_First(This,value) (This)->lpVtbl->First(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_QueryInterface(__FIIterable_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterable_1_IInspectable_AddRef(__FIIterable_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterable_1_IInspectable_Release(__FIIterable_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_GetIids(__FIIterable_1_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_GetRuntimeClassName(__FIIterable_1_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_GetTrustLevel(__FIIterable_1_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterable<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_First(__FIIterable_1_IInspectable* This,__FIIterator_1_IInspectable **value) {
    return This->lpVtbl->First(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterable_IInspectable IID___FIIterable_1_IInspectable
#define IIterable_IInspectableVtbl __FIIterable_1_IInspectableVtbl
#define IIterable_IInspectable __FIIterable_1_IInspectable
#define IIterable_IInspectable_QueryInterface __FIIterable_1_IInspectable_QueryInterface
#define IIterable_IInspectable_AddRef __FIIterable_1_IInspectable_AddRef
#define IIterable_IInspectable_Release __FIIterable_1_IInspectable_Release
#define IIterable_IInspectable_GetIids __FIIterable_1_IInspectable_GetIids
#define IIterable_IInspectable_GetRuntimeClassName __FIIterable_1_IInspectable_GetRuntimeClassName
#define IIterable_IInspectable_GetTrustLevel __FIIterable_1_IInspectable_GetTrustLevel
#define IIterable_IInspectable_First __FIIterable_1_IInspectable_First
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterable_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > interface
 */
#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x876be83b, 0x7218, 0x5bfb, 0xa1,0x69, 0x83,0x15,0x2e,0xf7,0xe1,0x46);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("876be83b-7218-5bfb-a169-83152ef7e146")
                IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > : IIterable_impl<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x876be83b, 0x7218, 0x5bfb, 0xa1,0x69, 0x83,0x15,0x2e,0xf7,0xe1,0x46)
#endif
#else
typedef struct __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        TrustLevel *trustLevel);

    /*** IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
    HRESULT (STDMETHODCALLTYPE *First)(
        __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry **value);

    END_INTERFACE
} __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl;

interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry {
    CONST_VTBL __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First(This,value) (This)->lpVtbl->First(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterable<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry **value) {
    return This->lpVtbl->First(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterable_IWwwFormUrlDecoderEntry IID___FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IIterable_IWwwFormUrlDecoderEntryVtbl __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl
#define IIterable_IWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IIterable_IWwwFormUrlDecoderEntry_QueryInterface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface
#define IIterable_IWwwFormUrlDecoderEntry_AddRef __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef
#define IIterable_IWwwFormUrlDecoderEntry_Release __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release
#define IIterable_IWwwFormUrlDecoderEntry_GetIids __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids
#define IIterable_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName
#define IIterable_IWwwFormUrlDecoderEntry_GetTrustLevel __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel
#define IIterable_IWwwFormUrlDecoderEntry_First __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterable<ABI::Windows::Foundation::Uri* > interface
 */
#ifndef ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterable_1_Windows__CFoundation__CUri, 0xb0d63b78, 0x78ad, 0x5e31, 0xb6,0xd8, 0xe3,0x2a,0x0e,0x16,0xc4,0x47);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("b0d63b78-78ad-5e31-b6d8-e32a0e16c447")
                IIterable<ABI::Windows::Foundation::Uri* > : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Foundation::Uri*, ABI::Windows::Foundation::IUriRuntimeClass* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterable_1_Windows__CFoundation__CUri, 0xb0d63b78, 0x78ad, 0x5e31, 0xb6,0xd8, 0xe3,0x2a,0x0e,0x16,0xc4,0x47)
#endif
#else
typedef struct __FIIterable_1_Windows__CFoundation__CUriVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterable_1_Windows__CFoundation__CUri *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterable_1_Windows__CFoundation__CUri *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterable_1_Windows__CFoundation__CUri *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterable_1_Windows__CFoundation__CUri *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterable_1_Windows__CFoundation__CUri *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterable_1_Windows__CFoundation__CUri *This,
        TrustLevel *trustLevel);

    /*** IIterable<ABI::Windows::Foundation::Uri* > methods ***/
    HRESULT (STDMETHODCALLTYPE *First)(
        __FIIterable_1_Windows__CFoundation__CUri *This,
        __FIIterator_1_Windows__CFoundation__CUri **value);

    END_INTERFACE
} __FIIterable_1_Windows__CFoundation__CUriVtbl;

interface __FIIterable_1_Windows__CFoundation__CUri {
    CONST_VTBL __FIIterable_1_Windows__CFoundation__CUriVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterable_1_Windows__CFoundation__CUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterable_1_Windows__CFoundation__CUri_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterable_1_Windows__CFoundation__CUri_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterable_1_Windows__CFoundation__CUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterable<ABI::Windows::Foundation::Uri* > methods ***/
#define __FIIterable_1_Windows__CFoundation__CUri_First(This,value) (This)->lpVtbl->First(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_QueryInterface(__FIIterable_1_Windows__CFoundation__CUri* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CUri_AddRef(__FIIterable_1_Windows__CFoundation__CUri* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CUri_Release(__FIIterable_1_Windows__CFoundation__CUri* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetIids(__FIIterable_1_Windows__CFoundation__CUri* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName(__FIIterable_1_Windows__CFoundation__CUri* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel(__FIIterable_1_Windows__CFoundation__CUri* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterable<ABI::Windows::Foundation::Uri* > methods ***/
static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_First(__FIIterable_1_Windows__CFoundation__CUri* This,__FIIterator_1_Windows__CFoundation__CUri **value) {
    return This->lpVtbl->First(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterable_Uri IID___FIIterable_1_Windows__CFoundation__CUri
#define IIterable_UriVtbl __FIIterable_1_Windows__CFoundation__CUriVtbl
#define IIterable_Uri __FIIterable_1_Windows__CFoundation__CUri
#define IIterable_Uri_QueryInterface __FIIterable_1_Windows__CFoundation__CUri_QueryInterface
#define IIterable_Uri_AddRef __FIIterable_1_Windows__CFoundation__CUri_AddRef
#define IIterable_Uri_Release __FIIterable_1_Windows__CFoundation__CUri_Release
#define IIterable_Uri_GetIids __FIIterable_1_Windows__CFoundation__CUri_GetIids
#define IIterable_Uri_GetRuntimeClassName __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName
#define IIterable_Uri_GetTrustLevel __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel
#define IIterable_Uri_First __FIIterable_1_Windows__CFoundation__CUri_First
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterator<HSTRING > interface
 */
#ifndef ____FIIterator_1_HSTRING_INTERFACE_DEFINED__
#define ____FIIterator_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterator_1_HSTRING, 0x8c304ebb, 0x6615, 0x50a4, 0x88,0x29, 0x87,0x9e,0xcd,0x44,0x32,0x36);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("8c304ebb-6615-50a4-8829-879ecd443236")
                IIterator<HSTRING > : IIterator_impl<HSTRING >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterator_1_HSTRING, 0x8c304ebb, 0x6615, 0x50a4, 0x88,0x29, 0x87,0x9e,0xcd,0x44,0x32,0x36)
#endif
#else
typedef struct __FIIterator_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterator_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterator_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterator_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterator_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterator_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterator_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IIterator<HSTRING > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Current)(
        __FIIterator_1_HSTRING *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_HasCurrent)(
        __FIIterator_1_HSTRING *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *MoveNext)(
        __FIIterator_1_HSTRING *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIIterator_1_HSTRING *This,
        UINT32 items_size,
        HSTRING *items,
        UINT32 *value);

    END_INTERFACE
} __FIIterator_1_HSTRINGVtbl;

interface __FIIterator_1_HSTRING {
    CONST_VTBL __FIIterator_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterator_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterator_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterator_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterator_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterator_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterator_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterator<HSTRING > methods ***/
#define __FIIterator_1_HSTRING_get_Current(This,value) (This)->lpVtbl->get_Current(This,value)
#define __FIIterator_1_HSTRING_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value)
#define __FIIterator_1_HSTRING_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value)
#define __FIIterator_1_HSTRING_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_QueryInterface(__FIIterator_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterator_1_HSTRING_AddRef(__FIIterator_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterator_1_HSTRING_Release(__FIIterator_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_GetIids(__FIIterator_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_GetRuntimeClassName(__FIIterator_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_GetTrustLevel(__FIIterator_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterator<HSTRING > methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_get_Current(__FIIterator_1_HSTRING* This,HSTRING *value) {
    return This->lpVtbl->get_Current(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_get_HasCurrent(__FIIterator_1_HSTRING* This,boolean *value) {
    return This->lpVtbl->get_HasCurrent(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_MoveNext(__FIIterator_1_HSTRING* This,boolean *value) {
    return This->lpVtbl->MoveNext(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_HSTRING_GetMany(__FIIterator_1_HSTRING* This,UINT32 items_size,HSTRING *items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterator_HSTRING IID___FIIterator_1_HSTRING
#define IIterator_HSTRINGVtbl __FIIterator_1_HSTRINGVtbl
#define IIterator_HSTRING __FIIterator_1_HSTRING
#define IIterator_HSTRING_QueryInterface __FIIterator_1_HSTRING_QueryInterface
#define IIterator_HSTRING_AddRef __FIIterator_1_HSTRING_AddRef
#define IIterator_HSTRING_Release __FIIterator_1_HSTRING_Release
#define IIterator_HSTRING_GetIids __FIIterator_1_HSTRING_GetIids
#define IIterator_HSTRING_GetRuntimeClassName __FIIterator_1_HSTRING_GetRuntimeClassName
#define IIterator_HSTRING_GetTrustLevel __FIIterator_1_HSTRING_GetTrustLevel
#define IIterator_HSTRING_get_Current __FIIterator_1_HSTRING_get_Current
#define IIterator_HSTRING_get_HasCurrent __FIIterator_1_HSTRING_get_HasCurrent
#define IIterator_HSTRING_MoveNext __FIIterator_1_HSTRING_MoveNext
#define IIterator_HSTRING_GetMany __FIIterator_1_HSTRING_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterator_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterator<IInspectable* > interface
 */
#ifndef ____FIIterator_1_IInspectable_INTERFACE_DEFINED__
#define ____FIIterator_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterator_1_IInspectable, 0x44a94f2d, 0x04f8, 0x5091, 0xb3,0x36, 0xbe,0x78,0x92,0xdd,0x10,0xbe);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("44a94f2d-04f8-5091-b336-be7892dd10be")
                IIterator<IInspectable* > : IIterator_impl<IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterator_1_IInspectable, 0x44a94f2d, 0x04f8, 0x5091, 0xb3,0x36, 0xbe,0x78,0x92,0xdd,0x10,0xbe)
#endif
#else
typedef struct __FIIterator_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterator_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterator_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterator_1_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterator_1_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterator_1_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterator_1_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IIterator<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Current)(
        __FIIterator_1_IInspectable *This,
        IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_HasCurrent)(
        __FIIterator_1_IInspectable *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *MoveNext)(
        __FIIterator_1_IInspectable *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIIterator_1_IInspectable *This,
        UINT32 items_size,
        IInspectable **items,
        UINT32 *value);

    END_INTERFACE
} __FIIterator_1_IInspectableVtbl;

interface __FIIterator_1_IInspectable {
    CONST_VTBL __FIIterator_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterator_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterator_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterator_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterator_1_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterator_1_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterator_1_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterator<IInspectable* > methods ***/
#define __FIIterator_1_IInspectable_get_Current(This,value) (This)->lpVtbl->get_Current(This,value)
#define __FIIterator_1_IInspectable_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value)
#define __FIIterator_1_IInspectable_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value)
#define __FIIterator_1_IInspectable_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_QueryInterface(__FIIterator_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterator_1_IInspectable_AddRef(__FIIterator_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterator_1_IInspectable_Release(__FIIterator_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_GetIids(__FIIterator_1_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_GetRuntimeClassName(__FIIterator_1_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_GetTrustLevel(__FIIterator_1_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterator<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_get_Current(__FIIterator_1_IInspectable* This,IInspectable **value) {
    return This->lpVtbl->get_Current(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_get_HasCurrent(__FIIterator_1_IInspectable* This,boolean *value) {
    return This->lpVtbl->get_HasCurrent(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_MoveNext(__FIIterator_1_IInspectable* This,boolean *value) {
    return This->lpVtbl->MoveNext(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_GetMany(__FIIterator_1_IInspectable* This,UINT32 items_size,IInspectable **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterator_IInspectable IID___FIIterator_1_IInspectable
#define IIterator_IInspectableVtbl __FIIterator_1_IInspectableVtbl
#define IIterator_IInspectable __FIIterator_1_IInspectable
#define IIterator_IInspectable_QueryInterface __FIIterator_1_IInspectable_QueryInterface
#define IIterator_IInspectable_AddRef __FIIterator_1_IInspectable_AddRef
#define IIterator_IInspectable_Release __FIIterator_1_IInspectable_Release
#define IIterator_IInspectable_GetIids __FIIterator_1_IInspectable_GetIids
#define IIterator_IInspectable_GetRuntimeClassName __FIIterator_1_IInspectable_GetRuntimeClassName
#define IIterator_IInspectable_GetTrustLevel __FIIterator_1_IInspectable_GetTrustLevel
#define IIterator_IInspectable_get_Current __FIIterator_1_IInspectable_get_Current
#define IIterator_IInspectable_get_HasCurrent __FIIterator_1_IInspectable_get_HasCurrent
#define IIterator_IInspectable_MoveNext __FIIterator_1_IInspectable_MoveNext
#define IIterator_IInspectable_GetMany __FIIterator_1_IInspectable_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterator_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > interface
 */
#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x32e54295, 0x373c, 0x50cb, 0x80,0xa1, 0x46,0x8a,0x99,0x0c,0xa7,0x80);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("32e54295-373c-50cb-80a1-468a990ca780")
                IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > : IIterator_impl<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x32e54295, 0x373c, 0x50cb, 0x80,0xa1, 0x46,0x8a,0x99,0x0c,0xa7,0x80)
#endif
#else
typedef struct __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        TrustLevel *trustLevel);

    /*** IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Current)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value);

    HRESULT (STDMETHODCALLTYPE *get_HasCurrent)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *MoveNext)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        UINT32 items_size,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,
        UINT32 *value);

    END_INTERFACE
} __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl;

interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry {
    CONST_VTBL __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current(This,value) (This)->lpVtbl->get_Current(This,value)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value)
#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterator<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value) {
    return This->lpVtbl->get_Current(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,boolean *value) {
    return This->lpVtbl->get_HasCurrent(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,boolean *value) {
    return This->lpVtbl->MoveNext(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterator_IWwwFormUrlDecoderEntry IID___FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IIterator_IWwwFormUrlDecoderEntryVtbl __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl
#define IIterator_IWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IIterator_IWwwFormUrlDecoderEntry_QueryInterface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface
#define IIterator_IWwwFormUrlDecoderEntry_AddRef __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef
#define IIterator_IWwwFormUrlDecoderEntry_Release __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release
#define IIterator_IWwwFormUrlDecoderEntry_GetIids __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids
#define IIterator_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName
#define IIterator_IWwwFormUrlDecoderEntry_GetTrustLevel __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel
#define IIterator_IWwwFormUrlDecoderEntry_get_Current __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current
#define IIterator_IWwwFormUrlDecoderEntry_get_HasCurrent __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent
#define IIterator_IWwwFormUrlDecoderEntry_MoveNext __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext
#define IIterator_IWwwFormUrlDecoderEntry_GetMany __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IIterator<ABI::Windows::Foundation::Uri* > interface
 */
#ifndef ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIIterator_1_Windows__CFoundation__CUri, 0x1c157d0f, 0x5efe, 0x5cec, 0xbb,0xd6, 0x0c,0x6c,0xe9,0xaf,0x07,0xa5);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("1c157d0f-5efe-5cec-bbd6-0c6ce9af07a5")
                IIterator<ABI::Windows::Foundation::Uri* > : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Foundation::Uri*, ABI::Windows::Foundation::IUriRuntimeClass* > >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIIterator_1_Windows__CFoundation__CUri, 0x1c157d0f, 0x5efe, 0x5cec, 0xbb,0xd6, 0x0c,0x6c,0xe9,0xaf,0x07,0xa5)
#endif
#else
typedef struct __FIIterator_1_Windows__CFoundation__CUriVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIIterator_1_Windows__CFoundation__CUri *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIIterator_1_Windows__CFoundation__CUri *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        TrustLevel *trustLevel);

    /*** IIterator<ABI::Windows::Foundation::Uri* > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Current)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **value);

    HRESULT (STDMETHODCALLTYPE *get_HasCurrent)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *MoveNext)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIIterator_1_Windows__CFoundation__CUri *This,
        UINT32 items_size,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **items,
        UINT32 *value);

    END_INTERFACE
} __FIIterator_1_Windows__CFoundation__CUriVtbl;

interface __FIIterator_1_Windows__CFoundation__CUri {
    CONST_VTBL __FIIterator_1_Windows__CFoundation__CUriVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIIterator_1_Windows__CFoundation__CUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIIterator_1_Windows__CFoundation__CUri_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIIterator_1_Windows__CFoundation__CUri_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIIterator_1_Windows__CFoundation__CUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IIterator<ABI::Windows::Foundation::Uri* > methods ***/
#define __FIIterator_1_Windows__CFoundation__CUri_get_Current(This,value) (This)->lpVtbl->get_Current(This,value)
#define __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value)
#define __FIIterator_1_Windows__CFoundation__CUri_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value)
#define __FIIterator_1_Windows__CFoundation__CUri_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_QueryInterface(__FIIterator_1_Windows__CFoundation__CUri* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CUri_AddRef(__FIIterator_1_Windows__CFoundation__CUri* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CUri_Release(__FIIterator_1_Windows__CFoundation__CUri* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetIids(__FIIterator_1_Windows__CFoundation__CUri* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName(__FIIterator_1_Windows__CFoundation__CUri* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel(__FIIterator_1_Windows__CFoundation__CUri* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IIterator<ABI::Windows::Foundation::Uri* > methods ***/
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_get_Current(__FIIterator_1_Windows__CFoundation__CUri* This,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **value) {
    return This->lpVtbl->get_Current(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent(__FIIterator_1_Windows__CFoundation__CUri* This,boolean *value) {
    return This->lpVtbl->get_HasCurrent(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_MoveNext(__FIIterator_1_Windows__CFoundation__CUri* This,boolean *value) {
    return This->lpVtbl->MoveNext(This,value);
}
static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetMany(__FIIterator_1_Windows__CFoundation__CUri* This,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IIterator_Uri IID___FIIterator_1_Windows__CFoundation__CUri
#define IIterator_UriVtbl __FIIterator_1_Windows__CFoundation__CUriVtbl
#define IIterator_Uri __FIIterator_1_Windows__CFoundation__CUri
#define IIterator_Uri_QueryInterface __FIIterator_1_Windows__CFoundation__CUri_QueryInterface
#define IIterator_Uri_AddRef __FIIterator_1_Windows__CFoundation__CUri_AddRef
#define IIterator_Uri_Release __FIIterator_1_Windows__CFoundation__CUri_Release
#define IIterator_Uri_GetIids __FIIterator_1_Windows__CFoundation__CUri_GetIids
#define IIterator_Uri_GetRuntimeClassName __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName
#define IIterator_Uri_GetTrustLevel __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel
#define IIterator_Uri_get_Current __FIIterator_1_Windows__CFoundation__CUri_get_Current
#define IIterator_Uri_get_HasCurrent __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent
#define IIterator_Uri_MoveNext __FIIterator_1_Windows__CFoundation__CUri_MoveNext
#define IIterator_Uri_GetMany __FIIterator_1_Windows__CFoundation__CUri_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVectorView<HSTRING > interface
 */
#ifndef ____FIVectorView_1_HSTRING_INTERFACE_DEFINED__
#define ____FIVectorView_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_HSTRING, 0x2f13c006, 0xa03a, 0x5f69, 0xb0,0x90, 0x75,0xa4,0x3e,0x33,0x42,0x3e);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("2f13c006-a03a-5f69-b090-75a43e33423e")
                IVectorView<HSTRING > : IVectorView_impl<HSTRING >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_HSTRING, 0x2f13c006, 0xa03a, 0x5f69, 0xb0,0x90, 0x75,0xa4,0x3e,0x33,0x42,0x3e)
#endif
#else
typedef struct __FIVectorView_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVectorView_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVectorView_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVectorView_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVectorView_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVectorView_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVectorView_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IVectorView<HSTRING > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_HSTRING *This,
        UINT32 index,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVectorView_1_HSTRING *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_HSTRING *This,
        HSTRING element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_HSTRING *This,
        UINT32 start_index,
        UINT32 items_size,
        HSTRING *items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_HSTRINGVtbl;

interface __FIVectorView_1_HSTRING {
    CONST_VTBL __FIVectorView_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<HSTRING > methods ***/
#define __FIVectorView_1_HSTRING_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_HSTRING_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_HSTRING_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_HSTRING_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_QueryInterface(__FIVectorView_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIVectorView_1_HSTRING_AddRef(__FIVectorView_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIVectorView_1_HSTRING_Release(__FIVectorView_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_GetIids(__FIVectorView_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_GetRuntimeClassName(__FIVectorView_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_GetTrustLevel(__FIVectorView_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<HSTRING > methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_GetAt(__FIVectorView_1_HSTRING* This,UINT32 index,HSTRING *value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_get_Size(__FIVectorView_1_HSTRING* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_IndexOf(__FIVectorView_1_HSTRING* This,HSTRING element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_HSTRING_GetMany(__FIVectorView_1_HSTRING* This,UINT32 start_index,UINT32 items_size,HSTRING *items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_HSTRING IID___FIVectorView_1_HSTRING
#define IVectorView_HSTRINGVtbl __FIVectorView_1_HSTRINGVtbl
#define IVectorView_HSTRING __FIVectorView_1_HSTRING
#define IVectorView_HSTRING_QueryInterface __FIVectorView_1_HSTRING_QueryInterface
#define IVectorView_HSTRING_AddRef __FIVectorView_1_HSTRING_AddRef
#define IVectorView_HSTRING_Release __FIVectorView_1_HSTRING_Release
#define IVectorView_HSTRING_GetIids __FIVectorView_1_HSTRING_GetIids
#define IVectorView_HSTRING_GetRuntimeClassName __FIVectorView_1_HSTRING_GetRuntimeClassName
#define IVectorView_HSTRING_GetTrustLevel __FIVectorView_1_HSTRING_GetTrustLevel
#define IVectorView_HSTRING_GetAt __FIVectorView_1_HSTRING_GetAt
#define IVectorView_HSTRING_get_Size __FIVectorView_1_HSTRING_get_Size
#define IVectorView_HSTRING_IndexOf __FIVectorView_1_HSTRING_IndexOf
#define IVectorView_HSTRING_GetMany __FIVectorView_1_HSTRING_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVectorView<IInspectable* > interface
 */
#ifndef ____FIVectorView_1_IInspectable_INTERFACE_DEFINED__
#define ____FIVectorView_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_IInspectable, 0xa6487363, 0xb074, 0x5c60, 0xab,0x16, 0x86,0x6d,0xce,0x4e,0xe5,0x4d);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("a6487363-b074-5c60-ab16-866dce4ee54d")
                IVectorView<IInspectable* > : IVectorView_impl<IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_IInspectable, 0xa6487363, 0xb074, 0x5c60, 0xab,0x16, 0x86,0x6d,0xce,0x4e,0xe5,0x4d)
#endif
#else
typedef struct __FIVectorView_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVectorView_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVectorView_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVectorView_1_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVectorView_1_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVectorView_1_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVectorView_1_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IVectorView<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_IInspectable *This,
        UINT32 index,
        IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVectorView_1_IInspectable *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_IInspectable *This,
        IInspectable *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_IInspectable *This,
        UINT32 start_index,
        UINT32 items_size,
        IInspectable **items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_IInspectableVtbl;

interface __FIVectorView_1_IInspectable {
    CONST_VTBL __FIVectorView_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<IInspectable* > methods ***/
#define __FIVectorView_1_IInspectable_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_IInspectable_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_IInspectable_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_IInspectable_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_QueryInterface(__FIVectorView_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIVectorView_1_IInspectable_AddRef(__FIVectorView_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIVectorView_1_IInspectable_Release(__FIVectorView_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetIids(__FIVectorView_1_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetRuntimeClassName(__FIVectorView_1_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetTrustLevel(__FIVectorView_1_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetAt(__FIVectorView_1_IInspectable* This,UINT32 index,IInspectable **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_get_Size(__FIVectorView_1_IInspectable* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_IndexOf(__FIVectorView_1_IInspectable* This,IInspectable *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetMany(__FIVectorView_1_IInspectable* This,UINT32 start_index,UINT32 items_size,IInspectable **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_IInspectable IID___FIVectorView_1_IInspectable
#define IVectorView_IInspectableVtbl __FIVectorView_1_IInspectableVtbl
#define IVectorView_IInspectable __FIVectorView_1_IInspectable
#define IVectorView_IInspectable_QueryInterface __FIVectorView_1_IInspectable_QueryInterface
#define IVectorView_IInspectable_AddRef __FIVectorView_1_IInspectable_AddRef
#define IVectorView_IInspectable_Release __FIVectorView_1_IInspectable_Release
#define IVectorView_IInspectable_GetIids __FIVectorView_1_IInspectable_GetIids
#define IVectorView_IInspectable_GetRuntimeClassName __FIVectorView_1_IInspectable_GetRuntimeClassName
#define IVectorView_IInspectable_GetTrustLevel __FIVectorView_1_IInspectable_GetTrustLevel
#define IVectorView_IInspectable_GetAt __FIVectorView_1_IInspectable_GetAt
#define IVectorView_IInspectable_get_Size __FIVectorView_1_IInspectable_get_Size
#define IVectorView_IInspectable_IndexOf __FIVectorView_1_IInspectable_IndexOf
#define IVectorView_IInspectable_GetMany __FIVectorView_1_IInspectable_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > interface
 */
#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0xb1f00d3b, 0x1f06, 0x5117, 0x93,0xea, 0x2a,0x0d,0x79,0x11,0x67,0x01);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("b1f00d3b-1f06-5117-93ea-2a0d79116701")
                IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > : IVectorView_impl<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0xb1f00d3b, 0x1f06, 0x5117, 0x93,0xea, 0x2a,0x0d,0x79,0x11,0x67,0x01)
#endif
#else
typedef struct __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        TrustLevel *trustLevel);

    /*** IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        UINT32 index,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This,
        UINT32 start_index,
        UINT32 items_size,
        __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,
        UINT32 *value);

    END_INTERFACE
} __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl;

interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry {
    CONST_VTBL __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVectorView<ABI::Windows::Foundation::IWwwFormUrlDecoderEntry* > methods ***/
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 index,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVectorView_IWwwFormUrlDecoderEntry IID___FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IVectorView_IWwwFormUrlDecoderEntryVtbl __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl
#define IVectorView_IWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry
#define IVectorView_IWwwFormUrlDecoderEntry_QueryInterface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface
#define IVectorView_IWwwFormUrlDecoderEntry_AddRef __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef
#define IVectorView_IWwwFormUrlDecoderEntry_Release __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release
#define IVectorView_IWwwFormUrlDecoderEntry_GetIids __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids
#define IVectorView_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName
#define IVectorView_IWwwFormUrlDecoderEntry_GetTrustLevel __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel
#define IVectorView_IWwwFormUrlDecoderEntry_GetAt __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt
#define IVectorView_IWwwFormUrlDecoderEntry_get_Size __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size
#define IVectorView_IWwwFormUrlDecoderEntry_IndexOf __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf
#define IVectorView_IWwwFormUrlDecoderEntry_GetMany __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVector<HSTRING > interface
 */
#ifndef ____FIVector_1_HSTRING_INTERFACE_DEFINED__
#define ____FIVector_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVector_1_HSTRING, 0x98b9acc1, 0x4b56, 0x532e, 0xac,0x73, 0x03,0xd5,0x29,0x1c,0xca,0x90);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("98b9acc1-4b56-532e-ac73-03d5291cca90")
                IVector<HSTRING > : IVector_impl<HSTRING >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVector_1_HSTRING, 0x98b9acc1, 0x4b56, 0x532e, 0xac,0x73, 0x03,0xd5,0x29,0x1c,0xca,0x90)
#endif
#else
typedef struct __FIVector_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVector_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVector_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVector_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVector_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVector_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVector_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IVector<HSTRING > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVector_1_HSTRING *This,
        UINT32 index,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVector_1_HSTRING *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *GetView)(
        __FIVector_1_HSTRING *This,
        __FIVectorView_1_HSTRING **value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVector_1_HSTRING *This,
        HSTRING element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *SetAt)(
        __FIVector_1_HSTRING *This,
        UINT32 index,
        HSTRING value);

    HRESULT (STDMETHODCALLTYPE *InsertAt)(
        __FIVector_1_HSTRING *This,
        UINT32 index,
        HSTRING value);

    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
        __FIVector_1_HSTRING *This,
        UINT32 index);

    HRESULT (STDMETHODCALLTYPE *Append)(
        __FIVector_1_HSTRING *This,
        HSTRING value);

    HRESULT (STDMETHODCALLTYPE *RemoveAtEnd)(
        __FIVector_1_HSTRING *This);

    HRESULT (STDMETHODCALLTYPE *Clear)(
        __FIVector_1_HSTRING *This);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVector_1_HSTRING *This,
        UINT32 start_index,
        UINT32 items_size,
        HSTRING *items,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *ReplaceAll)(
        __FIVector_1_HSTRING *This,
        UINT32 count,
        HSTRING *items);

    END_INTERFACE
} __FIVector_1_HSTRINGVtbl;

interface __FIVector_1_HSTRING {
    CONST_VTBL __FIVector_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVector_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVector_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVector_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVector_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVector_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVector_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVector<HSTRING > methods ***/
#define __FIVector_1_HSTRING_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVector_1_HSTRING_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVector_1_HSTRING_GetView(This,value) (This)->lpVtbl->GetView(This,value)
#define __FIVector_1_HSTRING_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVector_1_HSTRING_SetAt(This,index,value) (This)->lpVtbl->SetAt(This,index,value)
#define __FIVector_1_HSTRING_InsertAt(This,index,value) (This)->lpVtbl->InsertAt(This,index,value)
#define __FIVector_1_HSTRING_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
#define __FIVector_1_HSTRING_Append(This,value) (This)->lpVtbl->Append(This,value)
#define __FIVector_1_HSTRING_RemoveAtEnd(This) (This)->lpVtbl->RemoveAtEnd(This)
#define __FIVector_1_HSTRING_Clear(This) (This)->lpVtbl->Clear(This)
#define __FIVector_1_HSTRING_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#define __FIVector_1_HSTRING_ReplaceAll(This,count,items) (This)->lpVtbl->ReplaceAll(This,count,items)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_QueryInterface(__FIVector_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIVector_1_HSTRING_AddRef(__FIVector_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIVector_1_HSTRING_Release(__FIVector_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetIids(__FIVector_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetRuntimeClassName(__FIVector_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetTrustLevel(__FIVector_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVector<HSTRING > methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetAt(__FIVector_1_HSTRING* This,UINT32 index,HSTRING *value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_get_Size(__FIVector_1_HSTRING* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetView(__FIVector_1_HSTRING* This,__FIVectorView_1_HSTRING **value) {
    return This->lpVtbl->GetView(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_IndexOf(__FIVector_1_HSTRING* This,HSTRING element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_SetAt(__FIVector_1_HSTRING* This,UINT32 index,HSTRING value) {
    return This->lpVtbl->SetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_InsertAt(__FIVector_1_HSTRING* This,UINT32 index,HSTRING value) {
    return This->lpVtbl->InsertAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_RemoveAt(__FIVector_1_HSTRING* This,UINT32 index) {
    return This->lpVtbl->RemoveAt(This,index);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_Append(__FIVector_1_HSTRING* This,HSTRING value) {
    return This->lpVtbl->Append(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_RemoveAtEnd(__FIVector_1_HSTRING* This) {
    return This->lpVtbl->RemoveAtEnd(This);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_Clear(__FIVector_1_HSTRING* This) {
    return This->lpVtbl->Clear(This);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_GetMany(__FIVector_1_HSTRING* This,UINT32 start_index,UINT32 items_size,HSTRING *items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_HSTRING_ReplaceAll(__FIVector_1_HSTRING* This,UINT32 count,HSTRING *items) {
    return This->lpVtbl->ReplaceAll(This,count,items);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVector_HSTRING IID___FIVector_1_HSTRING
#define IVector_HSTRINGVtbl __FIVector_1_HSTRINGVtbl
#define IVector_HSTRING __FIVector_1_HSTRING
#define IVector_HSTRING_QueryInterface __FIVector_1_HSTRING_QueryInterface
#define IVector_HSTRING_AddRef __FIVector_1_HSTRING_AddRef
#define IVector_HSTRING_Release __FIVector_1_HSTRING_Release
#define IVector_HSTRING_GetIids __FIVector_1_HSTRING_GetIids
#define IVector_HSTRING_GetRuntimeClassName __FIVector_1_HSTRING_GetRuntimeClassName
#define IVector_HSTRING_GetTrustLevel __FIVector_1_HSTRING_GetTrustLevel
#define IVector_HSTRING_GetAt __FIVector_1_HSTRING_GetAt
#define IVector_HSTRING_get_Size __FIVector_1_HSTRING_get_Size
#define IVector_HSTRING_GetView __FIVector_1_HSTRING_GetView
#define IVector_HSTRING_IndexOf __FIVector_1_HSTRING_IndexOf
#define IVector_HSTRING_SetAt __FIVector_1_HSTRING_SetAt
#define IVector_HSTRING_InsertAt __FIVector_1_HSTRING_InsertAt
#define IVector_HSTRING_RemoveAt __FIVector_1_HSTRING_RemoveAt
#define IVector_HSTRING_Append __FIVector_1_HSTRING_Append
#define IVector_HSTRING_RemoveAtEnd __FIVector_1_HSTRING_RemoveAtEnd
#define IVector_HSTRING_Clear __FIVector_1_HSTRING_Clear
#define IVector_HSTRING_GetMany __FIVector_1_HSTRING_GetMany
#define IVector_HSTRING_ReplaceAll __FIVector_1_HSTRING_ReplaceAll
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVector_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IVector<IInspectable* > interface
 */
#ifndef ____FIVector_1_IInspectable_INTERFACE_DEFINED__
#define ____FIVector_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIVector_1_IInspectable, 0xb32bdca4, 0x5e52, 0x5b27, 0xbc,0x5d, 0xd6,0x6a,0x1a,0x26,0x8c,0x2a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("b32bdca4-5e52-5b27-bc5d-d66a1a268c2a")
                IVector<IInspectable* > : IVector_impl<IInspectable* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIVector_1_IInspectable, 0xb32bdca4, 0x5e52, 0x5b27, 0xbc,0x5d, 0xd6,0x6a,0x1a,0x26,0x8c,0x2a)
#endif
#else
typedef struct __FIVector_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIVector_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIVector_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIVector_1_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIVector_1_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIVector_1_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIVector_1_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IVector<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *GetAt)(
        __FIVector_1_IInspectable *This,
        UINT32 index,
        IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIVector_1_IInspectable *This,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *GetView)(
        __FIVector_1_IInspectable *This,
        __FIVectorView_1_IInspectable **value);

    HRESULT (STDMETHODCALLTYPE *IndexOf)(
        __FIVector_1_IInspectable *This,
        IInspectable *element,
        UINT32 *index,
        BOOLEAN *value);

    HRESULT (STDMETHODCALLTYPE *SetAt)(
        __FIVector_1_IInspectable *This,
        UINT32 index,
        IInspectable *value);

    HRESULT (STDMETHODCALLTYPE *InsertAt)(
        __FIVector_1_IInspectable *This,
        UINT32 index,
        IInspectable *value);

    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
        __FIVector_1_IInspectable *This,
        UINT32 index);

    HRESULT (STDMETHODCALLTYPE *Append)(
        __FIVector_1_IInspectable *This,
        IInspectable *value);

    HRESULT (STDMETHODCALLTYPE *RemoveAtEnd)(
        __FIVector_1_IInspectable *This);

    HRESULT (STDMETHODCALLTYPE *Clear)(
        __FIVector_1_IInspectable *This);

    HRESULT (STDMETHODCALLTYPE *GetMany)(
        __FIVector_1_IInspectable *This,
        UINT32 start_index,
        UINT32 items_size,
        IInspectable **items,
        UINT32 *value);

    HRESULT (STDMETHODCALLTYPE *ReplaceAll)(
        __FIVector_1_IInspectable *This,
        UINT32 count,
        IInspectable **items);

    END_INTERFACE
} __FIVector_1_IInspectableVtbl;

interface __FIVector_1_IInspectable {
    CONST_VTBL __FIVector_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIVector_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIVector_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIVector_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIVector_1_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIVector_1_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIVector_1_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IVector<IInspectable* > methods ***/
#define __FIVector_1_IInspectable_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value)
#define __FIVector_1_IInspectable_get_Size(This,value) (This)->lpVtbl->get_Size(This,value)
#define __FIVector_1_IInspectable_GetView(This,value) (This)->lpVtbl->GetView(This,value)
#define __FIVector_1_IInspectable_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value)
#define __FIVector_1_IInspectable_SetAt(This,index,value) (This)->lpVtbl->SetAt(This,index,value)
#define __FIVector_1_IInspectable_InsertAt(This,index,value) (This)->lpVtbl->InsertAt(This,index,value)
#define __FIVector_1_IInspectable_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
#define __FIVector_1_IInspectable_Append(This,value) (This)->lpVtbl->Append(This,value)
#define __FIVector_1_IInspectable_RemoveAtEnd(This) (This)->lpVtbl->RemoveAtEnd(This)
#define __FIVector_1_IInspectable_Clear(This) (This)->lpVtbl->Clear(This)
#define __FIVector_1_IInspectable_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value)
#define __FIVector_1_IInspectable_ReplaceAll(This,count,items) (This)->lpVtbl->ReplaceAll(This,count,items)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_QueryInterface(__FIVector_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIVector_1_IInspectable_AddRef(__FIVector_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIVector_1_IInspectable_Release(__FIVector_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetIids(__FIVector_1_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetRuntimeClassName(__FIVector_1_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetTrustLevel(__FIVector_1_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IVector<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetAt(__FIVector_1_IInspectable* This,UINT32 index,IInspectable **value) {
    return This->lpVtbl->GetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_get_Size(__FIVector_1_IInspectable* This,UINT32 *value) {
    return This->lpVtbl->get_Size(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetView(__FIVector_1_IInspectable* This,__FIVectorView_1_IInspectable **value) {
    return This->lpVtbl->GetView(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_IndexOf(__FIVector_1_IInspectable* This,IInspectable *element,UINT32 *index,BOOLEAN *value) {
    return This->lpVtbl->IndexOf(This,element,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_SetAt(__FIVector_1_IInspectable* This,UINT32 index,IInspectable *value) {
    return This->lpVtbl->SetAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_InsertAt(__FIVector_1_IInspectable* This,UINT32 index,IInspectable *value) {
    return This->lpVtbl->InsertAt(This,index,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_RemoveAt(__FIVector_1_IInspectable* This,UINT32 index) {
    return This->lpVtbl->RemoveAt(This,index);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_Append(__FIVector_1_IInspectable* This,IInspectable *value) {
    return This->lpVtbl->Append(This,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_RemoveAtEnd(__FIVector_1_IInspectable* This) {
    return This->lpVtbl->RemoveAtEnd(This);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_Clear(__FIVector_1_IInspectable* This) {
    return This->lpVtbl->Clear(This);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_GetMany(__FIVector_1_IInspectable* This,UINT32 start_index,UINT32 items_size,IInspectable **items,UINT32 *value) {
    return This->lpVtbl->GetMany(This,start_index,items_size,items,value);
}
static __WIDL_INLINE HRESULT __FIVector_1_IInspectable_ReplaceAll(__FIVector_1_IInspectable* This,UINT32 count,IInspectable **items) {
    return This->lpVtbl->ReplaceAll(This,count,items);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IVector_IInspectable IID___FIVector_1_IInspectable
#define IVector_IInspectableVtbl __FIVector_1_IInspectableVtbl
#define IVector_IInspectable __FIVector_1_IInspectable
#define IVector_IInspectable_QueryInterface __FIVector_1_IInspectable_QueryInterface
#define IVector_IInspectable_AddRef __FIVector_1_IInspectable_AddRef
#define IVector_IInspectable_Release __FIVector_1_IInspectable_Release
#define IVector_IInspectable_GetIids __FIVector_1_IInspectable_GetIids
#define IVector_IInspectable_GetRuntimeClassName __FIVector_1_IInspectable_GetRuntimeClassName
#define IVector_IInspectable_GetTrustLevel __FIVector_1_IInspectable_GetTrustLevel
#define IVector_IInspectable_GetAt __FIVector_1_IInspectable_GetAt
#define IVector_IInspectable_get_Size __FIVector_1_IInspectable_get_Size
#define IVector_IInspectable_GetView __FIVector_1_IInspectable_GetView
#define IVector_IInspectable_IndexOf __FIVector_1_IInspectable_IndexOf
#define IVector_IInspectable_SetAt __FIVector_1_IInspectable_SetAt
#define IVector_IInspectable_InsertAt __FIVector_1_IInspectable_InsertAt
#define IVector_IInspectable_RemoveAt __FIVector_1_IInspectable_RemoveAt
#define IVector_IInspectable_Append __FIVector_1_IInspectable_Append
#define IVector_IInspectable_RemoveAtEnd __FIVector_1_IInspectable_RemoveAtEnd
#define IVector_IInspectable_Clear __FIVector_1_IInspectable_Clear
#define IVector_IInspectable_GetMany __FIVector_1_IInspectable_GetMany
#define IVector_IInspectable_ReplaceAll __FIVector_1_IInspectable_ReplaceAll
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIVector_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* > interface
 */
#ifndef ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_INTERFACE_DEFINED__
#define ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIMapView_2_HSTRING___FIVectorView_1_HSTRING, 0x2843d34f, 0xd3e5, 0x5fca, 0x9f,0xdc, 0xb5,0x68,0xdd,0x5c,0x1e,0x64);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                template<>
                MIDL_INTERFACE("2843d34f-d3e5-5fca-9fdc-b568dd5c1e64")
                IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* > : IMapView_impl<HSTRING, ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* >
                {
                };
            }
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING, 0x2843d34f, 0xd3e5, 0x5fca, 0x9f,0xdc, 0xb5,0x68,0xdd,0x5c,0x1e,0x64)
#endif
#else
typedef struct __FIMapView_2_HSTRING___FIVectorView_1_HSTRINGVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        TrustLevel *trustLevel);

    /*** IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Lookup)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        HSTRING key,
        __FIVectorView_1_HSTRING **value);

    HRESULT (STDMETHODCALLTYPE *get_Size)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        unsigned int *size);

    HRESULT (STDMETHODCALLTYPE *HasKey)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        HSTRING key,
        boolean *found);

    HRESULT (STDMETHODCALLTYPE *Split)(
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING *This,
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING **first,
        __FIMapView_2_HSTRING___FIVectorView_1_HSTRING **second);

    END_INTERFACE
} __FIMapView_2_HSTRING___FIVectorView_1_HSTRINGVtbl;

interface __FIMapView_2_HSTRING___FIVectorView_1_HSTRING {
    CONST_VTBL __FIMapView_2_HSTRING___FIVectorView_1_HSTRINGVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* > methods ***/
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Lookup(This,key,value) (This)->lpVtbl->Lookup(This,key,value)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_get_Size(This,size) (This)->lpVtbl->get_Size(This,size)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_HasKey(This,key,found) (This)->lpVtbl->HasKey(This,key,found)
#define __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Split(This,first,second) (This)->lpVtbl->Split(This,first,second)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_QueryInterface(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_AddRef(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Release(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetIids(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetRuntimeClassName(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetTrustLevel(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IMapView<HSTRING,ABI::Windows::Foundation::Collections::IVectorView<HSTRING >* > methods ***/
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Lookup(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,HSTRING key,__FIVectorView_1_HSTRING **value) {
    return This->lpVtbl->Lookup(This,key,value);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_get_Size(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,unsigned int *size) {
    return This->lpVtbl->get_Size(This,size);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_HasKey(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,HSTRING key,boolean *found) {
    return This->lpVtbl->HasKey(This,key,found);
}
static __WIDL_INLINE HRESULT __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Split(__FIMapView_2_HSTRING___FIVectorView_1_HSTRING* This,__FIMapView_2_HSTRING___FIVectorView_1_HSTRING **first,__FIMapView_2_HSTRING___FIVectorView_1_HSTRING **second) {
    return This->lpVtbl->Split(This,first,second);
}
#endif
#ifdef WIDL_using_Windows_Foundation_Collections
#define IID_IMapView_HSTRING_IVectorView_HSTRING IID___FIMapView_2_HSTRING___FIVectorView_1_HSTRING
#define IMapView_HSTRING_IVectorView_HSTRINGVtbl __FIMapView_2_HSTRING___FIVectorView_1_HSTRINGVtbl
#define IMapView_HSTRING_IVectorView_HSTRING __FIMapView_2_HSTRING___FIVectorView_1_HSTRING
#define IMapView_HSTRING_IVectorView_HSTRING_QueryInterface __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_QueryInterface
#define IMapView_HSTRING_IVectorView_HSTRING_AddRef __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_AddRef
#define IMapView_HSTRING_IVectorView_HSTRING_Release __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Release
#define IMapView_HSTRING_IVectorView_HSTRING_GetIids __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetIids
#define IMapView_HSTRING_IVectorView_HSTRING_GetRuntimeClassName __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetRuntimeClassName
#define IMapView_HSTRING_IVectorView_HSTRING_GetTrustLevel __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_GetTrustLevel
#define IMapView_HSTRING_IVectorView_HSTRING_Lookup __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Lookup
#define IMapView_HSTRING_IVectorView_HSTRING_get_Size __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_get_Size
#define IMapView_HSTRING_IVectorView_HSTRING_HasKey __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_HasKey
#define IMapView_HSTRING_IVectorView_HSTRING_Split __FIMapView_2_HSTRING___FIVectorView_1_HSTRING_Split
#endif /* WIDL_using_Windows_Foundation_Collections */
#endif

#endif

#endif  /* ____FIMapView_2_HSTRING___FIVectorView_1_HSTRING_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IEventHandler<IInspectable* > interface
 */
#ifndef ____FIEventHandler_1_IInspectable_INTERFACE_DEFINED__
#define ____FIEventHandler_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIEventHandler_1_IInspectable, 0xc50898f6, 0xc536, 0x5f47, 0x85,0x83, 0x8b,0x2c,0x24,0x38,0xa1,0x3b);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("c50898f6-c536-5f47-8583-8b2c2438a13b")
            IEventHandler<IInspectable* > : IEventHandler_impl<IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIEventHandler_1_IInspectable, 0xc50898f6, 0xc536, 0x5f47, 0x85,0x83, 0x8b,0x2c,0x24,0x38,0xa1,0x3b)
#endif
#else
typedef struct __FIEventHandler_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIEventHandler_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIEventHandler_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIEventHandler_1_IInspectable *This);

    /*** IEventHandler<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIEventHandler_1_IInspectable *This,
        IInspectable *sender,
        IInspectable *args);

    END_INTERFACE
} __FIEventHandler_1_IInspectableVtbl;

interface __FIEventHandler_1_IInspectable {
    CONST_VTBL __FIEventHandler_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIEventHandler_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIEventHandler_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIEventHandler_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IEventHandler<IInspectable* > methods ***/
#define __FIEventHandler_1_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIEventHandler_1_IInspectable_QueryInterface(__FIEventHandler_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIEventHandler_1_IInspectable_AddRef(__FIEventHandler_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIEventHandler_1_IInspectable_Release(__FIEventHandler_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IEventHandler<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIEventHandler_1_IInspectable_Invoke(__FIEventHandler_1_IInspectable* This,IInspectable *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IEventHandler_IInspectable IID___FIEventHandler_1_IInspectable
#define IEventHandler_IInspectableVtbl __FIEventHandler_1_IInspectableVtbl
#define IEventHandler_IInspectable __FIEventHandler_1_IInspectable
#define IEventHandler_IInspectable_QueryInterface __FIEventHandler_1_IInspectable_QueryInterface
#define IEventHandler_IInspectable_AddRef __FIEventHandler_1_IInspectable_AddRef
#define IEventHandler_IInspectable_Release __FIEventHandler_1_IInspectable_Release
#define IEventHandler_IInspectable_Invoke __FIEventHandler_1_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIEventHandler_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperationCompletedHandler<IInspectable* > interface
 */
#ifndef ____FIAsyncOperationCompletedHandler_1_IInspectable_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperationCompletedHandler_1_IInspectable, 0x3f08262e, 0xa2e1, 0x5134, 0x92,0x97, 0xe9,0x21,0x1f,0x48,0x1a,0x2d);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("3f08262e-a2e1-5134-9297-e9211f481a2d")
            IAsyncOperationCompletedHandler<IInspectable* > : IAsyncOperationCompletedHandler_impl<IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperationCompletedHandler_1_IInspectable, 0x3f08262e, 0xa2e1, 0x5134, 0x92,0x97, 0xe9,0x21,0x1f,0x48,0x1a,0x2d)
#endif
#else
typedef struct __FIAsyncOperationCompletedHandler_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperationCompletedHandler_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperationCompletedHandler_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperationCompletedHandler_1_IInspectable *This);

    /*** IAsyncOperationCompletedHandler<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIAsyncOperationCompletedHandler_1_IInspectable *This,
        __FIAsyncOperation_1_IInspectable *info,
        AsyncStatus status);

    END_INTERFACE
} __FIAsyncOperationCompletedHandler_1_IInspectableVtbl;

interface __FIAsyncOperationCompletedHandler_1_IInspectable {
    CONST_VTBL __FIAsyncOperationCompletedHandler_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperationCompletedHandler_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperationCompletedHandler_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperationCompletedHandler_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncOperationCompletedHandler<IInspectable* > methods ***/
#define __FIAsyncOperationCompletedHandler_1_IInspectable_Invoke(This,info,status) (This)->lpVtbl->Invoke(This,info,status)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_IInspectable_QueryInterface(__FIAsyncOperationCompletedHandler_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_IInspectable_AddRef(__FIAsyncOperationCompletedHandler_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_IInspectable_Release(__FIAsyncOperationCompletedHandler_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncOperationCompletedHandler<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_IInspectable_Invoke(__FIAsyncOperationCompletedHandler_1_IInspectable* This,__FIAsyncOperation_1_IInspectable *info,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,info,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperationCompletedHandler_IInspectable IID___FIAsyncOperationCompletedHandler_1_IInspectable
#define IAsyncOperationCompletedHandler_IInspectableVtbl __FIAsyncOperationCompletedHandler_1_IInspectableVtbl
#define IAsyncOperationCompletedHandler_IInspectable __FIAsyncOperationCompletedHandler_1_IInspectable
#define IAsyncOperationCompletedHandler_IInspectable_QueryInterface __FIAsyncOperationCompletedHandler_1_IInspectable_QueryInterface
#define IAsyncOperationCompletedHandler_IInspectable_AddRef __FIAsyncOperationCompletedHandler_1_IInspectable_AddRef
#define IAsyncOperationCompletedHandler_IInspectable_Release __FIAsyncOperationCompletedHandler_1_IInspectable_Release
#define IAsyncOperationCompletedHandler_IInspectable_Invoke __FIAsyncOperationCompletedHandler_1_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperationCompletedHandler_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperationCompletedHandler<boolean > interface
 */
#ifndef ____FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperationCompletedHandler_1_boolean, 0xc1d3d1a2, 0xae17, 0x5a5f, 0xb5,0xa2, 0xbd,0xcc,0x88,0x44,0x88,0x9a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("c1d3d1a2-ae17-5a5f-b5a2-bdcc8844889a")
            IAsyncOperationCompletedHandler<boolean > : IAsyncOperationCompletedHandler_impl<boolean >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperationCompletedHandler_1_boolean, 0xc1d3d1a2, 0xae17, 0x5a5f, 0xb5,0xa2, 0xbd,0xcc,0x88,0x44,0x88,0x9a)
#endif
#else
typedef struct __FIAsyncOperationCompletedHandler_1_booleanVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperationCompletedHandler_1_boolean *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperationCompletedHandler_1_boolean *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperationCompletedHandler_1_boolean *This);

    /*** IAsyncOperationCompletedHandler<boolean > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIAsyncOperationCompletedHandler_1_boolean *This,
        __FIAsyncOperation_1_boolean *info,
        AsyncStatus status);

    END_INTERFACE
} __FIAsyncOperationCompletedHandler_1_booleanVtbl;

interface __FIAsyncOperationCompletedHandler_1_boolean {
    CONST_VTBL __FIAsyncOperationCompletedHandler_1_booleanVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperationCompletedHandler_1_boolean_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperationCompletedHandler_1_boolean_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperationCompletedHandler_1_boolean_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncOperationCompletedHandler<boolean > methods ***/
#define __FIAsyncOperationCompletedHandler_1_boolean_Invoke(This,info,status) (This)->lpVtbl->Invoke(This,info,status)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_boolean_QueryInterface(__FIAsyncOperationCompletedHandler_1_boolean* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_boolean_AddRef(__FIAsyncOperationCompletedHandler_1_boolean* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_boolean_Release(__FIAsyncOperationCompletedHandler_1_boolean* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncOperationCompletedHandler<boolean > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_boolean_Invoke(__FIAsyncOperationCompletedHandler_1_boolean* This,__FIAsyncOperation_1_boolean *info,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,info,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperationCompletedHandler_boolean IID___FIAsyncOperationCompletedHandler_1_boolean
#define IAsyncOperationCompletedHandler_booleanVtbl __FIAsyncOperationCompletedHandler_1_booleanVtbl
#define IAsyncOperationCompletedHandler_boolean __FIAsyncOperationCompletedHandler_1_boolean
#define IAsyncOperationCompletedHandler_boolean_QueryInterface __FIAsyncOperationCompletedHandler_1_boolean_QueryInterface
#define IAsyncOperationCompletedHandler_boolean_AddRef __FIAsyncOperationCompletedHandler_1_boolean_AddRef
#define IAsyncOperationCompletedHandler_boolean_Release __FIAsyncOperationCompletedHandler_1_boolean_Release
#define IAsyncOperationCompletedHandler_boolean_Invoke __FIAsyncOperationCompletedHandler_1_boolean_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperationCompletedHandler<UINT32 > interface
 */
#ifndef ____FIAsyncOperationCompletedHandler_1_UINT32_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_UINT32_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperationCompletedHandler_1_UINT32, 0x9343b6e7, 0xe3d2, 0x5e4a, 0xab,0x2d, 0x2b,0xce,0x49,0x19,0xa6,0xa4);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("9343b6e7-e3d2-5e4a-ab2d-2bce4919a6a4")
            IAsyncOperationCompletedHandler<UINT32 > : IAsyncOperationCompletedHandler_impl<UINT32 >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperationCompletedHandler_1_UINT32, 0x9343b6e7, 0xe3d2, 0x5e4a, 0xab,0x2d, 0x2b,0xce,0x49,0x19,0xa6,0xa4)
#endif
#else
typedef struct __FIAsyncOperationCompletedHandler_1_UINT32Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperationCompletedHandler_1_UINT32 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperationCompletedHandler_1_UINT32 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperationCompletedHandler_1_UINT32 *This);

    /*** IAsyncOperationCompletedHandler<UINT32 > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIAsyncOperationCompletedHandler_1_UINT32 *This,
        __FIAsyncOperation_1_UINT32 *info,
        AsyncStatus status);

    END_INTERFACE
} __FIAsyncOperationCompletedHandler_1_UINT32Vtbl;

interface __FIAsyncOperationCompletedHandler_1_UINT32 {
    CONST_VTBL __FIAsyncOperationCompletedHandler_1_UINT32Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperationCompletedHandler_1_UINT32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperationCompletedHandler_1_UINT32_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperationCompletedHandler_1_UINT32_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncOperationCompletedHandler<UINT32 > methods ***/
#define __FIAsyncOperationCompletedHandler_1_UINT32_Invoke(This,info,status) (This)->lpVtbl->Invoke(This,info,status)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_UINT32_QueryInterface(__FIAsyncOperationCompletedHandler_1_UINT32* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_UINT32_AddRef(__FIAsyncOperationCompletedHandler_1_UINT32* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperationCompletedHandler_1_UINT32_Release(__FIAsyncOperationCompletedHandler_1_UINT32* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncOperationCompletedHandler<UINT32 > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperationCompletedHandler_1_UINT32_Invoke(__FIAsyncOperationCompletedHandler_1_UINT32* This,__FIAsyncOperation_1_UINT32 *info,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,info,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperationCompletedHandler_UINT32 IID___FIAsyncOperationCompletedHandler_1_UINT32
#define IAsyncOperationCompletedHandler_UINT32Vtbl __FIAsyncOperationCompletedHandler_1_UINT32Vtbl
#define IAsyncOperationCompletedHandler_UINT32 __FIAsyncOperationCompletedHandler_1_UINT32
#define IAsyncOperationCompletedHandler_UINT32_QueryInterface __FIAsyncOperationCompletedHandler_1_UINT32_QueryInterface
#define IAsyncOperationCompletedHandler_UINT32_AddRef __FIAsyncOperationCompletedHandler_1_UINT32_AddRef
#define IAsyncOperationCompletedHandler_UINT32_Release __FIAsyncOperationCompletedHandler_1_UINT32_Release
#define IAsyncOperationCompletedHandler_UINT32_Invoke __FIAsyncOperationCompletedHandler_1_UINT32_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperationCompletedHandler_1_UINT32_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperation<IInspectable* > interface
 */
#ifndef ____FIAsyncOperation_1_IInspectable_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperation_1_IInspectable, 0xabf53c57, 0xee50, 0x5342, 0xb5,0x2a, 0x26,0xe3,0xb8,0xcc,0x02,0x4f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("abf53c57-ee50-5342-b52a-26e3b8cc024f")
            IAsyncOperation<IInspectable* > : IAsyncOperation_impl<IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperation_1_IInspectable, 0xabf53c57, 0xee50, 0x5342, 0xb5,0x2a, 0x26,0xe3,0xb8,0xcc,0x02,0x4f)
#endif
#else
typedef struct __FIAsyncOperation_1_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperation_1_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperation_1_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperation_1_IInspectable *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIAsyncOperation_1_IInspectable *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIAsyncOperation_1_IInspectable *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIAsyncOperation_1_IInspectable *This,
        TrustLevel *trustLevel);

    /*** IAsyncOperation<IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __FIAsyncOperation_1_IInspectable *This,
        __FIAsyncOperationCompletedHandler_1_IInspectable *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __FIAsyncOperation_1_IInspectable *This,
        __FIAsyncOperationCompletedHandler_1_IInspectable **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __FIAsyncOperation_1_IInspectable *This,
        IInspectable **results);

    END_INTERFACE
} __FIAsyncOperation_1_IInspectableVtbl;

interface __FIAsyncOperation_1_IInspectable {
    CONST_VTBL __FIAsyncOperation_1_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperation_1_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperation_1_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperation_1_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIAsyncOperation_1_IInspectable_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIAsyncOperation_1_IInspectable_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIAsyncOperation_1_IInspectable_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncOperation<IInspectable* > methods ***/
#define __FIAsyncOperation_1_IInspectable_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __FIAsyncOperation_1_IInspectable_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __FIAsyncOperation_1_IInspectable_GetResults(This,results) (This)->lpVtbl->GetResults(This,results)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_QueryInterface(__FIAsyncOperation_1_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_IInspectable_AddRef(__FIAsyncOperation_1_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_IInspectable_Release(__FIAsyncOperation_1_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_GetIids(__FIAsyncOperation_1_IInspectable* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_GetRuntimeClassName(__FIAsyncOperation_1_IInspectable* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_GetTrustLevel(__FIAsyncOperation_1_IInspectable* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncOperation<IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_put_Completed(__FIAsyncOperation_1_IInspectable* This,__FIAsyncOperationCompletedHandler_1_IInspectable *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_get_Completed(__FIAsyncOperation_1_IInspectable* This,__FIAsyncOperationCompletedHandler_1_IInspectable **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_IInspectable_GetResults(__FIAsyncOperation_1_IInspectable* This,IInspectable **results) {
    return This->lpVtbl->GetResults(This,results);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperation_IInspectable IID___FIAsyncOperation_1_IInspectable
#define IAsyncOperation_IInspectableVtbl __FIAsyncOperation_1_IInspectableVtbl
#define IAsyncOperation_IInspectable __FIAsyncOperation_1_IInspectable
#define IAsyncOperation_IInspectable_QueryInterface __FIAsyncOperation_1_IInspectable_QueryInterface
#define IAsyncOperation_IInspectable_AddRef __FIAsyncOperation_1_IInspectable_AddRef
#define IAsyncOperation_IInspectable_Release __FIAsyncOperation_1_IInspectable_Release
#define IAsyncOperation_IInspectable_GetIids __FIAsyncOperation_1_IInspectable_GetIids
#define IAsyncOperation_IInspectable_GetRuntimeClassName __FIAsyncOperation_1_IInspectable_GetRuntimeClassName
#define IAsyncOperation_IInspectable_GetTrustLevel __FIAsyncOperation_1_IInspectable_GetTrustLevel
#define IAsyncOperation_IInspectable_put_Completed __FIAsyncOperation_1_IInspectable_put_Completed
#define IAsyncOperation_IInspectable_get_Completed __FIAsyncOperation_1_IInspectable_get_Completed
#define IAsyncOperation_IInspectable_GetResults __FIAsyncOperation_1_IInspectable_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperation_1_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperation<boolean > interface
 */
#ifndef ____FIAsyncOperation_1_boolean_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_boolean_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperation_1_boolean, 0xcdb5efb3, 0x5788, 0x509d, 0x9b,0xe1, 0x71,0xcc,0xb8,0xa3,0x36,0x2a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("cdb5efb3-5788-509d-9be1-71ccb8a3362a")
            IAsyncOperation<boolean > : IAsyncOperation_impl<boolean >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperation_1_boolean, 0xcdb5efb3, 0x5788, 0x509d, 0x9b,0xe1, 0x71,0xcc,0xb8,0xa3,0x36,0x2a)
#endif
#else
typedef struct __FIAsyncOperation_1_booleanVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperation_1_boolean *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperation_1_boolean *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperation_1_boolean *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIAsyncOperation_1_boolean *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIAsyncOperation_1_boolean *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIAsyncOperation_1_boolean *This,
        TrustLevel *trustLevel);

    /*** IAsyncOperation<boolean > methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __FIAsyncOperation_1_boolean *This,
        __FIAsyncOperationCompletedHandler_1_boolean *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __FIAsyncOperation_1_boolean *This,
        __FIAsyncOperationCompletedHandler_1_boolean **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __FIAsyncOperation_1_boolean *This,
        boolean *results);

    END_INTERFACE
} __FIAsyncOperation_1_booleanVtbl;

interface __FIAsyncOperation_1_boolean {
    CONST_VTBL __FIAsyncOperation_1_booleanVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperation_1_boolean_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperation_1_boolean_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperation_1_boolean_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIAsyncOperation_1_boolean_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIAsyncOperation_1_boolean_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIAsyncOperation_1_boolean_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncOperation<boolean > methods ***/
#define __FIAsyncOperation_1_boolean_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __FIAsyncOperation_1_boolean_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __FIAsyncOperation_1_boolean_GetResults(This,results) (This)->lpVtbl->GetResults(This,results)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_QueryInterface(__FIAsyncOperation_1_boolean* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_boolean_AddRef(__FIAsyncOperation_1_boolean* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_boolean_Release(__FIAsyncOperation_1_boolean* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_GetIids(__FIAsyncOperation_1_boolean* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_GetRuntimeClassName(__FIAsyncOperation_1_boolean* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_GetTrustLevel(__FIAsyncOperation_1_boolean* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncOperation<boolean > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_put_Completed(__FIAsyncOperation_1_boolean* This,__FIAsyncOperationCompletedHandler_1_boolean *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_get_Completed(__FIAsyncOperation_1_boolean* This,__FIAsyncOperationCompletedHandler_1_boolean **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_boolean_GetResults(__FIAsyncOperation_1_boolean* This,boolean *results) {
    return This->lpVtbl->GetResults(This,results);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperation_boolean IID___FIAsyncOperation_1_boolean
#define IAsyncOperation_booleanVtbl __FIAsyncOperation_1_booleanVtbl
#define IAsyncOperation_boolean __FIAsyncOperation_1_boolean
#define IAsyncOperation_boolean_QueryInterface __FIAsyncOperation_1_boolean_QueryInterface
#define IAsyncOperation_boolean_AddRef __FIAsyncOperation_1_boolean_AddRef
#define IAsyncOperation_boolean_Release __FIAsyncOperation_1_boolean_Release
#define IAsyncOperation_boolean_GetIids __FIAsyncOperation_1_boolean_GetIids
#define IAsyncOperation_boolean_GetRuntimeClassName __FIAsyncOperation_1_boolean_GetRuntimeClassName
#define IAsyncOperation_boolean_GetTrustLevel __FIAsyncOperation_1_boolean_GetTrustLevel
#define IAsyncOperation_boolean_put_Completed __FIAsyncOperation_1_boolean_put_Completed
#define IAsyncOperation_boolean_get_Completed __FIAsyncOperation_1_boolean_get_Completed
#define IAsyncOperation_boolean_GetResults __FIAsyncOperation_1_boolean_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperation_1_boolean_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperation<UINT32 > interface
 */
#ifndef ____FIAsyncOperation_1_UINT32_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_UINT32_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperation_1_UINT32, 0xef60385f, 0xbe78, 0x584b, 0xaa,0xef, 0x78,0x29,0xad,0xa2,0xb0,0xde);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("ef60385f-be78-584b-aaef-7829ada2b0de")
            IAsyncOperation<UINT32 > : IAsyncOperation_impl<UINT32 >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperation_1_UINT32, 0xef60385f, 0xbe78, 0x584b, 0xaa,0xef, 0x78,0x29,0xad,0xa2,0xb0,0xde)
#endif
#else
typedef struct __FIAsyncOperation_1_UINT32Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperation_1_UINT32 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperation_1_UINT32 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperation_1_UINT32 *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIAsyncOperation_1_UINT32 *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIAsyncOperation_1_UINT32 *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIAsyncOperation_1_UINT32 *This,
        TrustLevel *trustLevel);

    /*** IAsyncOperation<UINT32 > methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __FIAsyncOperation_1_UINT32 *This,
        __FIAsyncOperationCompletedHandler_1_UINT32 *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __FIAsyncOperation_1_UINT32 *This,
        __FIAsyncOperationCompletedHandler_1_UINT32 **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __FIAsyncOperation_1_UINT32 *This,
        UINT32 *results);

    END_INTERFACE
} __FIAsyncOperation_1_UINT32Vtbl;

interface __FIAsyncOperation_1_UINT32 {
    CONST_VTBL __FIAsyncOperation_1_UINT32Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperation_1_UINT32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperation_1_UINT32_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperation_1_UINT32_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIAsyncOperation_1_UINT32_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIAsyncOperation_1_UINT32_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIAsyncOperation_1_UINT32_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncOperation<UINT32 > methods ***/
#define __FIAsyncOperation_1_UINT32_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __FIAsyncOperation_1_UINT32_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __FIAsyncOperation_1_UINT32_GetResults(This,results) (This)->lpVtbl->GetResults(This,results)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_QueryInterface(__FIAsyncOperation_1_UINT32* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_UINT32_AddRef(__FIAsyncOperation_1_UINT32* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIAsyncOperation_1_UINT32_Release(__FIAsyncOperation_1_UINT32* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_GetIids(__FIAsyncOperation_1_UINT32* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_GetRuntimeClassName(__FIAsyncOperation_1_UINT32* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_GetTrustLevel(__FIAsyncOperation_1_UINT32* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncOperation<UINT32 > methods ***/
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_put_Completed(__FIAsyncOperation_1_UINT32* This,__FIAsyncOperationCompletedHandler_1_UINT32 *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_get_Completed(__FIAsyncOperation_1_UINT32* This,__FIAsyncOperationCompletedHandler_1_UINT32 **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static __WIDL_INLINE HRESULT __FIAsyncOperation_1_UINT32_GetResults(__FIAsyncOperation_1_UINT32* This,UINT32 *results) {
    return This->lpVtbl->GetResults(This,results);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperation_UINT32 IID___FIAsyncOperation_1_UINT32
#define IAsyncOperation_UINT32Vtbl __FIAsyncOperation_1_UINT32Vtbl
#define IAsyncOperation_UINT32 __FIAsyncOperation_1_UINT32
#define IAsyncOperation_UINT32_QueryInterface __FIAsyncOperation_1_UINT32_QueryInterface
#define IAsyncOperation_UINT32_AddRef __FIAsyncOperation_1_UINT32_AddRef
#define IAsyncOperation_UINT32_Release __FIAsyncOperation_1_UINT32_Release
#define IAsyncOperation_UINT32_GetIids __FIAsyncOperation_1_UINT32_GetIids
#define IAsyncOperation_UINT32_GetRuntimeClassName __FIAsyncOperation_1_UINT32_GetRuntimeClassName
#define IAsyncOperation_UINT32_GetTrustLevel __FIAsyncOperation_1_UINT32_GetTrustLevel
#define IAsyncOperation_UINT32_put_Completed __FIAsyncOperation_1_UINT32_put_Completed
#define IAsyncOperation_UINT32_get_Completed __FIAsyncOperation_1_UINT32_get_Completed
#define IAsyncOperation_UINT32_GetResults __FIAsyncOperation_1_UINT32_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperation_1_UINT32_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IReference<BYTE > interface
 */
#ifndef ____FIReference_1_BYTE_INTERFACE_DEFINED__
#define ____FIReference_1_BYTE_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIReference_1_BYTE, 0xe5198cc8, 0x2873, 0x55f5, 0xb0,0xa1, 0x84,0xff,0x9e,0x4a,0xad,0x62);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("e5198cc8-2873-55f5-b0a1-84ff9e4aad62")
            IReference<BYTE > : IReference_impl<BYTE >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIReference_1_BYTE, 0xe5198cc8, 0x2873, 0x55f5, 0xb0,0xa1, 0x84,0xff,0x9e,0x4a,0xad,0x62)
#endif
#else
typedef struct __FIReference_1_BYTEVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIReference_1_BYTE *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIReference_1_BYTE *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIReference_1_BYTE *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIReference_1_BYTE *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIReference_1_BYTE *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIReference_1_BYTE *This,
        TrustLevel *trustLevel);

    /*** IReference<BYTE > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __FIReference_1_BYTE *This,
        BYTE *value);

    END_INTERFACE
} __FIReference_1_BYTEVtbl;

interface __FIReference_1_BYTE {
    CONST_VTBL __FIReference_1_BYTEVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIReference_1_BYTE_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIReference_1_BYTE_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIReference_1_BYTE_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIReference_1_BYTE_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIReference_1_BYTE_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIReference_1_BYTE_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IReference<BYTE > methods ***/
#define __FIReference_1_BYTE_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_BYTE_QueryInterface(__FIReference_1_BYTE* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIReference_1_BYTE_AddRef(__FIReference_1_BYTE* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIReference_1_BYTE_Release(__FIReference_1_BYTE* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_BYTE_GetIids(__FIReference_1_BYTE* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIReference_1_BYTE_GetRuntimeClassName(__FIReference_1_BYTE* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIReference_1_BYTE_GetTrustLevel(__FIReference_1_BYTE* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IReference<BYTE > methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_BYTE_get_Value(__FIReference_1_BYTE* This,BYTE *value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IReference_BYTE IID___FIReference_1_BYTE
#define IReference_BYTEVtbl __FIReference_1_BYTEVtbl
#define IReference_BYTE __FIReference_1_BYTE
#define IReference_BYTE_QueryInterface __FIReference_1_BYTE_QueryInterface
#define IReference_BYTE_AddRef __FIReference_1_BYTE_AddRef
#define IReference_BYTE_Release __FIReference_1_BYTE_Release
#define IReference_BYTE_GetIids __FIReference_1_BYTE_GetIids
#define IReference_BYTE_GetRuntimeClassName __FIReference_1_BYTE_GetRuntimeClassName
#define IReference_BYTE_GetTrustLevel __FIReference_1_BYTE_GetTrustLevel
#define IReference_BYTE_get_Value __FIReference_1_BYTE_get_Value
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIReference_1_BYTE_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IReference<INT32 > interface
 */
#ifndef ____FIReference_1_INT32_INTERFACE_DEFINED__
#define ____FIReference_1_INT32_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIReference_1_INT32, 0x548cefbd, 0xbc8a, 0x5fa0, 0x8d,0xf2, 0x95,0x74,0x40,0xfc,0x8b,0xf4);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("548cefbd-bc8a-5fa0-8df2-957440fc8bf4")
            IReference<INT32 > : IReference_impl<INT32 >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIReference_1_INT32, 0x548cefbd, 0xbc8a, 0x5fa0, 0x8d,0xf2, 0x95,0x74,0x40,0xfc,0x8b,0xf4)
#endif
#else
typedef struct __FIReference_1_INT32Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIReference_1_INT32 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIReference_1_INT32 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIReference_1_INT32 *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIReference_1_INT32 *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIReference_1_INT32 *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIReference_1_INT32 *This,
        TrustLevel *trustLevel);

    /*** IReference<INT32 > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __FIReference_1_INT32 *This,
        INT32 *value);

    END_INTERFACE
} __FIReference_1_INT32Vtbl;

interface __FIReference_1_INT32 {
    CONST_VTBL __FIReference_1_INT32Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIReference_1_INT32_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIReference_1_INT32_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIReference_1_INT32_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIReference_1_INT32_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIReference_1_INT32_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIReference_1_INT32_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IReference<INT32 > methods ***/
#define __FIReference_1_INT32_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_INT32_QueryInterface(__FIReference_1_INT32* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIReference_1_INT32_AddRef(__FIReference_1_INT32* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIReference_1_INT32_Release(__FIReference_1_INT32* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_INT32_GetIids(__FIReference_1_INT32* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIReference_1_INT32_GetRuntimeClassName(__FIReference_1_INT32* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIReference_1_INT32_GetTrustLevel(__FIReference_1_INT32* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IReference<INT32 > methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_INT32_get_Value(__FIReference_1_INT32* This,INT32 *value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IReference_INT32 IID___FIReference_1_INT32
#define IReference_INT32Vtbl __FIReference_1_INT32Vtbl
#define IReference_INT32 __FIReference_1_INT32
#define IReference_INT32_QueryInterface __FIReference_1_INT32_QueryInterface
#define IReference_INT32_AddRef __FIReference_1_INT32_AddRef
#define IReference_INT32_Release __FIReference_1_INT32_Release
#define IReference_INT32_GetIids __FIReference_1_INT32_GetIids
#define IReference_INT32_GetRuntimeClassName __FIReference_1_INT32_GetRuntimeClassName
#define IReference_INT32_GetTrustLevel __FIReference_1_INT32_GetTrustLevel
#define IReference_INT32_get_Value __FIReference_1_INT32_get_Value
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIReference_1_INT32_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IReference<DOUBLE > interface
 */
#ifndef ____FIReference_1_DOUBLE_INTERFACE_DEFINED__
#define ____FIReference_1_DOUBLE_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIReference_1_DOUBLE, 0x2f2d6c29, 0x5473, 0x5f3e, 0x92,0xe7, 0x96,0x57,0x2b,0xb9,0x90,0xe2);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("2f2d6c29-5473-5f3e-92e7-96572bb990e2")
            IReference<DOUBLE > : IReference_impl<DOUBLE >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIReference_1_DOUBLE, 0x2f2d6c29, 0x5473, 0x5f3e, 0x92,0xe7, 0x96,0x57,0x2b,0xb9,0x90,0xe2)
#endif
#else
typedef struct __FIReference_1_DOUBLEVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIReference_1_DOUBLE *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIReference_1_DOUBLE *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIReference_1_DOUBLE *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIReference_1_DOUBLE *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIReference_1_DOUBLE *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIReference_1_DOUBLE *This,
        TrustLevel *trustLevel);

    /*** IReference<DOUBLE > methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Value)(
        __FIReference_1_DOUBLE *This,
        DOUBLE *value);

    END_INTERFACE
} __FIReference_1_DOUBLEVtbl;

interface __FIReference_1_DOUBLE {
    CONST_VTBL __FIReference_1_DOUBLEVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIReference_1_DOUBLE_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIReference_1_DOUBLE_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIReference_1_DOUBLE_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIReference_1_DOUBLE_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIReference_1_DOUBLE_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIReference_1_DOUBLE_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IReference<DOUBLE > methods ***/
#define __FIReference_1_DOUBLE_get_Value(This,value) (This)->lpVtbl->get_Value(This,value)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_DOUBLE_QueryInterface(__FIReference_1_DOUBLE* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FIReference_1_DOUBLE_AddRef(__FIReference_1_DOUBLE* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FIReference_1_DOUBLE_Release(__FIReference_1_DOUBLE* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_DOUBLE_GetIids(__FIReference_1_DOUBLE* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static __WIDL_INLINE HRESULT __FIReference_1_DOUBLE_GetRuntimeClassName(__FIReference_1_DOUBLE* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static __WIDL_INLINE HRESULT __FIReference_1_DOUBLE_GetTrustLevel(__FIReference_1_DOUBLE* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IReference<DOUBLE > methods ***/
static __WIDL_INLINE HRESULT __FIReference_1_DOUBLE_get_Value(__FIReference_1_DOUBLE* This,DOUBLE *value) {
    return This->lpVtbl->get_Value(This,value);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IReference_DOUBLE IID___FIReference_1_DOUBLE
#define IReference_DOUBLEVtbl __FIReference_1_DOUBLEVtbl
#define IReference_DOUBLE __FIReference_1_DOUBLE
#define IReference_DOUBLE_QueryInterface __FIReference_1_DOUBLE_QueryInterface
#define IReference_DOUBLE_AddRef __FIReference_1_DOUBLE_AddRef
#define IReference_DOUBLE_Release __FIReference_1_DOUBLE_Release
#define IReference_DOUBLE_GetIids __FIReference_1_DOUBLE_GetIids
#define IReference_DOUBLE_GetRuntimeClassName __FIReference_1_DOUBLE_GetRuntimeClassName
#define IReference_DOUBLE_GetTrustLevel __FIReference_1_DOUBLE_GetTrustLevel
#define IReference_DOUBLE_get_Value __FIReference_1_DOUBLE_get_Value
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIReference_1_DOUBLE_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<IInspectable*,IInspectable* > interface
 */
#ifndef ____FITypedEventHandler_2_IInspectable_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_IInspectable_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_IInspectable_IInspectable, 0xc7e65ce2, 0xfad5, 0x5e3b, 0x9c,0x58, 0x18,0x6c,0xa8,0xc1,0xdd,0x57);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("c7e65ce2-fad5-5e3b-9c58-186ca8c1dd57")
            ITypedEventHandler<IInspectable*,IInspectable* > : ITypedEventHandler_impl<IInspectable*, IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_IInspectable_IInspectable, 0xc7e65ce2, 0xfad5, 0x5e3b, 0x9c,0x58, 0x18,0x6c,0xa8,0xc1,0xdd,0x57)
#endif
#else
typedef struct __FITypedEventHandler_2_IInspectable_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_IInspectable_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_IInspectable_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_IInspectable_IInspectable *This);

    /*** ITypedEventHandler<IInspectable*,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_IInspectable_IInspectable *This,
        IInspectable *sender,
        IInspectable *args);

    END_INTERFACE
} __FITypedEventHandler_2_IInspectable_IInspectableVtbl;

interface __FITypedEventHandler_2_IInspectable_IInspectable {
    CONST_VTBL __FITypedEventHandler_2_IInspectable_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_IInspectable_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_IInspectable_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_IInspectable_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<IInspectable*,IInspectable* > methods ***/
#define __FITypedEventHandler_2_IInspectable_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FITypedEventHandler_2_IInspectable_IInspectable_QueryInterface(__FITypedEventHandler_2_IInspectable_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FITypedEventHandler_2_IInspectable_IInspectable_AddRef(__FITypedEventHandler_2_IInspectable_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FITypedEventHandler_2_IInspectable_IInspectable_Release(__FITypedEventHandler_2_IInspectable_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<IInspectable*,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FITypedEventHandler_2_IInspectable_IInspectable_Invoke(__FITypedEventHandler_2_IInspectable_IInspectable* This,IInspectable *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_IInspectable_IInspectable IID___FITypedEventHandler_2_IInspectable_IInspectable
#define ITypedEventHandler_IInspectable_IInspectableVtbl __FITypedEventHandler_2_IInspectable_IInspectableVtbl
#define ITypedEventHandler_IInspectable_IInspectable __FITypedEventHandler_2_IInspectable_IInspectable
#define ITypedEventHandler_IInspectable_IInspectable_QueryInterface __FITypedEventHandler_2_IInspectable_IInspectable_QueryInterface
#define ITypedEventHandler_IInspectable_IInspectable_AddRef __FITypedEventHandler_2_IInspectable_IInspectable_AddRef
#define ITypedEventHandler_IInspectable_IInspectable_Release __FITypedEventHandler_2_IInspectable_IInspectable_Release
#define ITypedEventHandler_IInspectable_IInspectable_Invoke __FITypedEventHandler_2_IInspectable_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_IInspectable_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable, 0xf4637d4a, 0x0760, 0x5431, 0xbf,0xc0, 0x24,0xeb,0x1d,0x4f,0x6c,0x4f);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("f4637d4a-0760-5431-bfc0-24eb1d4f6c4f")
            ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > : ITypedEventHandler_impl<ABI::Windows::Foundation::IMemoryBufferReference*, IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable, 0xf4637d4a, 0x0760, 0x5431, 0xbf,0xc0, 0x24,0xeb,0x1d,0x4f,0x6c,0x4f)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *This);

    /*** ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable *This,
        __x_ABI_CWindows_CFoundation_CIMemoryBufferReference *sender,
        IInspectable *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable {
    CONST_VTBL __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > methods ***/
#define __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static __WIDL_INLINE HRESULT __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_QueryInterface(__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static __WIDL_INLINE ULONG __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_AddRef(__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static __WIDL_INLINE ULONG __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Release(__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::Foundation::IMemoryBufferReference*,IInspectable* > methods ***/
static __WIDL_INLINE HRESULT __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Invoke(__FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable* This,__x_ABI_CWindows_CFoundation_CIMemoryBufferReference *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_IMemoryBufferReference_IInspectable IID___FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable
#define ITypedEventHandler_IMemoryBufferReference_IInspectableVtbl __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectableVtbl
#define ITypedEventHandler_IMemoryBufferReference_IInspectable __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable
#define ITypedEventHandler_IMemoryBufferReference_IInspectable_QueryInterface __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_QueryInterface
#define ITypedEventHandler_IMemoryBufferReference_IInspectable_AddRef __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_AddRef
#define ITypedEventHandler_IMemoryBufferReference_IInspectable_Release __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Release
#define ITypedEventHandler_IMemoryBufferReference_IInspectable_Invoke __FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CFoundation__CIMemoryBufferReference_IInspectable_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */

ULONG           __RPC_USER HSTRING_UserSize     (ULONG *, ULONG, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserMarshal  (ULONG *, unsigned char *, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *);
void            __RPC_USER HSTRING_UserFree     (ULONG *, HSTRING *);

/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __windows_foundation_h__ */
