gitextract_dp4i3952/ ├── .editorconfig ├── .gitattributes ├── .github/ │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE/ │ │ ├── bot-framework-bug.md │ │ └── bot-framework-feature-request.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── issue_template.md ├── .gitignore ├── CODE_OF_CONDUCT.md ├── Common/ │ ├── Telemetry/ │ │ └── README.md │ ├── Transcripts/ │ │ ├── CoreExtensionsTests/ │ │ │ ├── ConversationStateTest.chat │ │ │ ├── CustomStateTest.chat │ │ │ └── UserStateTest.chat │ │ ├── CoreTests/ │ │ │ └── BotAdapted_Bracketing.chat │ │ ├── DialogsTests/ │ │ │ ├── AttachmentPrompt.chat │ │ │ ├── ChoicePrompt.chat │ │ │ ├── ConfirmPrompt.chat │ │ │ ├── ContentAttachment.json │ │ │ ├── DateTimePrompt.chat │ │ │ ├── NumberPrompt.chat │ │ │ ├── TextPrompt.chat │ │ │ ├── Waterfall.chat │ │ │ ├── WaterfallNested.chat │ │ │ └── WaterfallPrompt.chat │ │ ├── LuisTests/ │ │ │ └── LuisMiddleware.chat │ │ ├── QnATests/ │ │ │ └── QnAMiddleware.chat │ │ ├── README.md │ │ └── TranslationTests/ │ │ ├── LocaleConvertToEnglish.chat │ │ ├── TranslateToEnglish.chat │ │ └── TranslateToUserLanguage.chat │ └── badges/ │ └── BotBuilderBadge.md ├── Contributing.md ├── LICENSE ├── Orchestrator/ │ ├── README.md │ ├── Samples/ │ │ ├── CLI/ │ │ │ └── ModelTuning/ │ │ │ ├── README.md │ │ │ ├── common.fixed.lu │ │ │ ├── common.lu │ │ │ ├── common.test.lu │ │ │ └── demo.cmd │ │ └── dotnet/ │ │ └── nlp-with-entities/ │ │ ├── .gitignore │ │ ├── AdapterWithErrorHandler.cs │ │ ├── BotServices.cs │ │ ├── Bots/ │ │ │ └── DispatchBot.cs │ │ ├── CognitiveModels/ │ │ │ ├── HomeAutomation.lu │ │ │ ├── QnAMaker.qna │ │ │ └── Weather.lu │ │ ├── Controllers/ │ │ │ └── BotController.cs │ │ ├── IBotServices.cs │ │ ├── OrchestratorConfig.cs │ │ ├── Program.cs │ │ ├── README.md │ │ ├── Startup.cs │ │ ├── nlp-with-entities.csproj │ │ └── wwwroot/ │ │ └── default.html │ ├── docs/ │ │ ├── BFOrchestratorInteractive.md │ │ ├── BFOrchestratorReport.md │ │ ├── BFOrchestratorUsage.md │ │ ├── DispatchMigrationExample.md │ │ ├── FAQ.md │ │ ├── LICENSE.md │ │ ├── LUFormat.md │ │ ├── NLRModels.md │ │ ├── Orchestrator Intro.pptx │ │ ├── Overview.md │ │ └── package/ │ │ └── README.md │ ├── v0.1/ │ │ ├── nlr_versions.json │ │ └── nlr_versions.schema │ └── v0.2/ │ ├── nlr_versions.json │ └── nlr_versions.schema ├── README.md ├── SECURITY.md ├── codeql3000.yml ├── docs/ │ ├── BF Labeling Guide.md │ └── umlDiagrams/ │ ├── ActivityFlow/ │ │ ├── BFServiceAndBotDetails/ │ │ │ └── BFServiceAndBotDetails_DiagramSource.md │ │ ├── BotFrameworkAdapterFlow/ │ │ │ └── BFAdapterActivityFlow_DiagramSource.md │ │ ├── CustomAdapterFlow/ │ │ │ ├── BufferingWithCustomAdapter_DiagramSource.md │ │ │ └── CustomAdapterActivityFlow_DiagramSource.md │ │ ├── DetailedSdkFlow/ │ │ │ ├── DetailedSdkFlow.md │ │ │ └── DetailedSdkFlow_DiagramSource.md │ │ ├── GeneralActivityFlow.md │ │ ├── GeneralActivityFlow_DiagramSource.md │ │ └── README.md │ └── Authentication/ │ ├── AddingAuthenticationToYourBot/ │ │ ├── AddAuthenticationToYourBotViaABS/ │ │ │ ├── DetailedView_DiagramSource.md │ │ │ └── HigherLevel_DiagramSource.md │ │ └── UserAuthenticationWithinAConversation/ │ │ ├── AuthenticationDocExample_Goal_DiagramSource.md │ │ ├── AuthenticationDocExample_OAuthFlow_HasTokenInStorage_DiagramSource.md │ │ └── AuthenticationDocExample_OAuthFlow_NoTokenToStart_DiagramSource.md │ ├── AuthArchitectureInBotFramework/ │ │ └── OAuthPrompt/ │ │ ├── AdapterSavedAsTurnContextMember_DiagramSource.md │ │ ├── BotFrameworkAdapterCreatesOAuthClient_DiagramSource.md │ │ ├── BotFrameworkAdapterCreatesTokenApiClient_DiagramSource.md │ │ ├── BuildAppCredentialsParticipants_DiagramSource.md │ │ ├── CSharp_AppCredentialsClassDiagram_DiagramSource.md │ │ ├── CSharp_OAuthPromptAndTokenProvider_DiagramSource.md │ │ ├── CSharp_UseAppCredentialsToCreateOAuthClient_DiagramSource.md │ │ ├── CreatingOAuthClientInMoreDetail.md │ │ ├── CreatingOAuthClientInMoreDetail_DiagramSource.md │ │ ├── GetUserTokenSequenceDiagram.md │ │ ├── JS_AppCredentialsClassDiagram_DiagramSource.md │ │ ├── JS_OAuthPromptAndTokenProvider_DiagramSource.md │ │ ├── JS_UseAppCredentialsToCreateTokenApiClient_DiagramSource.md │ │ ├── OAuthClientClassDiagram_DiagramSource.md │ │ ├── OAuthPromptClassDiagrams.md │ │ ├── ProcessActivityCreatesTurnContext_DiagramSource.md │ │ ├── TakesAdapterFromTurnContext_DiagramSource.md │ │ └── TokenApiClientClassDiagram_DiagramSource.md │ ├── ChannelToBot/ │ │ ├── AuthenticateRequestOverview_DiagramSource.md │ │ ├── AuthenticateRequest_DiagramSource.md │ │ ├── ChannelActingOnBehalfOfSelf_DiagramSource.md │ │ ├── ChannelActivingOnBehalfOfUser_DiagramSource.md │ │ ├── ChannelToABSLayerToBot_DiagramSource.md │ │ ├── HigherLevel_TokenAuthentication_DiagramSource.md │ │ ├── JwtTokenValidationClassDiagram_DiagramSource.md │ │ ├── README.md │ │ ├── SimpleChannelWithTokenToBot_DiagramSource.md │ │ ├── TokenSignatureParticipants_DiagramSource.md │ │ └── WhyHelloBot_DiagramSource.md │ ├── HighLevelAuthFlow/ │ │ ├── AuthServerAuthenticatesUser_DiagramSource.md │ │ ├── AuthServerIssuesTokenToBot_DiagramSource.md │ │ ├── GiveBotAccessToProtectedResource_DiagramSource.md │ │ └── HighLevelAuthFlowSequenceDiagram_DiagramSource.md │ ├── OAuthPrompt/ │ │ ├── OAuthPrompt_BeginDialog_DiagramSource.md │ │ ├── OAuthPrompt_ContinueDialog_DetailedView_DiagramSource.md │ │ ├── OAuthPrompt_ContinueDialog_HigherLevel_DiagramSource.md │ │ └── README.md │ └── README.md ├── dri/ │ ├── .gitignore │ ├── README.md │ ├── helpers.py │ ├── output.py │ ├── report.py │ └── requirements.txt ├── parsers/ │ └── LU/ │ ├── ANTLR/ │ │ ├── LUFileLexer.g4 │ │ └── LUFileParser.g4 │ └── JS/ │ ├── build/ │ │ ├── bf-cli-build-test-steps.yml │ │ ├── botframework-cli-azure-devops.yml │ │ ├── botframework-cli-beta.yml │ │ ├── botframework-cli-daily.yml │ │ ├── botframework-cli-mac.yml │ │ ├── botframework-cli-rc.yml │ │ ├── botframework-cli-version.yml │ │ └── botframework-cli.yml │ ├── common/ │ │ ├── config/ │ │ │ └── rush/ │ │ │ ├── .npmrc │ │ │ ├── command-line.json │ │ │ ├── common-versions.json │ │ │ ├── experiments.json │ │ │ ├── pnpmfile.js │ │ │ └── version-policies.json │ │ └── scripts/ │ │ ├── install-run-rush.js │ │ ├── install-run-rushx.js │ │ ├── install-run.js │ │ └── version-and-pack.js │ ├── packages/ │ │ └── lu/ │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .nycrc │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── parser/ │ │ │ │ ├── composerindex.js │ │ │ │ ├── converters/ │ │ │ │ │ ├── helpers/ │ │ │ │ │ │ └── writer.js │ │ │ │ │ ├── luistocsconverter.js │ │ │ │ │ └── luistotsconverter.js │ │ │ │ ├── cross-train/ │ │ │ │ │ ├── confighelper.js │ │ │ │ │ ├── cross-train.js │ │ │ │ │ └── crossTrainer.js │ │ │ │ ├── index.js │ │ │ │ ├── lu/ │ │ │ │ │ ├── lu.js │ │ │ │ │ ├── luMerger.js │ │ │ │ │ ├── luOptions.js │ │ │ │ │ ├── qna.js │ │ │ │ │ └── qnaOptions.js │ │ │ │ ├── lubuild/ │ │ │ │ │ ├── builder.ts │ │ │ │ │ ├── core.ts │ │ │ │ │ ├── cross-trained-recognizer.ts │ │ │ │ │ ├── multi-language-recognizer.ts │ │ │ │ │ ├── recognizer.ts │ │ │ │ │ └── settings.ts │ │ │ │ ├── lufile/ │ │ │ │ │ ├── LUFileLexer.g4 │ │ │ │ │ ├── LUFileParser.g4 │ │ │ │ │ ├── baseSection.js │ │ │ │ │ ├── classes/ │ │ │ │ │ │ ├── filesToParse.js │ │ │ │ │ │ ├── hclasses.js │ │ │ │ │ │ └── parserObject.js │ │ │ │ │ ├── diagnostic.js │ │ │ │ │ ├── entitySection.js │ │ │ │ │ ├── generated/ │ │ │ │ │ │ ├── LUFileLexer.interp │ │ │ │ │ │ ├── LUFileLexer.js │ │ │ │ │ │ ├── LUFileLexer.tokens │ │ │ │ │ │ ├── LUFileParser.interp │ │ │ │ │ │ ├── LUFileParser.js │ │ │ │ │ │ ├── LUFileParser.tokens │ │ │ │ │ │ ├── LUFileParserListener.js │ │ │ │ │ │ └── LUFileParserVisitor.js │ │ │ │ │ ├── importSection.js │ │ │ │ │ ├── luErrorListener.js │ │ │ │ │ ├── luParser.js │ │ │ │ │ ├── luResource.js │ │ │ │ │ ├── modelInfoSection.js │ │ │ │ │ ├── nestedIntentSection.js │ │ │ │ │ ├── newEntitySection.js │ │ │ │ │ ├── parseFileContents.js │ │ │ │ │ ├── qnaSection.js │ │ │ │ │ ├── read-text-file.js │ │ │ │ │ ├── sectionOperator.js │ │ │ │ │ ├── simpleIntentSection.js │ │ │ │ │ ├── translate-helpers.js │ │ │ │ │ └── visitor.js │ │ │ │ ├── luis/ │ │ │ │ │ ├── luConverter.js │ │ │ │ │ ├── luis.js │ │ │ │ │ ├── luisBuilder.js │ │ │ │ │ ├── luisCollate.js │ │ │ │ │ ├── luisGen.js │ │ │ │ │ ├── luisGenBuilder.js │ │ │ │ │ ├── luisValidator.js │ │ │ │ │ └── propertyHelper.js │ │ │ │ ├── qna/ │ │ │ │ │ ├── alterations/ │ │ │ │ │ │ ├── alterations.js │ │ │ │ │ │ └── qnaConverter.js │ │ │ │ │ └── qnamaker/ │ │ │ │ │ ├── kb.js │ │ │ │ │ ├── kbCollate.js │ │ │ │ │ ├── qnaContext.js │ │ │ │ │ ├── qnaConverter.js │ │ │ │ │ ├── qnaFiles.js │ │ │ │ │ ├── qnaList.js │ │ │ │ │ ├── qnaMakerBuilder.js │ │ │ │ │ ├── qnaMetaData.js │ │ │ │ │ ├── qnaPrompt.js │ │ │ │ │ └── qnamaker.js │ │ │ │ ├── qnabuild/ │ │ │ │ │ ├── builder.ts │ │ │ │ │ ├── core.ts │ │ │ │ │ ├── cross-trained-recognizer.ts │ │ │ │ │ ├── multi-language-recognizer.ts │ │ │ │ │ ├── recognizer.ts │ │ │ │ │ ├── serviceBase.js │ │ │ │ │ └── settings.ts │ │ │ │ ├── test/ │ │ │ │ │ └── testhelper.ts │ │ │ │ ├── translator/ │ │ │ │ │ └── lutranslate.js │ │ │ │ └── utils/ │ │ │ │ ├── enums/ │ │ │ │ │ ├── CLI-errors.js │ │ │ │ │ ├── invalidchars.js │ │ │ │ │ ├── luisEntityTypeNameMap.js │ │ │ │ │ ├── luisEntityTypes.js │ │ │ │ │ ├── luisbuiltintypes.js │ │ │ │ │ ├── luisobjenum.js │ │ │ │ │ ├── lusectiontypes.js │ │ │ │ │ ├── parsecommands.js │ │ │ │ │ ├── parserconsts.js │ │ │ │ │ └── recognizertypes.js │ │ │ │ ├── exception.js │ │ │ │ └── helpers.js │ │ │ └── utils/ │ │ │ ├── filehelper.ts │ │ │ └── textfilereader.ts │ │ ├── test/ │ │ │ ├── commands/ │ │ │ │ └── luis/ │ │ │ │ └── convert.test.js │ │ │ ├── fixtures/ │ │ │ │ ├── empty.json │ │ │ │ ├── empty.lu │ │ │ │ ├── es/ │ │ │ │ │ └── file.lu │ │ │ │ ├── examples/ │ │ │ │ │ ├── 1.lu │ │ │ │ │ ├── 10.lu │ │ │ │ │ ├── 11.lu │ │ │ │ │ ├── 12.lu │ │ │ │ │ ├── 13.lu │ │ │ │ │ ├── 2.lu │ │ │ │ │ ├── 3.lu │ │ │ │ │ ├── 4.lu │ │ │ │ │ ├── 5.lu │ │ │ │ │ ├── 6.lu │ │ │ │ │ ├── 7.lu │ │ │ │ │ ├── 8.lu │ │ │ │ │ ├── 9.lu │ │ │ │ │ ├── 9a.lu │ │ │ │ │ ├── README.MD │ │ │ │ │ ├── all.lu │ │ │ │ │ ├── all.md │ │ │ │ │ ├── all.qna │ │ │ │ │ ├── buyChocolate.lu │ │ │ │ │ ├── changeAlarm.lu │ │ │ │ │ ├── comment.lu │ │ │ │ │ ├── compositeEntities.lu │ │ │ │ │ ├── en-us/ │ │ │ │ │ │ ├── changeAlarm.lu │ │ │ │ │ │ ├── none.lu │ │ │ │ │ │ ├── qna4.lu │ │ │ │ │ │ └── root.lu │ │ │ │ │ ├── fr-fr/ │ │ │ │ │ │ ├── changeAlarm.lu │ │ │ │ │ │ ├── none.lu │ │ │ │ │ │ ├── qna4.lu │ │ │ │ │ │ └── root.lu │ │ │ │ │ ├── luFileReference1.lu │ │ │ │ │ ├── luFileReference2.lu │ │ │ │ │ ├── luFileReference3.lu │ │ │ │ │ ├── luFileReference4.lu │ │ │ │ │ ├── luFileReference5.lu │ │ │ │ │ ├── luFileReference6.lu │ │ │ │ │ ├── negativeCase1.lu │ │ │ │ │ ├── negativeCase2.lu │ │ │ │ │ ├── negativeCase3.lu │ │ │ │ │ ├── negativeCase4.lu │ │ │ │ │ ├── negativeCase5.lu │ │ │ │ │ ├── newEntityWithFeatures.lu │ │ │ │ │ ├── none.lu │ │ │ │ │ ├── patterns.lu │ │ │ │ │ ├── patterns1.lu │ │ │ │ │ ├── phraseLists.lu │ │ │ │ │ ├── qna-alterations.lu │ │ │ │ │ ├── qna1.lu │ │ │ │ │ ├── qna2.lu │ │ │ │ │ ├── qna3.lu │ │ │ │ │ ├── qna4.lu │ │ │ │ │ ├── qna5.lu │ │ │ │ │ ├── qna6.lu │ │ │ │ │ ├── qna7.lu │ │ │ │ │ ├── regexEntity.lu │ │ │ │ │ └── v7UpgradeTest.lu │ │ │ │ ├── file.lu │ │ │ │ ├── fr/ │ │ │ │ │ └── file.lu │ │ │ │ ├── generate/ │ │ │ │ │ ├── ClosedLists.cs │ │ │ │ │ ├── ClosedLists.json │ │ │ │ │ ├── CompositeEntities.cs │ │ │ │ │ ├── CompositeEntities.json │ │ │ │ │ ├── ContosoApp.cs │ │ │ │ │ ├── ContosoApp.json │ │ │ │ │ ├── FlightBooking.cs │ │ │ │ │ ├── FlightBooking.json │ │ │ │ │ ├── FlightBooking.ts │ │ │ │ │ ├── Intents.cs │ │ │ │ │ ├── Intents.json │ │ │ │ │ ├── NamespaceClass.cs │ │ │ │ │ ├── PatternEntities.cs │ │ │ │ │ ├── PatternEntities.json │ │ │ │ │ ├── PrebuiltEntities.cs │ │ │ │ │ ├── PrebuiltEntities.json │ │ │ │ │ ├── RegexEntities.cs │ │ │ │ │ ├── RegexEntities.json │ │ │ │ │ ├── SimpleEntities.cs │ │ │ │ │ ├── SimpleEntities.json │ │ │ │ │ ├── closed-lists.ts │ │ │ │ │ ├── composite-entities.ts │ │ │ │ │ ├── contoso-app.ts │ │ │ │ │ ├── intents.ts │ │ │ │ │ ├── invalid.json │ │ │ │ │ ├── pattern-entities.ts │ │ │ │ │ ├── prebuilt-entities.ts │ │ │ │ │ ├── regex-entities.ts │ │ │ │ │ └── simple-entities.ts │ │ │ │ ├── none.lu │ │ │ │ ├── qna.lu │ │ │ │ ├── root.luis.json │ │ │ │ ├── testcases/ │ │ │ │ │ ├── 1-intent-pattern-prebuilt.lu │ │ │ │ │ ├── 1-intent.lu │ │ │ │ │ ├── 8.lu │ │ │ │ │ ├── Child_Entity_With_Spaces.json │ │ │ │ │ ├── InvalidLUISModel.json │ │ │ │ │ ├── InvalidLUISModel1.json │ │ │ │ │ ├── InvalidLUISModel2.json │ │ │ │ │ ├── LUISAppWithPAInherits.json │ │ │ │ │ ├── ListEntityAndBatchtestsProblem.1.lu │ │ │ │ │ ├── ListEntityAndBatchtestsProblem.2.lu │ │ │ │ │ ├── ListEntityAndBatchtestsProblem.lu │ │ │ │ │ ├── MultiturnReplaceKbWithFlattenedTree.json │ │ │ │ │ ├── Skills/ │ │ │ │ │ │ ├── Calendar/ │ │ │ │ │ │ │ ├── Calendar.lu │ │ │ │ │ │ │ └── General.lu │ │ │ │ │ │ ├── Email/ │ │ │ │ │ │ │ ├── Email.lu │ │ │ │ │ │ │ └── General.lu │ │ │ │ │ │ └── Todo/ │ │ │ │ │ │ ├── General.lu │ │ │ │ │ │ └── ToDo.lu │ │ │ │ │ ├── all-entity-types.lu │ │ │ │ │ ├── all.json │ │ │ │ │ ├── all_qna.json │ │ │ │ │ ├── bad.lu │ │ │ │ │ ├── bad2.lu │ │ │ │ │ ├── bad3.lu │ │ │ │ │ ├── bad3a.lu │ │ │ │ │ ├── bad4.lu │ │ │ │ │ ├── bad5.lu │ │ │ │ │ ├── bf-627.json │ │ │ │ │ ├── buyChocolate.lu │ │ │ │ │ ├── calendar_all_prebuilt.json │ │ │ │ │ ├── collate/ │ │ │ │ │ │ ├── 1.lu │ │ │ │ │ │ ├── 10.lu │ │ │ │ │ │ ├── 11.lu │ │ │ │ │ │ ├── 11.qna │ │ │ │ │ │ ├── 12.lu │ │ │ │ │ │ ├── 12.qna │ │ │ │ │ │ ├── 2.lu │ │ │ │ │ │ ├── 3.lu │ │ │ │ │ │ ├── 4.lu │ │ │ │ │ │ ├── 5.lu │ │ │ │ │ │ ├── 6.lu │ │ │ │ │ │ ├── 7.lu │ │ │ │ │ │ ├── 8.lu │ │ │ │ │ │ ├── 9.lu │ │ │ │ │ │ ├── 9a.lu │ │ │ │ │ │ ├── buyChocolate.lu │ │ │ │ │ │ ├── changeAlarm.lu │ │ │ │ │ │ ├── comment.lu │ │ │ │ │ │ ├── none.lu │ │ │ │ │ │ ├── patterns1.lu │ │ │ │ │ │ ├── phraseLists.lu │ │ │ │ │ │ ├── qna-alterations.qna │ │ │ │ │ │ ├── qna1.qna │ │ │ │ │ │ ├── qna2.qna │ │ │ │ │ │ ├── qna3.qna │ │ │ │ │ │ ├── qna4.qna │ │ │ │ │ │ ├── qna5.qna │ │ │ │ │ │ ├── qna6.lu │ │ │ │ │ │ ├── qna6.qna │ │ │ │ │ │ └── qna7.qna │ │ │ │ │ ├── comment.lu │ │ │ │ │ ├── deepreference/ │ │ │ │ │ │ ├── qna1.lu │ │ │ │ │ │ └── qna5.lu │ │ │ │ │ ├── emptyIntentDescriptors.json │ │ │ │ │ ├── entityNameWithSpaceAndFeature.json │ │ │ │ │ ├── faq.lu │ │ │ │ │ ├── fileReference/ │ │ │ │ │ │ ├── 9.lu │ │ │ │ │ │ ├── AboutBot.lu │ │ │ │ │ │ └── L2/ │ │ │ │ │ │ ├── AboutUser.lu │ │ │ │ │ │ ├── Command.lu │ │ │ │ │ │ ├── Compliment.lu │ │ │ │ │ │ ├── Criticism.lu │ │ │ │ │ │ ├── Dialog.lu │ │ │ │ │ │ ├── Greeting.lu │ │ │ │ │ │ ├── Relationship.lu │ │ │ │ │ │ └── none.lu │ │ │ │ │ ├── import-resolver/ │ │ │ │ │ │ ├── lu-import-resolver/ │ │ │ │ │ │ │ ├── common.en-us.lu │ │ │ │ │ │ │ ├── help.en-us.lu │ │ │ │ │ │ │ ├── terminate.en-us.lu │ │ │ │ │ │ │ └── welcome.en-us.lu │ │ │ │ │ │ └── qna-import-resolver/ │ │ │ │ │ │ ├── common.en-us.qna │ │ │ │ │ │ ├── terminate.en-us.qna │ │ │ │ │ │ └── welcome.en-us.qna │ │ │ │ │ ├── intentWithSpace.json │ │ │ │ │ ├── invalid-alterations.lu │ │ │ │ │ ├── invalid-entity-definition.lu │ │ │ │ │ ├── invalid_model.lu │ │ │ │ │ ├── invalid_prebuilt_1.lu │ │ │ │ │ ├── invalid_prebuilt_2.lu │ │ │ │ │ ├── invalid_prebuilt_3.lu │ │ │ │ │ ├── invalid_prebuilt_4.lu │ │ │ │ │ ├── list-entity-body-without-hyphen.lu │ │ │ │ │ ├── lubuild/ │ │ │ │ │ │ ├── file-name-duplicated/ │ │ │ │ │ │ │ ├── Foo.en-us.lu │ │ │ │ │ │ │ └── Foo.lu │ │ │ │ │ │ ├── foo/ │ │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ │ └── luis.settings.development.westus.json │ │ │ │ │ │ │ ├── dialogs/ │ │ │ │ │ │ │ │ ├── foo.en-us.lu.dialog │ │ │ │ │ │ │ │ ├── foo.fr-fr.lu.dialog │ │ │ │ │ │ │ │ ├── foo.lu.dialog │ │ │ │ │ │ │ │ └── foo.zh-cn.lu.dialog │ │ │ │ │ │ │ └── lufiles/ │ │ │ │ │ │ │ ├── foo.fr-fr.lu │ │ │ │ │ │ │ ├── foo.lu │ │ │ │ │ │ │ └── foo.zh-cn.lu │ │ │ │ │ │ ├── foo2/ │ │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ │ └── luis.settings.development.westus.json │ │ │ │ │ │ │ ├── dialogs/ │ │ │ │ │ │ │ │ ├── foo.en-us.lu.dialog │ │ │ │ │ │ │ │ ├── foo.fr-fr.lu.dialog │ │ │ │ │ │ │ │ ├── foo.lu.dialog │ │ │ │ │ │ │ │ └── foo.zh-cn.lu.dialog │ │ │ │ │ │ │ ├── lufiles-and-dialog-assets/ │ │ │ │ │ │ │ │ ├── foo.en-us.lu.dialog │ │ │ │ │ │ │ │ ├── foo.fr-fr.lu │ │ │ │ │ │ │ │ ├── foo.fr-fr.lu.dialog │ │ │ │ │ │ │ │ ├── foo.lu │ │ │ │ │ │ │ │ ├── foo.lu.dialog │ │ │ │ │ │ │ │ ├── foo.zh-cn.lu │ │ │ │ │ │ │ │ └── luis.settings.development.westus.json │ │ │ │ │ │ │ └── luis/ │ │ │ │ │ │ │ ├── test(development)-foo.en-us.lu.json │ │ │ │ │ │ │ └── test(development)-foo.fr-fr.lu.json │ │ │ │ │ │ └── sandwich/ │ │ │ │ │ │ ├── config/ │ │ │ │ │ │ │ └── luis.settings.development.westus.json │ │ │ │ │ │ ├── dialogs/ │ │ │ │ │ │ │ ├── sandwich.en-us.lu.dialog │ │ │ │ │ │ │ └── sandwich.lu.dialog │ │ │ │ │ │ ├── lufiles/ │ │ │ │ │ │ │ ├── sandwich-BreadEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-CheeseEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-Confirmation.en-us.lu │ │ │ │ │ │ │ ├── sandwich-DirectionsEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-LengthEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-MeatEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-NameEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-PROPERTYName.en-us.lu │ │ │ │ │ │ │ ├── sandwich-Price.quantity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-Quantity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-QuantityEntity.en-us.lu │ │ │ │ │ │ │ ├── sandwich-cancelIntent.en-us.lu │ │ │ │ │ │ │ ├── sandwich-dimension.en-us.lu │ │ │ │ │ │ │ ├── sandwich-helpIntent.en-us.lu │ │ │ │ │ │ │ ├── sandwich-money.en-us.lu │ │ │ │ │ │ │ ├── sandwich-noneIntent.en-us.lu │ │ │ │ │ │ │ ├── sandwich-number.en-us.lu │ │ │ │ │ │ │ ├── sandwich-sandwich.lu │ │ │ │ │ │ │ └── sandwich.en-us.lu │ │ │ │ │ │ └── luis/ │ │ │ │ │ │ ├── test(development)-sandwich.en-us.lu.json │ │ │ │ │ │ ├── test(development)-sandwich.utteranceAdded.en-us.lu.json │ │ │ │ │ │ └── test(development)-sandwich.utteranceChanged.en-us.lu.json │ │ │ │ │ ├── merge_intents_disabled.lu │ │ │ │ │ ├── missing-synonyms.lu │ │ │ │ │ ├── missing-utterance.lu │ │ │ │ │ ├── missing-utterance2.lu │ │ │ │ │ ├── multi-ref.lu │ │ │ │ │ ├── multiturn.qna │ │ │ │ │ ├── nested-luis-json.json │ │ │ │ │ ├── newEntity1.json │ │ │ │ │ ├── newEntity2.json │ │ │ │ │ ├── overlappingEntities.json │ │ │ │ │ ├── phraseLists.lu │ │ │ │ │ ├── plFeatureDisabled.json │ │ │ │ │ ├── plWithFlags.lu │ │ │ │ │ ├── prebuilt-entity.lu │ │ │ │ │ ├── prebuilt_model.json │ │ │ │ │ ├── qna-alterations_Alterations.json │ │ │ │ │ ├── qna-filter-line-without-hyphen.lu │ │ │ │ │ ├── qna-question-line-without-hyphen.lu │ │ │ │ │ ├── qnaDocuments.json │ │ │ │ │ ├── qnaref.qna │ │ │ │ │ ├── reduced.lu │ │ │ │ │ ├── ref1.lu │ │ │ │ │ ├── ref10.lu │ │ │ │ │ ├── ref11.lu │ │ │ │ │ ├── ref12.lu │ │ │ │ │ ├── ref13.lu │ │ │ │ │ ├── ref14.qna │ │ │ │ │ ├── ref15.qna │ │ │ │ │ ├── ref2.lu │ │ │ │ │ ├── ref3.qna │ │ │ │ │ ├── ref4.lu │ │ │ │ │ ├── ref5.lu │ │ │ │ │ ├── ref6.lu │ │ │ │ │ ├── ref7.lu │ │ │ │ │ ├── ref8.lu │ │ │ │ │ ├── ref9.lu │ │ │ │ │ ├── ref_src1.lu │ │ │ │ │ ├── ref_src2.lu │ │ │ │ │ ├── regexmodel.luis │ │ │ │ │ ├── root.lu │ │ │ │ │ ├── root2.lu │ │ │ │ │ ├── root3.lu │ │ │ │ │ ├── section_disabled.lu │ │ │ │ │ ├── section_disabled2.lu │ │ │ │ │ ├── section_enabled.lu │ │ │ │ │ ├── section_enabled2.lu │ │ │ │ │ ├── special-char-in-entity-type.lu │ │ │ │ │ ├── test269-d.json │ │ │ │ │ ├── testTokenizerVersion.json │ │ │ │ │ ├── testcases-data.js │ │ │ │ │ ├── translate-testcase-data.js │ │ │ │ │ ├── translate-with-number.lu │ │ │ │ │ ├── utterance-without-hyphen.lu │ │ │ │ │ ├── v6WithoutPhraseLists.lu │ │ │ │ │ └── v7app.json │ │ │ │ ├── translation/ │ │ │ │ │ ├── en/ │ │ │ │ │ │ ├── qna.json │ │ │ │ │ │ ├── qna.lu │ │ │ │ │ │ └── translateLuResponse.json │ │ │ │ │ ├── files/ │ │ │ │ │ │ ├── allEntities.lu │ │ │ │ │ │ ├── bad.lu │ │ │ │ │ │ ├── fileRef.lu │ │ │ │ │ │ ├── intentsAndUtterances.lu │ │ │ │ │ │ ├── labelledEntityValue.lu │ │ │ │ │ │ ├── newEntity.lu │ │ │ │ │ │ ├── normalizedValue.lu │ │ │ │ │ │ ├── options.lu │ │ │ │ │ │ ├── phraseList.lu │ │ │ │ │ │ ├── qna.lu │ │ │ │ │ │ └── qnaContent.lu │ │ │ │ │ ├── fr/ │ │ │ │ │ │ ├── qna.json │ │ │ │ │ │ ├── qna.lu │ │ │ │ │ │ └── root.luis.json │ │ │ │ │ ├── serviceresponses/ │ │ │ │ │ │ ├── allEntities.json │ │ │ │ │ │ ├── fileRef.json │ │ │ │ │ │ ├── intentsAndUtterances.json │ │ │ │ │ │ ├── labelledEntityValue.json │ │ │ │ │ │ ├── newEntity.json │ │ │ │ │ │ ├── normalizedValue.json │ │ │ │ │ │ ├── options.json │ │ │ │ │ │ ├── phraseList.json │ │ │ │ │ │ ├── qna.json │ │ │ │ │ │ └── qnaContent.json │ │ │ │ │ ├── translateLuResponse.json │ │ │ │ │ ├── translateLuResponseSecond.json │ │ │ │ │ ├── translateLuisResponse.json │ │ │ │ │ ├── translateLuisResponseSecond.json │ │ │ │ │ └── translatedfiles/ │ │ │ │ │ ├── allEntities.lu │ │ │ │ │ ├── fileRef.lu │ │ │ │ │ ├── intentsAndUtterances.lu │ │ │ │ │ ├── labelledEntityValue.lu │ │ │ │ │ ├── newEntity.lu │ │ │ │ │ ├── normalizedValue.lu │ │ │ │ │ ├── options.lu │ │ │ │ │ ├── phraseList.lu │ │ │ │ │ ├── qna.lu │ │ │ │ │ └── qnaContent.lu │ │ │ │ └── verified/ │ │ │ │ ├── 1.json │ │ │ │ ├── 1.lu │ │ │ │ ├── 11.json │ │ │ │ ├── 12.json │ │ │ │ ├── 12qna.json │ │ │ │ ├── 13.json │ │ │ │ ├── 2.json │ │ │ │ ├── 3.json │ │ │ │ ├── 4.json │ │ │ │ ├── 5.json │ │ │ │ ├── 6.json │ │ │ │ ├── 7.json │ │ │ │ ├── 9.json │ │ │ │ ├── 9a.json │ │ │ │ ├── Child_Entity_With_Spaces.lu │ │ │ │ ├── LUISAppWithPAInherits.lu │ │ │ │ ├── LUISAppWithPAInherits.lu.json │ │ │ │ ├── ListEntityAndBatchtestsProblem.1_LUISBatchTest.json │ │ │ │ ├── ListEntityAndBatchtestsProblem.2_LUISBatchTest.json │ │ │ │ ├── ListEntityAndBatchtestsProblem_LUISBatchTest.json │ │ │ │ ├── MultiturnReplaceKbWithFlattenedTree.qna │ │ │ │ ├── Skills/ │ │ │ │ │ ├── Calendar.json │ │ │ │ │ ├── Email.json │ │ │ │ │ └── ToDo.json │ │ │ │ ├── all-entity-types.json │ │ │ │ ├── all-qna.json │ │ │ │ ├── all.json │ │ │ │ ├── allGen.lu │ │ │ │ ├── allGenQnA.lu │ │ │ │ ├── allRefresh.lu │ │ │ │ ├── allall-qna.lu │ │ │ │ ├── alterations_qna4.json │ │ │ │ ├── buyChocolate.json │ │ │ │ ├── calendar_all_prebuilt.lu │ │ │ │ ├── calendar_all_prebuilt_parsed.json │ │ │ │ ├── collate-qna.json │ │ │ │ ├── collate_Alterations.json │ │ │ │ ├── collate_alteration_gen.lu │ │ │ │ ├── collate_refresh.lu │ │ │ │ ├── collated-luis.json │ │ │ │ ├── collated-luis_LUISBatchTest.json │ │ │ │ ├── de/ │ │ │ │ │ ├── all.lu │ │ │ │ │ ├── faq.lu │ │ │ │ │ ├── reduced.lu │ │ │ │ │ └── translate-with-number.lu │ │ │ │ ├── emptyIntentDescriptors.lu │ │ │ │ ├── importUrl.json │ │ │ │ ├── luis_sorted.lu │ │ │ │ ├── merge_intents_disabled.json │ │ │ │ ├── modelAsFeatureGen.lu │ │ │ │ ├── modelAsFeatures.json │ │ │ │ ├── modelAsFeatures.lu │ │ │ │ ├── modelInfo.lu │ │ │ │ ├── multiturn.json.qna │ │ │ │ ├── multiturn.qna.json │ │ │ │ ├── nDepthEntity.json │ │ │ │ ├── nDepthEntity.lu │ │ │ │ ├── nDepthEntityInUtterance.json │ │ │ │ ├── nDepthEntityInUtterance.lu │ │ │ │ ├── newEntity1.lu │ │ │ │ ├── newEntity2.lu │ │ │ │ ├── newEntityWithFeatures.json │ │ │ │ ├── newEntityWithFeatures.lu │ │ │ │ ├── plFeatures.json │ │ │ │ ├── plFeatures.lu │ │ │ │ ├── plWithFlags.json │ │ │ │ ├── prebuilt-entity.json │ │ │ │ ├── prebuilt_mode.lu │ │ │ │ ├── prebuilt_model_parse.json │ │ │ │ ├── qna5.json │ │ │ │ ├── qna_a_sorted.lu │ │ │ │ ├── qna_sorted.lu │ │ │ │ ├── ref1.json │ │ │ │ ├── ref14_a.json │ │ │ │ ├── ref15_a.json │ │ │ │ ├── ref4.json │ │ │ │ ├── ref5.json │ │ │ │ ├── ref6.json │ │ │ │ ├── ref7.json │ │ │ │ ├── ref8.json │ │ │ │ ├── referenceUrl.json │ │ │ │ ├── referenceUrlWithWildCard.json │ │ │ │ ├── regexmodel.lu │ │ │ │ ├── root.json │ │ │ │ ├── root2.json │ │ │ │ ├── root2_luis.json │ │ │ │ ├── root3.lu │ │ │ │ ├── root_luis.json │ │ │ │ ├── section_disabled.json │ │ │ │ ├── section_disabled2.json │ │ │ │ ├── section_enabled.json │ │ │ │ ├── section_enabled2.json │ │ │ │ ├── sorted.lu │ │ │ │ ├── special-char-in-entity-type.json │ │ │ │ ├── stdin-qna.lu │ │ │ │ ├── stdin.lu │ │ │ │ ├── test269-d.lu │ │ │ │ ├── v5Upgrade.json │ │ │ │ ├── v5UpgradeTest.lu │ │ │ │ ├── v6WithoutPhraseLists.json │ │ │ │ ├── v7UpgradeTest.json │ │ │ │ ├── v7UpgradeTest.lu │ │ │ │ ├── v7app.lu │ │ │ │ ├── v7app_c.json │ │ │ │ └── zh-Hans/ │ │ │ │ └── reduced.lu │ │ │ ├── hook.js │ │ │ ├── mocha.opts │ │ │ ├── parser/ │ │ │ │ ├── cross-train/ │ │ │ │ │ └── crossTrainer.test.js │ │ │ │ ├── lu/ │ │ │ │ │ └── lu.test.js │ │ │ │ ├── lubuild/ │ │ │ │ │ └── lubuild.test.js │ │ │ │ ├── lufile/ │ │ │ │ │ ├── appKbMetaData.test.js │ │ │ │ │ ├── classes/ │ │ │ │ │ │ └── classes.test.js │ │ │ │ │ ├── helpers.test.js │ │ │ │ │ ├── luQnAFileReference.test.js │ │ │ │ │ ├── luis.boundary.test.js │ │ │ │ │ ├── lutranslator.test.js │ │ │ │ │ ├── newEntityDefinitionWithSpaces.test.js │ │ │ │ │ ├── parseFileContents.NewEntityDefinition.test.js │ │ │ │ │ ├── parseFileContents.comments.test.js │ │ │ │ │ ├── parseFileContents.composeEntity.test.js │ │ │ │ │ ├── parseFileContents.featureToModels.test.js │ │ │ │ │ ├── parseFileContents.modelAsFeature.test.js │ │ │ │ │ ├── parseFileContents.nDepthEntity.test.js │ │ │ │ │ ├── parseFileContents.newEntityInUtterance.test.js │ │ │ │ │ ├── parseFileContents.parseFile.test.js │ │ │ │ │ ├── parseFileContents.qnafile.test.js │ │ │ │ │ ├── parseFileContents.regexEntity.test.js │ │ │ │ │ ├── parseFileContents.roleTest.test.js │ │ │ │ │ ├── qnaMultiTurnAndReferences.test.js │ │ │ │ │ ├── sectionapi.test.js │ │ │ │ │ └── urlReference.test.js │ │ │ │ ├── luis/ │ │ │ │ │ └── luisBuilder.test.js │ │ │ │ ├── qna/ │ │ │ │ │ └── qnaMakerBuilder.test.js │ │ │ │ └── qnabuild/ │ │ │ │ └── qnabuild.test.js │ │ │ ├── tsconfig.json │ │ │ └── utils/ │ │ │ └── filehelper.test.js │ │ ├── tsconfig.json │ │ └── tslint.json │ ├── rush.json │ └── scripts/ │ └── fixurls.js ├── schemas/ │ ├── component/ │ │ ├── component.schema │ │ ├── definitions.schema │ │ ├── readme.md │ │ └── v1.0/ │ │ └── component.schema │ ├── protocol/ │ │ └── botframework.json │ ├── readme.md │ ├── skills/ │ │ ├── SchemaManifestTests/ │ │ │ ├── SchemaManifestTests.csproj │ │ │ ├── SchemaManifestTests.sln │ │ │ └── ValidateSchemaTests.cs │ │ ├── readme.md │ │ ├── skill-manifest-2.0.0.json │ │ ├── skill-manifest-2.1.preview-1.json │ │ ├── v2.0/ │ │ │ ├── samples/ │ │ │ │ ├── complex-skillmanifest.json │ │ │ │ ├── echo-skillmanifest.json │ │ │ │ └── simple-skillmanifest.json │ │ │ └── skill-manifest.json │ │ ├── v2.1/ │ │ │ ├── samples/ │ │ │ │ ├── complex-pva-manifest.json │ │ │ │ ├── complex-skillmanifest.json │ │ │ │ ├── echo-skillmanifest.json │ │ │ │ └── simple-skillmanifest.json │ │ │ └── skill-manifest.json │ │ ├── v2.1.preview-1/ │ │ │ ├── samples/ │ │ │ │ ├── complex-skillmanifest.json │ │ │ │ ├── echo-skillmanifest.json │ │ │ │ └── simple-skillmanifest.json │ │ │ └── skill-manifest.json │ │ └── v2.2/ │ │ ├── samples/ │ │ │ ├── complex-pva-manifest.json │ │ │ ├── complex-skillmanifest.json │ │ │ ├── echo-skillmanifest.json │ │ │ ├── relativeUris/ │ │ │ │ ├── complex-skillmanifest.json │ │ │ │ ├── knowledge-base/ │ │ │ │ │ ├── SkillBot-QnA-en.qna │ │ │ │ │ ├── SkillBot-QnA-es-ES.qna │ │ │ │ │ └── SkillBot-QnA-es-MX.qna │ │ │ │ ├── language-understanding/ │ │ │ │ │ ├── SkillBot-en.lu │ │ │ │ │ ├── SkillBot-es-ES.lu │ │ │ │ │ └── SkillBot-es-MX.lu │ │ │ │ └── privacy.html │ │ │ └── simple-skillmanifest.json │ │ └── skill-manifest.json │ └── ui/ │ └── v1.0/ │ └── ui.schema ├── specs/ │ ├── botframework-activity/ │ │ ├── botframework-activity.md │ │ └── botframework-cards.md │ ├── botframework-protocol/ │ │ ├── botframework-channel.json │ │ ├── channel-update-spec.md │ │ ├── directline-1.1.json │ │ └── directline-3.0.json │ ├── component-model/ │ │ └── overview.md │ ├── manifest/ │ │ ├── botframework-manifest.md │ │ ├── example.man │ │ └── manifest.json │ ├── testing/ │ │ ├── skills/ │ │ │ ├── SkillsFunctionalTesting.md │ │ │ ├── SkillsMatrixTesting.md │ │ │ ├── SkillsScopeInformation.md │ │ │ ├── media/ │ │ │ │ └── src/ │ │ │ │ └── SkillsFunctionalTestingDiagrams.pptx │ │ │ └── scenarios/ │ │ │ ├── AuthWithOAuthCard.md │ │ │ ├── AuthWithSSO.md │ │ │ ├── CardActionsWithInvokes.md │ │ │ ├── DraftScenarios.md │ │ │ ├── MultiTurnInteraction.md │ │ │ ├── ProactiveMessage.md │ │ │ ├── SingleTurnInteraction.md │ │ │ ├── SkillCallsSkill.md │ │ │ ├── SkillReceivesAttachment.md │ │ │ ├── SkillStartsConversation.md │ │ │ ├── TeamsAPI.md │ │ │ ├── TeamsSkillWithTaskModule.md │ │ │ └── UpdateDeleteAdaptiveCard.md │ │ └── testing.md │ └── transcript/ │ └── transcript.md └── tools/ └── changelog/ ├── .gitignore └── git-log.js