public IAsyncOperation <ISkill> CreateSkillAsync(ISkillExecutionDevice executionDevice)
        {
            return(AsyncInfo.Run(async(token) =>
            {
                // Create a skill instance with the executionDevice supplied
                var skillInstance = await FaceSentimentAnalyzerSkill.CreateAsync(this, executionDevice);

                return skillInstance as ISkill;
            }));
        }
        // ISkill Factory method
        internal static IAsyncOperation <FaceSentimentAnalyzerSkill> CreateAsync(
            ISkillDescriptor descriptor,
            ISkillExecutionDevice device)
        {
            return(AsyncInfo.Run(async(token) =>
            {
                // Create instance
                var skillInstance = new FaceSentimentAnalyzerSkill(descriptor, device);

                // Instantiate the FaceDetector
                skillInstance.m_faceDetector = await FaceDetector.CreateAsync();

                // Load ONNX model and instantiate LearningModel
                var modelFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///FaceSentimentAnalyzer/emotion_ferplus.onnx"));
                var winmlModel = LearningModel.LoadFromFilePath(modelFile.Path);

                // Create LearningModelSession
                skillInstance.m_winmlSession = new LearningModelSession(winmlModel, GetWinMLDevice(device));

                return skillInstance;
            }));
        }