{
  "version": 1,
  "generatedAt": "2026-05-25T11:41:33.166Z",
  "fileId": "file:136c3oe:dbinitializer-cs",
  "executableScope": true,
  "executableSymbolCount": 1,
  "fileNodeId": "file:136c3oe:dbinitializer-cs",
  "symbolNodeIds": [
    "class:1t4ptj6:dbinitializer",
    "method:n19kbi:seedasync"
  ],
  "containmentEdgeIds": [
    "edge:1aogrvy:contains",
    "edge:1cb9e17:contains"
  ],
  "relationshipEdgeIds": [
    "edge:1aogrvy:contains",
    "edge:1cb9e17:contains",
    "edge:uail6a:imports",
    "edge:lrc9cg:imports",
    "edge:151gejr:imports",
    "edge:4foovb:imports",
    "edge:1fze3yr:imports"
  ],
  "integrationEdgeIds": [
    "edge:uail6a:imports",
    "edge:lrc9cg:imports",
    "edge:151gejr:imports",
    "edge:4foovb:imports",
    "edge:1fze3yr:imports"
  ],
  "controlFlowFragments": [
    {
      "fragmentId": "method:n19kbi:seedasync__fragment",
      "ownerFileId": "file:136c3oe:dbinitializer-cs",
      "ownerSymbolId": "method:n19kbi:seedasync",
      "ownerSymbolName": "SeedAsync",
      "entryNodeId": "method:n19kbi:seedasync__entry",
      "exitNodeIds": [
        "method:n19kbi:seedasync__implicit_return"
      ],
      "nodes": [
        {
          "id": "method:n19kbi:seedasync__entry",
          "kind": "entry",
          "label": "SeedAsync entry",
          "line": 14,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.99,
          "detail": "Create a scoped DbContext and seed initial database data: subscription plans, roles, an admin user (with role), a sample author and an ebook, with logging and error handling."
        },
        {
          "id": "method:n19kbi:seedasync__action_16_resource_acquire_16__linear",
          "kind": "statement",
          "label": "Create service scope and resolve services",
          "line": 16,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "using var scope = serviceProvider.CreateScope(); resolve IPasswordHasher<NexusUser> and IDbContextFactory<AppDbContext> from scope"
        },
        {
          "id": "method:n19kbi:seedasync__action_19_seedasync_await_19_0__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 19,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "using var dbContext = await dbContextFactory.CreateDbContextAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_19_external_call_19__linear",
          "kind": "http-call",
          "label": "Create DbContext async",
          "line": 19,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "await dbContextFactory.CreateDbContextAsync() — obtains AppDbContext for persistence operations"
        },
        {
          "id": "method:n19kbi:seedasync__action_21_seedasync_try_21_1__try",
          "kind": "try",
          "label": "Begins protected execution",
          "line": 21,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84,
          "detail": "try"
        },
        {
          "id": "method:n19kbi:seedasync__action_23_log_23__linear",
          "kind": "statement",
          "label": "Starting seeding",
          "line": 23,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "Console.WriteLine(\"[Seeder] Starting database seeding...\")"
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__condition",
          "kind": "condition",
          "label": "!dbContext.SubscriptionPlans.Any()",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "Adds three SubscriptionPlan entities and SaveChangesAsync when no plans exist (lines 28-35)"
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__true",
          "kind": "branch-true",
          "label": "add-plans",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__false",
          "kind": "branch-false",
          "label": "skip",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "kind": "statement",
          "label": "merge",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition",
          "kind": "condition",
          "label": "!dbContext.SubscriptionPlans.Any()",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78,
          "detail": "if (!dbContext.SubscriptionPlans.Any())"
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__true",
          "kind": "branch-true",
          "label": "true",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__false",
          "kind": "branch-false",
          "label": "false",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "kind": "statement",
          "label": "merge",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_28_persistence_write_28__linear",
          "kind": "statement",
          "label": "AddRange SubscriptionPlans",
          "line": 28,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "dbContext.SubscriptionPlans.AddRange(...); await dbContext.SaveChangesAsync()"
        },
        {
          "id": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "kind": "call",
          "label": "FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)",
          "line": 30,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "used to set Id and PlanName when creating SubscriptionPlan instances"
        },
        {
          "id": "method:n19kbi:seedasync__action_34_seedasync_await_34_3__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 34,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_35_log_35__linear",
          "kind": "statement",
          "label": "Seed progress/info logs",
          "line": 35,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "Multiple Console.WriteLine statements after seeding stages (lines 35, 46, 80, 106, 111)"
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "kind": "loop-entry",
          "label": "Seed roles (Admin, User)",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "foreach roleName in roleNames -> checks dbContext.Roles.Any(...) and adds missing IdentityRole entries; then SaveChangesAsync() (lines 40-49, 49)"
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_body",
          "kind": "loop-body",
          "label": "foreach roleName in roleNames -> checks dbContext.Roles.Any(...) and adds missing IdentityRole entries; then SaveChangesAsync() (lines 40-49, 49)",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_exit",
          "kind": "loop-exit",
          "label": "exit loop",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "kind": "loop-entry",
          "label": "var roleName in roleNames",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86,
          "detail": "foreach (var roleName in roleNames)"
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body",
          "kind": "loop-body",
          "label": "foreach (var roleName in roleNames)",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_exit",
          "kind": "loop-exit",
          "label": "Leaves the loop when the condition no longer holds.",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition",
          "kind": "condition",
          "label": "!roleExist",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78,
          "detail": "if (!roleExist)"
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__true",
          "kind": "branch-true",
          "label": "true",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__false",
          "kind": "branch-false",
          "label": "false",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "kind": "statement",
          "label": "merge",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_45_seedasync_repository_write_45_6__linear",
          "kind": "db-write",
          "label": "Writes repository or persistence state",
          "line": 45,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "dbContext.Roles.Add(new IdentityRole { Name = roleName, NormalizedName = roleName.ToUpper() });"
        },
        {
          "id": "method:n19kbi:seedasync__action_49_seedasync_await_49_7__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 49,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_54_seedasync_await_54_8__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 54,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "var adminUser = await dbContext.Users.FirstOrDefaultAsync(u => u.NormalizedEmail == normalizedEmail);"
        },
        {
          "id": "method:n19kbi:seedasync__action_54_persistence_read_54__linear",
          "kind": "statement",
          "label": "Check for existing admin user",
          "line": 54,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "await dbContext.Users.FirstOrDefaultAsync(u => u.NormalizedEmail == normalizedEmail)"
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition",
          "kind": "condition",
          "label": "adminUser == null",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78,
          "detail": "if (adminUser == null)"
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__true",
          "kind": "branch-true",
          "label": "true",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__false",
          "kind": "branch-false",
          "label": "false",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "kind": "statement",
          "label": "merge",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__condition",
          "kind": "condition",
          "label": "adminUser == null",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "If missing, create NexusUser, hash password, add to Users, assign Admin role, and seed sample author and ebook (lines 58-107); else log that admin exists (line 111)."
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__true",
          "kind": "branch-true",
          "label": "create-admin",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__false",
          "kind": "branch-false",
          "label": "admin-exists",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__merge",
          "kind": "statement",
          "label": "merge",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
          "kind": "call",
          "label": "NexusUser .ctor (entity creation)",
          "line": 58,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "instantiates admin NexusUser with email, subscription, tokens, tenant/security stamps"
        },
        {
          "id": "method:n19kbi:seedasync__action_71_persistence_write_71__linear",
          "kind": "statement",
          "label": "Create admin user and save",
          "line": 71,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "passwordHasher.HashPassword(...); dbContext.Users.Add(adminUser); await dbContext.SaveChangesAsync()"
        },
        {
          "id": "method:n19kbi:seedasync__action_73_seedasync_repository_write_73_10__linear",
          "kind": "db-write",
          "label": "Writes repository or persistence state",
          "line": 73,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "dbContext.Users.Add(adminUser);"
        },
        {
          "id": "method:n19kbi:seedasync__action_74_seedasync_await_74_11__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 74,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_76_seedasync_await_76_12__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 76,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "var adminRole = await dbContext.Roles.FirstAsync(r => r.Name == \"Admin\");"
        },
        {
          "id": "method:n19kbi:seedasync__action_76_persistence_write_76__linear",
          "kind": "statement",
          "label": "Assign Admin role to user",
          "line": 76,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "fetch role entity and add IdentityUserRole to dbContext.UserRoles; await SaveChangesAsync()"
        },
        {
          "id": "method:n19kbi:seedasync__action_77_seedasync_repository_write_77_13__linear",
          "kind": "db-write",
          "label": "Writes repository or persistence state",
          "line": 77,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "dbContext.UserRoles.Add(new IdentityUserRole<string> { UserId = adminUser.Id, RoleId = adminRole.Id });"
        },
        {
          "id": "method:n19kbi:seedasync__action_78_seedasync_await_78_14__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 78,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_83_seedasync_await_83_15__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 83,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "var author = await dbContext.Authors.FirstOrDefaultAsync(a => a.Name == \"Giorgio Vasari\");"
        },
        {
          "id": "method:n19kbi:seedasync__action_83_persistence_read_write_83__linear",
          "kind": "statement",
          "label": "Ensure sample Author exists",
          "line": 83,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "await dbContext.Authors.FirstOrDefaultAsync(a => a.Name == \"Giorgio Vasari\"); add if null and SaveChangesAsync"
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition",
          "kind": "condition",
          "label": "author == null",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78,
          "detail": "if (author == null)"
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__true",
          "kind": "branch-true",
          "label": "true",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__false",
          "kind": "branch-false",
          "label": "false",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "kind": "statement",
          "label": "merge",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
          "kind": "call",
          "label": "Author .ctor (entity creation)",
          "line": 86,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "instantiates sample author 'Giorgio Vasari' if missing"
        },
        {
          "id": "method:n19kbi:seedasync__action_87_seedasync_repository_write_87_17__linear",
          "kind": "db-write",
          "label": "Writes repository or persistence state",
          "line": 87,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "dbContext.Authors.Add(author);"
        },
        {
          "id": "method:n19kbi:seedasync__action_88_seedasync_await_88_18__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 88,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition",
          "kind": "condition",
          "label": "!dbContext.Ebooks.Any(e => e.UserId == adminUser.Id)",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78,
          "detail": "if (!dbContext.Ebooks.Any(e => e.UserId == adminUser.Id))"
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__true",
          "kind": "branch-true",
          "label": "true",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__false",
          "kind": "branch-false",
          "label": "false",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "kind": "statement",
          "label": "merge",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_persistence_read_write_92__linear",
          "kind": "statement",
          "label": "Add sample Ebook for admin user",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "if no ebook exists for adminUser.Id then dbContext.Ebooks.Add(new Ebook{...}); await SaveChangesAsync()"
        },
        {
          "id": "method:n19kbi:seedasync__action_94_seedasync_repository_write_94_20__linear",
          "kind": "db-write",
          "label": "Writes repository or persistence state",
          "line": 94,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "dbContext.Ebooks.Add(new Ebook"
        },
        {
          "id": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
          "kind": "call",
          "label": "Ebook .ctor (entity creation)",
          "line": 94,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88,
          "detail": "creates sample Ebook for admin user with metadata and file path"
        },
        {
          "id": "method:n19kbi:seedasync__action_105_seedasync_await_105_21__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 105,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81,
          "detail": "await dbContext.SaveChangesAsync();"
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition",
          "kind": "condition",
          "label": "Falls back to alternate path",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84,
          "detail": "else"
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__true",
          "kind": "branch-true",
          "label": "fallback",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__false",
          "kind": "branch-false",
          "label": "otherwise",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "kind": "statement",
          "label": "merge",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_114_error_handling_114__linear",
          "kind": "statement",
          "label": "Top-level seeding exception catch",
          "line": 114,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7,
          "detail": "catch (Exception ex) { Console.WriteLine('[Seeder] Critical error during seeding: ' + ex.Message); }"
        },
        {
          "id": "method:n19kbi:seedasync__action_114_seedasync_catch_114_23__catch",
          "kind": "catch",
          "label": "catch Exception ex",
          "line": 114,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86,
          "detail": "catch (Exception ex)"
        },
        {
          "id": "method:n19kbi:seedasync__implicit_return",
          "kind": "return",
          "label": "return",
          "line": 118,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.72,
          "detail": "Implicit method exit inferred from method boundary."
        }
      ],
      "edges": [
        {
          "id": "method:n19kbi:seedasync__entry__method:n19kbi:seedasync__action_16_resource_acquire_16__linear",
          "from": "method:n19kbi:seedasync__entry",
          "to": "method:n19kbi:seedasync__action_16_resource_acquire_16__linear",
          "kind": "next",
          "line": 16,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_16_resource_acquire_16__linear__method:n19kbi:seedasync__action_19_seedasync_await_19_0__await",
          "from": "method:n19kbi:seedasync__action_16_resource_acquire_16__linear",
          "to": "method:n19kbi:seedasync__action_19_seedasync_await_19_0__await",
          "kind": "next",
          "line": 19,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_19_seedasync_await_19_0__await__method:n19kbi:seedasync__action_19_external_call_19__linear",
          "from": "method:n19kbi:seedasync__action_19_seedasync_await_19_0__await",
          "to": "method:n19kbi:seedasync__action_19_external_call_19__linear",
          "kind": "next",
          "line": 19,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_19_external_call_19__linear__method:n19kbi:seedasync__action_21_seedasync_try_21_1__try",
          "from": "method:n19kbi:seedasync__action_19_external_call_19__linear",
          "to": "method:n19kbi:seedasync__action_21_seedasync_try_21_1__try",
          "kind": "next",
          "line": 21,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_21_seedasync_try_21_1__try__method:n19kbi:seedasync__action_23_log_23__linear",
          "from": "method:n19kbi:seedasync__action_21_seedasync_try_21_1__try",
          "to": "method:n19kbi:seedasync__action_23_log_23__linear",
          "kind": "next",
          "line": 23,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_23_log_23__linear__method:n19kbi:seedasync__action_26_guard_clause_26__condition",
          "from": "method:n19kbi:seedasync__action_23_log_23__linear",
          "to": "method:n19kbi:seedasync__action_26_guard_clause_26__condition",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__condition__method:n19kbi:seedasync__action_26_guard_clause_26__true",
          "from": "method:n19kbi:seedasync__action_26_guard_clause_26__condition",
          "to": "method:n19kbi:seedasync__action_26_guard_clause_26__true",
          "kind": "condition-true",
          "label": "add-plans",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__condition__method:n19kbi:seedasync__action_26_guard_clause_26__false",
          "from": "method:n19kbi:seedasync__action_26_guard_clause_26__condition",
          "to": "method:n19kbi:seedasync__action_26_guard_clause_26__false",
          "kind": "condition-false",
          "label": "skip",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__true__method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "from": "method:n19kbi:seedasync__action_26_guard_clause_26__true",
          "to": "method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__false__method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "from": "method:n19kbi:seedasync__action_26_guard_clause_26__false",
          "to": "method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_26_guard_clause_26__merge__method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition",
          "from": "method:n19kbi:seedasync__action_26_guard_clause_26__merge",
          "to": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition__method:n19kbi:seedasync__action_26_seedasync_branch_26_2__true",
          "from": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition",
          "to": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__true",
          "kind": "condition-true",
          "label": "true",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition__method:n19kbi:seedasync__action_26_seedasync_branch_26_2__false",
          "from": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__condition",
          "to": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__false",
          "kind": "condition-false",
          "label": "false",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__true__method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "from": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__true",
          "to": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__false__method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "from": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__false",
          "to": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "kind": "next",
          "line": 26,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge__method:n19kbi:seedasync__action_28_persistence_write_28__linear",
          "from": "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
          "to": "method:n19kbi:seedasync__action_28_persistence_write_28__linear",
          "kind": "next",
          "line": 28,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_28_persistence_write_28__linear__call_method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "from": "method:n19kbi:seedasync__action_28_persistence_write_28__linear",
          "to": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "kind": "call",
          "label": "used to set Id and PlanName when creating SubscriptionPlan instances",
          "line": 30,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties___method:n19kbi:seedasync__action_34_seedasync_await_34_3__await",
          "from": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "to": "method:n19kbi:seedasync__action_34_seedasync_await_34_3__await",
          "kind": "next",
          "line": 34,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_34_seedasync_await_34_3__await__method:n19kbi:seedasync__action_35_log_35__linear",
          "from": "method:n19kbi:seedasync__action_34_seedasync_await_34_3__await",
          "to": "method:n19kbi:seedasync__action_35_log_35__linear",
          "kind": "next",
          "line": 35,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_35_log_35__linear__method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "from": "method:n19kbi:seedasync__action_35_log_35__linear",
          "to": "method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "kind": "next",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_entry__method:n19kbi:seedasync__action_40_loop_40__loop_body",
          "from": "method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "to": "method:n19kbi:seedasync__action_40_loop_40__loop_body",
          "kind": "loop-body",
          "label": "iterate",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_body__method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "from": "method:n19kbi:seedasync__action_40_loop_40__loop_body",
          "to": "method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "kind": "loop-back",
          "label": "continue",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_entry__method:n19kbi:seedasync__action_40_loop_40__loop_exit",
          "from": "method:n19kbi:seedasync__action_40_loop_40__loop_entry",
          "to": "method:n19kbi:seedasync__action_40_loop_40__loop_exit",
          "kind": "loop-exit",
          "label": "exit",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_40_loop_40__loop_exit__method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "from": "method:n19kbi:seedasync__action_40_loop_40__loop_exit",
          "to": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "kind": "next",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry__method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body",
          "from": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "to": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body",
          "kind": "loop-body",
          "label": "var roleName in roleNames",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body__method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "from": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body",
          "to": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "kind": "loop-back",
          "label": "continue",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry__method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_exit",
          "from": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry",
          "to": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_exit",
          "kind": "loop-exit",
          "label": "Leaves the loop when the condition no longer holds.",
          "line": 40,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_exit__method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition",
          "from": "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_exit",
          "to": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition",
          "kind": "next",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition__method:n19kbi:seedasync__action_43_seedasync_branch_43_5__true",
          "from": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition",
          "to": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__true",
          "kind": "condition-true",
          "label": "true",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition__method:n19kbi:seedasync__action_43_seedasync_branch_43_5__false",
          "from": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__condition",
          "to": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__false",
          "kind": "condition-false",
          "label": "false",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__true__method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "from": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__true",
          "to": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "kind": "next",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__false__method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "from": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__false",
          "to": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "kind": "next",
          "line": 43,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge__method:n19kbi:seedasync__action_45_seedasync_repository_write_45_6__linear",
          "from": "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
          "to": "method:n19kbi:seedasync__action_45_seedasync_repository_write_45_6__linear",
          "kind": "next",
          "line": 45,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__action_45_seedasync_repository_write_45_6__linear__method:n19kbi:seedasync__action_49_seedasync_await_49_7__await",
          "from": "method:n19kbi:seedasync__action_45_seedasync_repository_write_45_6__linear",
          "to": "method:n19kbi:seedasync__action_49_seedasync_await_49_7__await",
          "kind": "next",
          "line": 49,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_49_seedasync_await_49_7__await__method:n19kbi:seedasync__action_54_seedasync_await_54_8__await",
          "from": "method:n19kbi:seedasync__action_49_seedasync_await_49_7__await",
          "to": "method:n19kbi:seedasync__action_54_seedasync_await_54_8__await",
          "kind": "next",
          "line": 54,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_54_seedasync_await_54_8__await__method:n19kbi:seedasync__action_54_persistence_read_54__linear",
          "from": "method:n19kbi:seedasync__action_54_seedasync_await_54_8__await",
          "to": "method:n19kbi:seedasync__action_54_persistence_read_54__linear",
          "kind": "next",
          "line": 54,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_54_persistence_read_54__linear__method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition",
          "from": "method:n19kbi:seedasync__action_54_persistence_read_54__linear",
          "to": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition__method:n19kbi:seedasync__action_56_seedasync_branch_56_9__true",
          "from": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition",
          "to": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__true",
          "kind": "condition-true",
          "label": "true",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition__method:n19kbi:seedasync__action_56_seedasync_branch_56_9__false",
          "from": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__condition",
          "to": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__false",
          "kind": "condition-false",
          "label": "false",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__true__method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "from": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__true",
          "to": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__false__method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "from": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__false",
          "to": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge__method:n19kbi:seedasync__action_56_branch_56__condition",
          "from": "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
          "to": "method:n19kbi:seedasync__action_56_branch_56__condition",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__condition__method:n19kbi:seedasync__action_56_branch_56__true",
          "from": "method:n19kbi:seedasync__action_56_branch_56__condition",
          "to": "method:n19kbi:seedasync__action_56_branch_56__true",
          "kind": "condition-true",
          "label": "create-admin",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__condition__method:n19kbi:seedasync__action_56_branch_56__false",
          "from": "method:n19kbi:seedasync__action_56_branch_56__condition",
          "to": "method:n19kbi:seedasync__action_56_branch_56__false",
          "kind": "condition-false",
          "label": "admin-exists",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__true__method:n19kbi:seedasync__action_56_branch_56__merge",
          "from": "method:n19kbi:seedasync__action_56_branch_56__true",
          "to": "method:n19kbi:seedasync__action_56_branch_56__merge",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__false__method:n19kbi:seedasync__action_56_branch_56__merge",
          "from": "method:n19kbi:seedasync__action_56_branch_56__false",
          "to": "method:n19kbi:seedasync__action_56_branch_56__merge",
          "kind": "next",
          "line": 56,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_56_branch_56__merge__call_method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
          "from": "method:n19kbi:seedasync__action_56_branch_56__merge",
          "to": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
          "kind": "call",
          "label": "instantiates admin NexusUser with email, subscription, tokens, tenant/security stamps",
          "line": 58,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation___method:n19kbi:seedasync__action_71_persistence_write_71__linear",
          "from": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
          "to": "method:n19kbi:seedasync__action_71_persistence_write_71__linear",
          "kind": "next",
          "line": 71,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_71_persistence_write_71__linear__method:n19kbi:seedasync__action_73_seedasync_repository_write_73_10__linear",
          "from": "method:n19kbi:seedasync__action_71_persistence_write_71__linear",
          "to": "method:n19kbi:seedasync__action_73_seedasync_repository_write_73_10__linear",
          "kind": "next",
          "line": 73,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__action_73_seedasync_repository_write_73_10__linear__method:n19kbi:seedasync__action_74_seedasync_await_74_11__await",
          "from": "method:n19kbi:seedasync__action_73_seedasync_repository_write_73_10__linear",
          "to": "method:n19kbi:seedasync__action_74_seedasync_await_74_11__await",
          "kind": "next",
          "line": 74,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_74_seedasync_await_74_11__await__method:n19kbi:seedasync__action_76_seedasync_await_76_12__await",
          "from": "method:n19kbi:seedasync__action_74_seedasync_await_74_11__await",
          "to": "method:n19kbi:seedasync__action_76_seedasync_await_76_12__await",
          "kind": "next",
          "line": 76,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_76_seedasync_await_76_12__await__method:n19kbi:seedasync__action_76_persistence_write_76__linear",
          "from": "method:n19kbi:seedasync__action_76_seedasync_await_76_12__await",
          "to": "method:n19kbi:seedasync__action_76_persistence_write_76__linear",
          "kind": "next",
          "line": 76,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_76_persistence_write_76__linear__method:n19kbi:seedasync__action_77_seedasync_repository_write_77_13__linear",
          "from": "method:n19kbi:seedasync__action_76_persistence_write_76__linear",
          "to": "method:n19kbi:seedasync__action_77_seedasync_repository_write_77_13__linear",
          "kind": "next",
          "line": 77,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__action_77_seedasync_repository_write_77_13__linear__method:n19kbi:seedasync__action_78_seedasync_await_78_14__await",
          "from": "method:n19kbi:seedasync__action_77_seedasync_repository_write_77_13__linear",
          "to": "method:n19kbi:seedasync__action_78_seedasync_await_78_14__await",
          "kind": "next",
          "line": 78,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_78_seedasync_await_78_14__await__method:n19kbi:seedasync__action_83_seedasync_await_83_15__await",
          "from": "method:n19kbi:seedasync__action_78_seedasync_await_78_14__await",
          "to": "method:n19kbi:seedasync__action_83_seedasync_await_83_15__await",
          "kind": "next",
          "line": 83,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_83_seedasync_await_83_15__await__method:n19kbi:seedasync__action_83_persistence_read_write_83__linear",
          "from": "method:n19kbi:seedasync__action_83_seedasync_await_83_15__await",
          "to": "method:n19kbi:seedasync__action_83_persistence_read_write_83__linear",
          "kind": "next",
          "line": 83,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_83_persistence_read_write_83__linear__method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition",
          "from": "method:n19kbi:seedasync__action_83_persistence_read_write_83__linear",
          "to": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition",
          "kind": "next",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition__method:n19kbi:seedasync__action_84_seedasync_branch_84_16__true",
          "from": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition",
          "to": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__true",
          "kind": "condition-true",
          "label": "true",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition__method:n19kbi:seedasync__action_84_seedasync_branch_84_16__false",
          "from": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__condition",
          "to": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__false",
          "kind": "condition-false",
          "label": "false",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__true__method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "from": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__true",
          "to": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "kind": "next",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__false__method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "from": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__false",
          "to": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "kind": "next",
          "line": 84,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge__call_method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
          "from": "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
          "to": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
          "kind": "call",
          "label": "instantiates sample author 'Giorgio Vasari' if missing",
          "line": 86,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation___method:n19kbi:seedasync__action_87_seedasync_repository_write_87_17__linear",
          "from": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
          "to": "method:n19kbi:seedasync__action_87_seedasync_repository_write_87_17__linear",
          "kind": "next",
          "line": 87,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__action_87_seedasync_repository_write_87_17__linear__method:n19kbi:seedasync__action_88_seedasync_await_88_18__await",
          "from": "method:n19kbi:seedasync__action_87_seedasync_repository_write_87_17__linear",
          "to": "method:n19kbi:seedasync__action_88_seedasync_await_88_18__await",
          "kind": "next",
          "line": 88,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_88_seedasync_await_88_18__await__method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition",
          "from": "method:n19kbi:seedasync__action_88_seedasync_await_88_18__await",
          "to": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition",
          "kind": "next",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition__method:n19kbi:seedasync__action_92_seedasync_branch_92_19__true",
          "from": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition",
          "to": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__true",
          "kind": "condition-true",
          "label": "true",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition__method:n19kbi:seedasync__action_92_seedasync_branch_92_19__false",
          "from": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__condition",
          "to": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__false",
          "kind": "condition-false",
          "label": "false",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__true__method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "from": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__true",
          "to": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "kind": "next",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__false__method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "from": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__false",
          "to": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "kind": "next",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.78
        },
        {
          "id": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge__method:n19kbi:seedasync__action_92_persistence_read_write_92__linear",
          "from": "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
          "to": "method:n19kbi:seedasync__action_92_persistence_read_write_92__linear",
          "kind": "next",
          "line": 92,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_92_persistence_read_write_92__linear__method:n19kbi:seedasync__action_94_seedasync_repository_write_94_20__linear",
          "from": "method:n19kbi:seedasync__action_92_persistence_read_write_92__linear",
          "to": "method:n19kbi:seedasync__action_94_seedasync_repository_write_94_20__linear",
          "kind": "next",
          "line": 94,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__action_94_seedasync_repository_write_94_20__linear__call_method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
          "from": "method:n19kbi:seedasync__action_94_seedasync_repository_write_94_20__linear",
          "to": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
          "kind": "call",
          "label": "creates sample Ebook for admin user with metadata and file path",
          "line": 94,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.88
        },
        {
          "id": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation___method:n19kbi:seedasync__action_105_seedasync_await_105_21__await",
          "from": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
          "to": "method:n19kbi:seedasync__action_105_seedasync_await_105_21__await",
          "kind": "next",
          "line": 105,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.81
        },
        {
          "id": "method:n19kbi:seedasync__action_105_seedasync_await_105_21__await__method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition",
          "from": "method:n19kbi:seedasync__action_105_seedasync_await_105_21__await",
          "to": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition",
          "kind": "fallback",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition__method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__true",
          "from": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition",
          "to": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__true",
          "kind": "condition-true",
          "label": "fallback",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition__method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__false",
          "from": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__condition",
          "to": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__false",
          "kind": "condition-false",
          "label": "otherwise",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__true__method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "from": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__true",
          "to": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "kind": "next",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__false__method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "from": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__false",
          "to": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "kind": "next",
          "line": 109,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.84
        },
        {
          "id": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge__method:n19kbi:seedasync__action_114_error_handling_114__linear",
          "from": "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge",
          "to": "method:n19kbi:seedasync__action_114_error_handling_114__linear",
          "kind": "next",
          "line": 114,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.7
        },
        {
          "id": "method:n19kbi:seedasync__action_114_error_handling_114__linear__method:n19kbi:seedasync__action_114_seedasync_catch_114_23__catch",
          "from": "method:n19kbi:seedasync__action_114_error_handling_114__linear",
          "to": "method:n19kbi:seedasync__action_114_seedasync_catch_114_23__catch",
          "kind": "exception",
          "line": 114,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.86
        },
        {
          "id": "method:n19kbi:seedasync__action_114_seedasync_catch_114_23__catch__implicit_return",
          "from": "method:n19kbi:seedasync__action_114_seedasync_catch_114_23__catch",
          "to": "method:n19kbi:seedasync__implicit_return",
          "kind": "return",
          "line": 118,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "confidence": 0.72
        }
      ],
      "jumpTargets": [
        {
          "id": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties___jump_NexusReader_Domain_Entities_SubscriptionPlan_cs_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "fromNodeId": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
          "kind": "call-target",
          "targetPath": "NexusReader.Domain/Entities/SubscriptionPlan.cs",
          "targetHint": "FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)",
          "line": 30,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "reason": "Call target FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties) in NexusReader.Domain/Entities/SubscriptionPlan.cs could not be matched to an extracted method symbol.",
          "status": "unresolved"
        },
        {
          "id": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation___jump_NexusReader_Domain_Entities_NexusUser_cs_NexusUser_ctor_entity_creation_",
          "fromNodeId": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
          "kind": "call-target",
          "targetPath": "NexusReader.Domain/Entities/NexusUser.cs",
          "targetHint": "NexusUser .ctor (entity creation)",
          "line": 58,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "reason": "Call target NexusUser .ctor (entity creation) in NexusReader.Domain/Entities/NexusUser.cs could not be matched to an extracted method symbol.",
          "status": "unresolved"
        },
        {
          "id": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation___jump_NexusReader_Domain_Entities_Author_cs_Author_ctor_entity_creation_",
          "fromNodeId": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
          "kind": "call-target",
          "targetPath": "NexusReader.Domain/Entities/Author.cs",
          "targetHint": "Author .ctor (entity creation)",
          "line": 86,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "reason": "Call target Author .ctor (entity creation) in NexusReader.Domain/Entities/Author.cs could not be matched to an extracted method symbol.",
          "status": "unresolved"
        },
        {
          "id": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation___jump_NexusReader_Domain_Entities_Ebook_cs_Ebook_ctor_entity_creation_",
          "fromNodeId": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
          "kind": "call-target",
          "targetPath": "NexusReader.Domain/Entities/Ebook.cs",
          "targetHint": "Ebook .ctor (entity creation)",
          "line": 94,
          "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
          "reason": "Call target Ebook .ctor (entity creation) in NexusReader.Domain/Entities/Ebook.cs could not be matched to an extracted method symbol.",
          "status": "unresolved"
        }
      ],
      "exceptionTargets": [],
      "loopBackEdges": [
        "method:n19kbi:seedasync__action_40_loop_40__loop_body__method:n19kbi:seedasync__action_40_loop_40__loop_entry",
        "method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_body__method:n19kbi:seedasync__action_40_seedasync_loop_40_4__loop_entry"
      ],
      "mergeNodeIds": [
        "method:n19kbi:seedasync__action_26_guard_clause_26__merge",
        "method:n19kbi:seedasync__action_26_seedasync_branch_26_2__merge",
        "method:n19kbi:seedasync__action_43_seedasync_branch_43_5__merge",
        "method:n19kbi:seedasync__action_56_seedasync_branch_56_9__merge",
        "method:n19kbi:seedasync__action_56_branch_56__merge",
        "method:n19kbi:seedasync__action_84_seedasync_branch_84_16__merge",
        "method:n19kbi:seedasync__action_92_seedasync_branch_92_19__merge",
        "method:n19kbi:seedasync__action_109_seedasync_fallback_109_22__merge"
      ],
      "language": "csharp",
      "confidence": 0.98,
      "lineSpan": {
        "start": 14,
        "end": 118
      },
      "unsupportedConstructs": [],
      "evidence": [
        {
          "path": "NexusReader.Data/Persistence/DbInitializer.cs",
          "line": 14,
          "summary": "Control-flow fragment extracted for method SeedAsync.",
          "kind": "file-summary"
        }
      ]
    }
  ],
  "unresolvedJumps": [
    {
      "id": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties___jump_NexusReader_Domain_Entities_SubscriptionPlan_cs_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
      "fromNodeId": "method:n19kbi:seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
      "kind": "call-target",
      "targetPath": "NexusReader.Domain/Entities/SubscriptionPlan.cs",
      "targetHint": "FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)",
      "line": 30,
      "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
      "reason": "Call target FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties) in NexusReader.Domain/Entities/SubscriptionPlan.cs could not be matched to an extracted method symbol.",
      "status": "unresolved"
    },
    {
      "id": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation___jump_NexusReader_Domain_Entities_NexusUser_cs_NexusUser_ctor_entity_creation_",
      "fromNodeId": "method:n19kbi:seedasync__call_58_NexusUser_ctor_entity_creation_",
      "kind": "call-target",
      "targetPath": "NexusReader.Domain/Entities/NexusUser.cs",
      "targetHint": "NexusUser .ctor (entity creation)",
      "line": 58,
      "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
      "reason": "Call target NexusUser .ctor (entity creation) in NexusReader.Domain/Entities/NexusUser.cs could not be matched to an extracted method symbol.",
      "status": "unresolved"
    },
    {
      "id": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation___jump_NexusReader_Domain_Entities_Author_cs_Author_ctor_entity_creation_",
      "fromNodeId": "method:n19kbi:seedasync__call_86_Author_ctor_entity_creation_",
      "kind": "call-target",
      "targetPath": "NexusReader.Domain/Entities/Author.cs",
      "targetHint": "Author .ctor (entity creation)",
      "line": 86,
      "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
      "reason": "Call target Author .ctor (entity creation) in NexusReader.Domain/Entities/Author.cs could not be matched to an extracted method symbol.",
      "status": "unresolved"
    },
    {
      "id": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation___jump_NexusReader_Domain_Entities_Ebook_cs_Ebook_ctor_entity_creation_",
      "fromNodeId": "method:n19kbi:seedasync__call_94_Ebook_ctor_entity_creation_",
      "kind": "call-target",
      "targetPath": "NexusReader.Domain/Entities/Ebook.cs",
      "targetHint": "Ebook .ctor (entity creation)",
      "line": 94,
      "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
      "reason": "Call target Ebook .ctor (entity creation) in NexusReader.Domain/Entities/Ebook.cs could not be matched to an extracted method symbol.",
      "status": "unresolved"
    }
  ],
  "diagrams": [
    {
      "id": "file_136c3oe_dbinitializer_cs_neighborhood_view",
      "purpose": "neighborhood-view",
      "title": "DbInitializer Neighborhood",
      "required": true,
      "diagram": {
        "id": "file_136c3oe_dbinitializer_cs_neighborhood_view",
        "kind": "dependency-map",
        "title": "DbInitializer Neighborhood",
        "direction": "LR",
        "nodes": [
          {
            "id": "file_136c3oe_dbinitializer_cs",
            "kind": "service",
            "label": "DbInitializer",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "class_1t4ptj6_dbinitializer",
            "kind": "service",
            "label": "DbInitializer",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "method_n19kbi_seedasync",
            "kind": "method",
            "label": "SeedAsync()",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 14
          },
          {
            "id": "file_1b03oou_subscriptionplan_cs",
            "kind": "dependency",
            "label": "SubscriptionPlan",
            "shape": "doc",
            "sourcePath": "NexusReader.Domain/Entities/SubscriptionPlan.cs"
          },
          {
            "id": "file_xcxh5w_nexususer_cs",
            "kind": "dependency",
            "label": "NexusUser",
            "shape": "doc",
            "sourcePath": "NexusReader.Domain/Entities/NexusUser.cs"
          },
          {
            "id": "file_1y56eud_author_cs",
            "kind": "dependency",
            "label": "Author",
            "shape": "doc",
            "sourcePath": "NexusReader.Domain/Entities/Author.cs"
          },
          {
            "id": "file_lcvwj6_ebook_cs",
            "kind": "dependency",
            "label": "Ebook",
            "shape": "doc",
            "sourcePath": "NexusReader.Domain/Entities/Ebook.cs"
          },
          {
            "id": "file_1pacvtg_appdbcontext_cs",
            "kind": "dependency",
            "label": "AppDbContext",
            "shape": "doc",
            "sourcePath": "NexusReader.Data/Persistence/AppDbContext.cs"
          }
        ],
        "edges": [
          {
            "id": "edge_uail6a_imports",
            "from": "file_136c3oe_dbinitializer_cs",
            "to": "file_1b03oou_subscriptionplan_cs",
            "semanticLabel": "SubscriptionPlan",
            "visibleLabel": "SubscriptionPlan",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "edge_lrc9cg_imports",
            "from": "file_136c3oe_dbinitializer_cs",
            "to": "file_xcxh5w_nexususer_cs",
            "semanticLabel": "NexusUser",
            "visibleLabel": "NexusUser",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "edge_151gejr_imports",
            "from": "file_136c3oe_dbinitializer_cs",
            "to": "file_1y56eud_author_cs",
            "semanticLabel": "Author",
            "visibleLabel": "Author",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "edge_4foovb_imports",
            "from": "file_136c3oe_dbinitializer_cs",
            "to": "file_lcvwj6_ebook_cs",
            "semanticLabel": "Ebook",
            "visibleLabel": "Ebook",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "edge_1fze3yr_imports",
            "from": "file_136c3oe_dbinitializer_cs",
            "to": "file_1pacvtg_appdbcontext_cs",
            "semanticLabel": "AppDbContext",
            "visibleLabel": "AppDbContext",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          }
        ],
        "metadata": {
          "evidencePaths": [
            "NexusReader.Data/Persistence/DbInitializer.cs"
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "flowchart LR\n    class_1t4ptj6_dbinitializer(\"DbInitializer\")\n    file_136c3oe_dbinitializer_cs(\"DbInitializer\")\n    method_n19kbi_seedasync[[\"SeedAsync()\"]]\n    file_1b03oou_subscriptionplan_cs[/\"SubscriptionPlan\"/]\n    file_1pacvtg_appdbcontext_cs[/\"AppDbContext\"/]\n    file_1y56eud_author_cs[/\"Author\"/]\n    file_lcvwj6_ebook_cs[/\"Ebook\"/]\n    file_xcxh5w_nexususer_cs[/\"NexusUser\"/]\n    file_136c3oe_dbinitializer_cs -->|SubscriptionPlan| file_1b03oou_subscriptionplan_cs\n    file_136c3oe_dbinitializer_cs -->|AppDbContext| file_1pacvtg_appdbcontext_cs\n    file_136c3oe_dbinitializer_cs -->|Author| file_1y56eud_author_cs\n    file_136c3oe_dbinitializer_cs -->|Ebook| file_lcvwj6_ebook_cs\n    file_136c3oe_dbinitializer_cs -->|NexusUser| file_xcxh5w_nexususer_cs",
      "warnings": []
    },
    {
      "id": "file_136c3oe_dbinitializer_cs_execution_view",
      "purpose": "execution-overview",
      "title": "DbInitializer Execution Overview",
      "required": true,
      "diagram": {
        "id": "file_136c3oe_dbinitializer_cs_execution_view",
        "kind": "method-flow",
        "title": "DbInitializer Execution Overview",
        "direction": "TD",
        "nodes": [
          {
            "id": "class_1t4ptj6_dbinitializer",
            "kind": "service",
            "label": "DbInitializer",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs"
          },
          {
            "id": "method_n19kbi_seedasync",
            "kind": "method",
            "label": "SeedAsync()",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 14
          },
          {
            "id": "unresolved_unresolved_148q98d_call_target",
            "kind": "prompt",
            "label": "Unresolved: FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 30
          },
          {
            "id": "unresolved_unresolved_v6805b_call_target",
            "kind": "prompt",
            "label": "Unresolved: NexusUser .ctor (entity creation)",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 58
          },
          {
            "id": "unresolved_unresolved_t3ot5v_call_target",
            "kind": "prompt",
            "label": "Unresolved: Author .ctor (entity creation)",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 86
          },
          {
            "id": "unresolved_unresolved_8fs4dr_call_target",
            "kind": "prompt",
            "label": "Unresolved: Ebook .ctor (entity creation)",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "unresolved_unresolved_17a2h42_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: dbContext.Roles.Add(new IdentityRole { Name = roleName, NormalizedName = roleName.ToUpper() });",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 45
          },
          {
            "id": "unresolved_unresolved_d456c0_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: dbContext.Users.Add(adminUser);",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 73
          },
          {
            "id": "unresolved_unresolved_sdjm8i_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: dbContext.UserRoles.Add(new IdentityUserRole<string> { UserId = adminUser.Id, RoleId = adminRole.Id });",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 77
          },
          {
            "id": "unresolved_unresolved_w7mczj_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: dbContext.Authors.Add(author);",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 87
          },
          {
            "id": "unresolved_unresolved_uowqml_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: dbContext.Ebooks.Add(new Ebook",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "unresolved_unresolved_30rgkl_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: await dbContextFactory.CreateDbContextAsync() — obtains AppDbContext for persistence operations",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          }
        ],
        "edges": [
          {
            "id": "class_1t4ptj6_dbinitializer_contains_method_n19kbi_seedasync",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "method_n19kbi_seedasync",
            "semanticLabel": "contains executable method",
            "visibleLabel": "contains",
            "relation": "calls",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 14
          },
          {
            "id": "unresolved_148q98d_call_target_edge",
            "from": "method_n19kbi_seedasync",
            "to": "unresolved_unresolved_148q98d_call_target",
            "semanticLabel": "Call target was discovered in the summary but could not be matched to an extracted method symbol.",
            "visibleLabel": "unresolved call",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 30
          },
          {
            "id": "unresolved_v6805b_call_target_edge",
            "from": "method_n19kbi_seedasync",
            "to": "unresolved_unresolved_v6805b_call_target",
            "semanticLabel": "Call target was discovered in the summary but could not be matched to an extracted method symbol.",
            "visibleLabel": "unresolved call",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 58
          },
          {
            "id": "unresolved_t3ot5v_call_target_edge",
            "from": "method_n19kbi_seedasync",
            "to": "unresolved_unresolved_t3ot5v_call_target",
            "semanticLabel": "Call target was discovered in the summary but could not be matched to an extracted method symbol.",
            "visibleLabel": "unresolved call",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 86
          },
          {
            "id": "unresolved_8fs4dr_call_target_edge",
            "from": "method_n19kbi_seedasync",
            "to": "unresolved_unresolved_8fs4dr_call_target",
            "semanticLabel": "Call target was discovered in the summary but could not be matched to an extracted method symbol.",
            "visibleLabel": "unresolved call",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "unresolved_17a2h42_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_17a2h42_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 45
          },
          {
            "id": "unresolved_d456c0_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_d456c0_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 73
          },
          {
            "id": "unresolved_sdjm8i_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_sdjm8i_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 77
          },
          {
            "id": "unresolved_w7mczj_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_w7mczj_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 87
          },
          {
            "id": "unresolved_uowqml_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_uowqml_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "unresolved_30rgkl_interaction_target_edge",
            "from": "class_1t4ptj6_dbinitializer",
            "to": "unresolved_unresolved_30rgkl_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          }
        ],
        "metadata": {
          "evidencePaths": [
            "NexusReader.Data/Persistence/DbInitializer.cs"
          ],
          "warnings": [
            "Execution overview includes unresolved targets. Use validation artifacts before treating the flow as complete."
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "flowchart TD\n    class_1t4ptj6_dbinitializer(\"DbInitializer\")\n    method_n19kbi_seedasync[[\"SeedAsync()\"]]\n    unresolved_unresolved_148q98d_call_target{\"Unresolved: FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)\"}\n    unresolved_unresolved_17a2h42_interaction_target{\"Unresolved: dbContext.Roles.Add(new IdentityRole { Name = roleName, NormalizedName = roleName.ToUpper() });\"}\n    unresolved_unresolved_30rgkl_interaction_target{\"Unresolved: await dbContextFactory.CreateDbContextAsync() — obtains AppDbContext for persistence operations\"}\n    unresolved_unresolved_8fs4dr_call_target{\"Unresolved: Ebook .ctor (entity creation)\"}\n    unresolved_unresolved_d456c0_interaction_target{\"Unresolved: dbContext.Users.Add(adminUser);\"}\n    unresolved_unresolved_sdjm8i_interaction_target{\"Unresolved: dbContext.UserRoles.Add(new IdentityUserRole<string> { UserId = adminUser.Id, RoleId = adminRole.Id });\"}\n    unresolved_unresolved_t3ot5v_call_target{\"Unresolved: Author .ctor (entity creation)\"}\n    unresolved_unresolved_uowqml_interaction_target{\"Unresolved: dbContext.Ebooks.Add(new Ebook\"}\n    unresolved_unresolved_v6805b_call_target{\"Unresolved: NexusUser .ctor (entity creation)\"}\n    unresolved_unresolved_w7mczj_interaction_target{\"Unresolved: dbContext.Authors.Add(author);\"}\n    class_1t4ptj6_dbinitializer -->|contains| method_n19kbi_seedasync\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_17a2h42_interaction_target\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_30rgkl_interaction_target\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_d456c0_interaction_target\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_sdjm8i_interaction_target\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_uowqml_interaction_target\n    class_1t4ptj6_dbinitializer -->|unresolved interaction| unresolved_unresolved_w7mczj_interaction_target\n    method_n19kbi_seedasync -->|unresolved call| unresolved_unresolved_148q98d_call_target\n    method_n19kbi_seedasync -->|unresolved call| unresolved_unresolved_8fs4dr_call_target\n    method_n19kbi_seedasync -->|unresolved call| unresolved_unresolved_t3ot5v_call_target\n    method_n19kbi_seedasync -->|unresolved call| unresolved_unresolved_v6805b_call_target",
      "warnings": []
    },
    {
      "id": "method_n19kbi_seedasync__fragment_diagram",
      "purpose": "control-flow",
      "title": "SeedAsync() Control Flow",
      "required": true,
      "diagram": {
        "id": "method_n19kbi_seedasync__fragment_diagram",
        "kind": "control-flow",
        "title": "SeedAsync() Control Flow",
        "direction": "TD",
        "nodes": [
          {
            "id": "method_n19kbi_seedasync__entry",
            "kind": "step",
            "label": "SeedAsync entry",
            "shape": "stadium",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 14
          },
          {
            "id": "method_n19kbi_seedasync__action_16_resource_acquire_16__linear",
            "kind": "step",
            "label": "Create service scope and resolve services",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 16
          },
          {
            "id": "method_n19kbi_seedasync__action_19_seedasync_await_19_0__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          },
          {
            "id": "method_n19kbi_seedasync__action_19_external_call_19__linear",
            "kind": "dependency",
            "label": "Create DbContext async",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          },
          {
            "id": "method_n19kbi_seedasync__action_21_seedasync_try_21_1__try",
            "kind": "step",
            "label": "Begins protected execution",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 21
          },
          {
            "id": "method_n19kbi_seedasync__action_23_log_23__linear",
            "kind": "step",
            "label": "Starting seeding",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 23
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__condition",
            "kind": "step",
            "label": "!dbContext.SubscriptionPlans.Any()",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__true",
            "kind": "step",
            "label": "add-plans",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__false",
            "kind": "step",
            "label": "skip",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition",
            "kind": "step",
            "label": "!dbContext.SubscriptionPlans.Any()",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_28_persistence_write_28__linear",
            "kind": "step",
            "label": "AddRange SubscriptionPlans",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 28
          },
          {
            "id": "method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
            "kind": "method",
            "label": "FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 30
          },
          {
            "id": "method_n19kbi_seedasync__action_34_seedasync_await_34_3__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 34
          },
          {
            "id": "method_n19kbi_seedasync__action_35_log_35__linear",
            "kind": "step",
            "label": "Seed progress/info logs",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 35
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "kind": "step",
            "label": "Seed roles (Admin, User)",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_body",
            "kind": "step",
            "label": "foreach roleName in roleNames -> checks dbContext.Roles.Any(...) and adds missing IdentityRole entries; then SaveChangesAsync() (lines 40-49, 49)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_exit",
            "kind": "step",
            "label": "exit loop",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "kind": "step",
            "label": "var roleName in roleNames",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body",
            "kind": "step",
            "label": "foreach (var roleName in roleNames)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit",
            "kind": "step",
            "label": "Leaves the loop when the condition no longer holds.",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition",
            "kind": "step",
            "label": "!roleExist",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear",
            "kind": "dependency",
            "label": "Writes repository or persistence state",
            "shape": "cyl",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 45
          },
          {
            "id": "method_n19kbi_seedasync__action_49_seedasync_await_49_7__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 49
          },
          {
            "id": "method_n19kbi_seedasync__action_54_seedasync_await_54_8__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 54
          },
          {
            "id": "method_n19kbi_seedasync__action_54_persistence_read_54__linear",
            "kind": "step",
            "label": "Check for existing admin user",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 54
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition",
            "kind": "step",
            "label": "adminUser == null",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__condition",
            "kind": "step",
            "label": "adminUser == null",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__true",
            "kind": "step",
            "label": "create-admin",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__false",
            "kind": "step",
            "label": "admin-exists",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_",
            "kind": "method",
            "label": "NexusUser .ctor (entity creation)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 58
          },
          {
            "id": "method_n19kbi_seedasync__action_71_persistence_write_71__linear",
            "kind": "step",
            "label": "Create admin user and save",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 71
          },
          {
            "id": "method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear",
            "kind": "dependency",
            "label": "Writes repository or persistence state",
            "shape": "cyl",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 73
          },
          {
            "id": "method_n19kbi_seedasync__action_74_seedasync_await_74_11__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 74
          },
          {
            "id": "method_n19kbi_seedasync__action_76_seedasync_await_76_12__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 76
          },
          {
            "id": "method_n19kbi_seedasync__action_76_persistence_write_76__linear",
            "kind": "step",
            "label": "Assign Admin role to user",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 76
          },
          {
            "id": "method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear",
            "kind": "dependency",
            "label": "Writes repository or persistence state",
            "shape": "cyl",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 77
          },
          {
            "id": "method_n19kbi_seedasync__action_78_seedasync_await_78_14__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 78
          },
          {
            "id": "method_n19kbi_seedasync__action_83_seedasync_await_83_15__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 83
          },
          {
            "id": "method_n19kbi_seedasync__action_83_persistence_read_write_83__linear",
            "kind": "step",
            "label": "Ensure sample Author exists",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 83
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition",
            "kind": "step",
            "label": "author == null",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_",
            "kind": "method",
            "label": "Author .ctor (entity creation)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 86
          },
          {
            "id": "method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear",
            "kind": "dependency",
            "label": "Writes repository or persistence state",
            "shape": "cyl",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 87
          },
          {
            "id": "method_n19kbi_seedasync__action_88_seedasync_await_88_18__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 88
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition",
            "kind": "step",
            "label": "!dbContext.Ebooks.Any(e => e.UserId == adminUser.Id)",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_persistence_read_write_92__linear",
            "kind": "step",
            "label": "Add sample Ebook for admin user",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear",
            "kind": "dependency",
            "label": "Writes repository or persistence state",
            "shape": "cyl",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_",
            "kind": "method",
            "label": "Ebook .ctor (entity creation)",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "method_n19kbi_seedasync__action_105_seedasync_await_105_21__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 105
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition",
            "kind": "step",
            "label": "Falls back to alternate path",
            "shape": "diamond",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true",
            "kind": "step",
            "label": "fallback",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false",
            "kind": "step",
            "label": "otherwise",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_114_error_handling_114__linear",
            "kind": "step",
            "label": "Top-level seeding exception catch",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 114
          },
          {
            "id": "method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch",
            "kind": "step",
            "label": "catch Exception ex",
            "shape": "rounded",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 114
          },
          {
            "id": "method_n19kbi_seedasync__implicit_return",
            "kind": "return",
            "label": "return",
            "shape": "stadium",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 118
          }
        ],
        "edges": [
          {
            "id": "method_n19kbi_seedasync__entry__method_n19kbi_seedasync__action_16_resource_acquire_16__linear",
            "from": "method_n19kbi_seedasync__entry",
            "to": "method_n19kbi_seedasync__action_16_resource_acquire_16__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 16
          },
          {
            "id": "method_n19kbi_seedasync__action_16_resource_acquire_16__linear__method_n19kbi_seedasync__action_19_seedasync_await_19_0__await",
            "from": "method_n19kbi_seedasync__action_16_resource_acquire_16__linear",
            "to": "method_n19kbi_seedasync__action_19_seedasync_await_19_0__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          },
          {
            "id": "method_n19kbi_seedasync__action_19_seedasync_await_19_0__await__method_n19kbi_seedasync__action_19_external_call_19__linear",
            "from": "method_n19kbi_seedasync__action_19_seedasync_await_19_0__await",
            "to": "method_n19kbi_seedasync__action_19_external_call_19__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 19
          },
          {
            "id": "method_n19kbi_seedasync__action_19_external_call_19__linear__method_n19kbi_seedasync__action_21_seedasync_try_21_1__try",
            "from": "method_n19kbi_seedasync__action_19_external_call_19__linear",
            "to": "method_n19kbi_seedasync__action_21_seedasync_try_21_1__try",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 21
          },
          {
            "id": "method_n19kbi_seedasync__action_21_seedasync_try_21_1__try__method_n19kbi_seedasync__action_23_log_23__linear",
            "from": "method_n19kbi_seedasync__action_21_seedasync_try_21_1__try",
            "to": "method_n19kbi_seedasync__action_23_log_23__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 23
          },
          {
            "id": "method_n19kbi_seedasync__action_23_log_23__linear__method_n19kbi_seedasync__action_26_guard_clause_26__condition",
            "from": "method_n19kbi_seedasync__action_23_log_23__linear",
            "to": "method_n19kbi_seedasync__action_26_guard_clause_26__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__condition__method_n19kbi_seedasync__action_26_guard_clause_26__true",
            "from": "method_n19kbi_seedasync__action_26_guard_clause_26__condition",
            "to": "method_n19kbi_seedasync__action_26_guard_clause_26__true",
            "semanticLabel": "add-plans",
            "visibleLabel": "add-plans",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__condition__method_n19kbi_seedasync__action_26_guard_clause_26__false",
            "from": "method_n19kbi_seedasync__action_26_guard_clause_26__condition",
            "to": "method_n19kbi_seedasync__action_26_guard_clause_26__false",
            "semanticLabel": "skip",
            "visibleLabel": "skip",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__true__method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "from": "method_n19kbi_seedasync__action_26_guard_clause_26__true",
            "to": "method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__false__method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "from": "method_n19kbi_seedasync__action_26_guard_clause_26__false",
            "to": "method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_guard_clause_26__merge__method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition",
            "from": "method_n19kbi_seedasync__action_26_guard_clause_26__merge",
            "to": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition__method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true",
            "from": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition",
            "to": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition__method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false",
            "from": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition",
            "to": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true__method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "from": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true",
            "to": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false__method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "from": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false",
            "to": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 26
          },
          {
            "id": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge__method_n19kbi_seedasync__action_28_persistence_write_28__linear",
            "from": "method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge",
            "to": "method_n19kbi_seedasync__action_28_persistence_write_28__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 28
          },
          {
            "id": "method_n19kbi_seedasync__action_28_persistence_write_28__linear__call_method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
            "from": "method_n19kbi_seedasync__action_28_persistence_write_28__linear",
            "to": "method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
            "semanticLabel": "used to set Id and PlanName when creating SubscriptionPlan instances",
            "visibleLabel": "used to set Id and PlanName when creating SubscriptionPlan instances",
            "relation": "calls",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 30
          },
          {
            "id": "method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties___method_n19kbi_seedasync__action_34_seedasync_await_34_3__await",
            "from": "method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_",
            "to": "method_n19kbi_seedasync__action_34_seedasync_await_34_3__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 34
          },
          {
            "id": "method_n19kbi_seedasync__action_34_seedasync_await_34_3__await__method_n19kbi_seedasync__action_35_log_35__linear",
            "from": "method_n19kbi_seedasync__action_34_seedasync_await_34_3__await",
            "to": "method_n19kbi_seedasync__action_35_log_35__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 35
          },
          {
            "id": "method_n19kbi_seedasync__action_35_log_35__linear__method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "from": "method_n19kbi_seedasync__action_35_log_35__linear",
            "to": "method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_entry__method_n19kbi_seedasync__action_40_loop_40__loop_body",
            "from": "method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "to": "method_n19kbi_seedasync__action_40_loop_40__loop_body",
            "semanticLabel": "iterate",
            "visibleLabel": "iterate",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_body__method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "from": "method_n19kbi_seedasync__action_40_loop_40__loop_body",
            "to": "method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "semanticLabel": "continue",
            "visibleLabel": "continue",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_entry__method_n19kbi_seedasync__action_40_loop_40__loop_exit",
            "from": "method_n19kbi_seedasync__action_40_loop_40__loop_entry",
            "to": "method_n19kbi_seedasync__action_40_loop_40__loop_exit",
            "semanticLabel": "exit",
            "visibleLabel": "exit",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_loop_40__loop_exit__method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "from": "method_n19kbi_seedasync__action_40_loop_40__loop_exit",
            "to": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry__method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body",
            "from": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "to": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body",
            "semanticLabel": "var roleName in roleNames",
            "visibleLabel": "var roleName in roleNames",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body__method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "from": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body",
            "to": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "semanticLabel": "continue",
            "visibleLabel": "continue",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry__method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit",
            "from": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry",
            "to": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit",
            "semanticLabel": "Leaves the loop when the condition no longer holds.",
            "visibleLabel": "Leaves the loop when the condition no longer holds.",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 40
          },
          {
            "id": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit__method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition",
            "from": "method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit",
            "to": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition__method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true",
            "from": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition",
            "to": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition__method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false",
            "from": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition",
            "to": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true__method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "from": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true",
            "to": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false__method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "from": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false",
            "to": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 43
          },
          {
            "id": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge__method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear",
            "from": "method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge",
            "to": "method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 45
          },
          {
            "id": "method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear__method_n19kbi_seedasync__action_49_seedasync_await_49_7__await",
            "from": "method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear",
            "to": "method_n19kbi_seedasync__action_49_seedasync_await_49_7__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 49
          },
          {
            "id": "method_n19kbi_seedasync__action_49_seedasync_await_49_7__await__method_n19kbi_seedasync__action_54_seedasync_await_54_8__await",
            "from": "method_n19kbi_seedasync__action_49_seedasync_await_49_7__await",
            "to": "method_n19kbi_seedasync__action_54_seedasync_await_54_8__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 54
          },
          {
            "id": "method_n19kbi_seedasync__action_54_seedasync_await_54_8__await__method_n19kbi_seedasync__action_54_persistence_read_54__linear",
            "from": "method_n19kbi_seedasync__action_54_seedasync_await_54_8__await",
            "to": "method_n19kbi_seedasync__action_54_persistence_read_54__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 54
          },
          {
            "id": "method_n19kbi_seedasync__action_54_persistence_read_54__linear__method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition",
            "from": "method_n19kbi_seedasync__action_54_persistence_read_54__linear",
            "to": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition__method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true",
            "from": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition",
            "to": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition__method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false",
            "from": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition",
            "to": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true__method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "from": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true",
            "to": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false__method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "from": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false",
            "to": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge__method_n19kbi_seedasync__action_56_branch_56__condition",
            "from": "method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge",
            "to": "method_n19kbi_seedasync__action_56_branch_56__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__condition__method_n19kbi_seedasync__action_56_branch_56__true",
            "from": "method_n19kbi_seedasync__action_56_branch_56__condition",
            "to": "method_n19kbi_seedasync__action_56_branch_56__true",
            "semanticLabel": "create-admin",
            "visibleLabel": "create-admin",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__condition__method_n19kbi_seedasync__action_56_branch_56__false",
            "from": "method_n19kbi_seedasync__action_56_branch_56__condition",
            "to": "method_n19kbi_seedasync__action_56_branch_56__false",
            "semanticLabel": "admin-exists",
            "visibleLabel": "admin-exists",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__true__method_n19kbi_seedasync__action_56_branch_56__merge",
            "from": "method_n19kbi_seedasync__action_56_branch_56__true",
            "to": "method_n19kbi_seedasync__action_56_branch_56__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__false__method_n19kbi_seedasync__action_56_branch_56__merge",
            "from": "method_n19kbi_seedasync__action_56_branch_56__false",
            "to": "method_n19kbi_seedasync__action_56_branch_56__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 56
          },
          {
            "id": "method_n19kbi_seedasync__action_56_branch_56__merge__call_method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_",
            "from": "method_n19kbi_seedasync__action_56_branch_56__merge",
            "to": "method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_",
            "semanticLabel": "instantiates admin NexusUser with email, subscription, tokens, tenant/security stamps",
            "visibleLabel": "instantiates admin NexusUser with email, subscription, tokens, tenant / security stamps",
            "relation": "calls",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 58
          },
          {
            "id": "method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation___method_n19kbi_seedasync__action_71_persistence_write_71__linear",
            "from": "method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_",
            "to": "method_n19kbi_seedasync__action_71_persistence_write_71__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 71
          },
          {
            "id": "method_n19kbi_seedasync__action_71_persistence_write_71__linear__method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear",
            "from": "method_n19kbi_seedasync__action_71_persistence_write_71__linear",
            "to": "method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 73
          },
          {
            "id": "method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear__method_n19kbi_seedasync__action_74_seedasync_await_74_11__await",
            "from": "method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear",
            "to": "method_n19kbi_seedasync__action_74_seedasync_await_74_11__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 74
          },
          {
            "id": "method_n19kbi_seedasync__action_74_seedasync_await_74_11__await__method_n19kbi_seedasync__action_76_seedasync_await_76_12__await",
            "from": "method_n19kbi_seedasync__action_74_seedasync_await_74_11__await",
            "to": "method_n19kbi_seedasync__action_76_seedasync_await_76_12__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 76
          },
          {
            "id": "method_n19kbi_seedasync__action_76_seedasync_await_76_12__await__method_n19kbi_seedasync__action_76_persistence_write_76__linear",
            "from": "method_n19kbi_seedasync__action_76_seedasync_await_76_12__await",
            "to": "method_n19kbi_seedasync__action_76_persistence_write_76__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 76
          },
          {
            "id": "method_n19kbi_seedasync__action_76_persistence_write_76__linear__method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear",
            "from": "method_n19kbi_seedasync__action_76_persistence_write_76__linear",
            "to": "method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 77
          },
          {
            "id": "method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear__method_n19kbi_seedasync__action_78_seedasync_await_78_14__await",
            "from": "method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear",
            "to": "method_n19kbi_seedasync__action_78_seedasync_await_78_14__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 78
          },
          {
            "id": "method_n19kbi_seedasync__action_78_seedasync_await_78_14__await__method_n19kbi_seedasync__action_83_seedasync_await_83_15__await",
            "from": "method_n19kbi_seedasync__action_78_seedasync_await_78_14__await",
            "to": "method_n19kbi_seedasync__action_83_seedasync_await_83_15__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 83
          },
          {
            "id": "method_n19kbi_seedasync__action_83_seedasync_await_83_15__await__method_n19kbi_seedasync__action_83_persistence_read_write_83__linear",
            "from": "method_n19kbi_seedasync__action_83_seedasync_await_83_15__await",
            "to": "method_n19kbi_seedasync__action_83_persistence_read_write_83__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 83
          },
          {
            "id": "method_n19kbi_seedasync__action_83_persistence_read_write_83__linear__method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition",
            "from": "method_n19kbi_seedasync__action_83_persistence_read_write_83__linear",
            "to": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition__method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true",
            "from": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition",
            "to": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition__method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false",
            "from": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition",
            "to": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true__method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "from": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true",
            "to": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false__method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "from": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false",
            "to": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 84
          },
          {
            "id": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge__call_method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_",
            "from": "method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge",
            "to": "method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_",
            "semanticLabel": "instantiates sample author 'Giorgio Vasari' if missing",
            "visibleLabel": "calls",
            "relation": "calls",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 86
          },
          {
            "id": "method_n19kbi_seedasync__call_86_Author_ctor_entity_creation___method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear",
            "from": "method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_",
            "to": "method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 87
          },
          {
            "id": "method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear__method_n19kbi_seedasync__action_88_seedasync_await_88_18__await",
            "from": "method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear",
            "to": "method_n19kbi_seedasync__action_88_seedasync_await_88_18__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 88
          },
          {
            "id": "method_n19kbi_seedasync__action_88_seedasync_await_88_18__await__method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition",
            "from": "method_n19kbi_seedasync__action_88_seedasync_await_88_18__await",
            "to": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition__method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true",
            "from": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition",
            "to": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition__method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false",
            "from": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition",
            "to": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true__method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "from": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true",
            "to": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false__method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "from": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false",
            "to": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge__method_n19kbi_seedasync__action_92_persistence_read_write_92__linear",
            "from": "method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge",
            "to": "method_n19kbi_seedasync__action_92_persistence_read_write_92__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 92
          },
          {
            "id": "method_n19kbi_seedasync__action_92_persistence_read_write_92__linear__method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear",
            "from": "method_n19kbi_seedasync__action_92_persistence_read_write_92__linear",
            "to": "method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear__call_method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_",
            "from": "method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear",
            "to": "method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_",
            "semanticLabel": "creates sample Ebook for admin user with metadata and file path",
            "visibleLabel": "creates sample Ebook for admin user with metadata and file path",
            "relation": "calls",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 94
          },
          {
            "id": "method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation___method_n19kbi_seedasync__action_105_seedasync_await_105_21__await",
            "from": "method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_",
            "to": "method_n19kbi_seedasync__action_105_seedasync_await_105_21__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 105
          },
          {
            "id": "method_n19kbi_seedasync__action_105_seedasync_await_105_21__await__method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition",
            "from": "method_n19kbi_seedasync__action_105_seedasync_await_105_21__await",
            "to": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition",
            "semanticLabel": "fallback",
            "visibleLabel": "fallback",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition__method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true",
            "from": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition",
            "to": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true",
            "semanticLabel": "fallback",
            "visibleLabel": "fallback",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition__method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false",
            "from": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition",
            "to": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false",
            "semanticLabel": "otherwise",
            "visibleLabel": "otherwise",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true__method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "from": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true",
            "to": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false__method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "from": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false",
            "to": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 109
          },
          {
            "id": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge__method_n19kbi_seedasync__action_114_error_handling_114__linear",
            "from": "method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge",
            "to": "method_n19kbi_seedasync__action_114_error_handling_114__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 114
          },
          {
            "id": "method_n19kbi_seedasync__action_114_error_handling_114__linear__method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch",
            "from": "method_n19kbi_seedasync__action_114_error_handling_114__linear",
            "to": "method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch",
            "semanticLabel": "exception",
            "visibleLabel": "exception",
            "relation": "transforms",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 114
          },
          {
            "id": "method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch__implicit_return",
            "from": "method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch",
            "to": "method_n19kbi_seedasync__implicit_return",
            "semanticLabel": "return",
            "visibleLabel": "return",
            "relation": "returns",
            "sourcePath": "NexusReader.Data/Persistence/DbInitializer.cs",
            "sourceLine": 118
          }
        ],
        "metadata": {
          "evidencePaths": [
            "NexusReader.Data/Persistence/DbInitializer.cs"
          ],
          "warnings": [
            "Call target FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties) in NexusReader.Domain/Entities/SubscriptionPlan.cs could not be matched to an extracted method symbol.",
            "Call target NexusUser .ctor (entity creation) in NexusReader.Domain/Entities/NexusUser.cs could not be matched to an extracted method symbol.",
            "Call target Author .ctor (entity creation) in NexusReader.Domain/Entities/Author.cs could not be matched to an extracted method symbol.",
            "Call target Ebook .ctor (entity creation) in NexusReader.Domain/Entities/Ebook.cs could not be matched to an extracted method symbol."
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "---\nconfig:\n  flowchart:\n    defaultRenderer: \"elk\"\n---\nflowchart TD\n    method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_[[\"FreeId / FreeName / ProId / ProName / EnterpriseId / EnterpriseName (static properties)\"]]\n    method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_[[\"NexusUser .ctor (entity creation)\"]]\n    method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_[[\"Author .ctor (entity creation)\"]]\n    method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_[[\"Ebook .ctor (entity creation)\"]]\n    method_n19kbi_seedasync__action_105_seedasync_await_105_21__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition{\"Falls back to alternate path\"}\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false(\"otherwise\")\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge(\"merge\")\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true(\"fallback\")\n    method_n19kbi_seedasync__action_114_error_handling_114__linear(\"Top-level seeding exception catch\")\n    method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch(\"catch Exception ex\")\n    method_n19kbi_seedasync__action_16_resource_acquire_16__linear(\"Create service scope and resolve services\")\n    method_n19kbi_seedasync__action_19_seedasync_await_19_0__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_21_seedasync_try_21_1__try(\"Begins protected execution\")\n    method_n19kbi_seedasync__action_23_log_23__linear(\"Starting seeding\")\n    method_n19kbi_seedasync__action_26_guard_clause_26__condition{\"!dbContext.SubscriptionPlans.Any()\"}\n    method_n19kbi_seedasync__action_26_guard_clause_26__false(\"skip\")\n    method_n19kbi_seedasync__action_26_guard_clause_26__merge(\"merge\")\n    method_n19kbi_seedasync__action_26_guard_clause_26__true(\"add-plans\")\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition{\"!dbContext.SubscriptionPlans.Any()\"}\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false(\"false\")\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge(\"merge\")\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true(\"true\")\n    method_n19kbi_seedasync__action_28_persistence_write_28__linear(\"AddRange SubscriptionPlans\")\n    method_n19kbi_seedasync__action_34_seedasync_await_34_3__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_35_log_35__linear(\"Seed progress/info logs\")\n    method_n19kbi_seedasync__action_40_loop_40__loop_body[[\"foreach roleName in roleNames -> checks dbContext.Roles.Any(...) and adds missing IdentityRole entries; then SaveChangesAsync() (lines 40-49, 49)\"]]\n    method_n19kbi_seedasync__action_40_loop_40__loop_entry(\"Seed roles (Admin, User)\")\n    method_n19kbi_seedasync__action_40_loop_40__loop_exit(\"exit loop\")\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body[[\"foreach (var roleName in roleNames)\"]]\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry(\"var roleName in roleNames\")\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit(\"Leaves the loop when the condition no longer holds.\")\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition{\"!roleExist\"}\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false(\"false\")\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge(\"merge\")\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true(\"true\")\n    method_n19kbi_seedasync__action_49_seedasync_await_49_7__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_54_persistence_read_54__linear(\"Check for existing admin user\")\n    method_n19kbi_seedasync__action_54_seedasync_await_54_8__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_56_branch_56__condition{\"adminUser == null\"}\n    method_n19kbi_seedasync__action_56_branch_56__false(\"admin-exists\")\n    method_n19kbi_seedasync__action_56_branch_56__merge(\"merge\")\n    method_n19kbi_seedasync__action_56_branch_56__true(\"create-admin\")\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition{\"adminUser == null\"}\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false(\"false\")\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge(\"merge\")\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true(\"true\")\n    method_n19kbi_seedasync__action_71_persistence_write_71__linear(\"Create admin user and save\")\n    method_n19kbi_seedasync__action_74_seedasync_await_74_11__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_76_persistence_write_76__linear(\"Assign Admin role to user\")\n    method_n19kbi_seedasync__action_76_seedasync_await_76_12__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_78_seedasync_await_78_14__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_83_persistence_read_write_83__linear(\"Ensure sample Author exists\")\n    method_n19kbi_seedasync__action_83_seedasync_await_83_15__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition{\"author == null\"}\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false(\"false\")\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge(\"merge\")\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true(\"true\")\n    method_n19kbi_seedasync__action_88_seedasync_await_88_18__await[[\"Waits for async work\"]]\n    method_n19kbi_seedasync__action_92_persistence_read_write_92__linear(\"Add sample Ebook for admin user\")\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition{\"!dbContext.Ebooks.Any(e => e.UserId == adminUser.Id)\"}\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false(\"false\")\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge(\"merge\")\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true(\"true\")\n    method_n19kbi_seedasync__entry([\"SeedAsync entry\"])\n    method_n19kbi_seedasync__action_19_external_call_19__linear(\"Create DbContext async\")\n    method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear[(\"Writes repository or persistence state\")]\n    method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear[(\"Writes repository or persistence state\")]\n    method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear[(\"Writes repository or persistence state\")]\n    method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear[(\"Writes repository or persistence state\")]\n    method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear[(\"Writes repository or persistence state\")]\n    method_n19kbi_seedasync__implicit_return([\"return\"])\n    method_n19kbi_seedasync__action_105_seedasync_await_105_21__await -->|fallback| method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition -->|otherwise| method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__condition -->|fallback| method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__false -->|next| method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge -->|next| method_n19kbi_seedasync__action_114_error_handling_114__linear\n    method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__true -->|next| method_n19kbi_seedasync__action_109_seedasync_fallback_109_22__merge\n    method_n19kbi_seedasync__action_114_error_handling_114__linear -->|exception| method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch\n    method_n19kbi_seedasync__action_114_seedasync_catch_114_23__catch -->|return| method_n19kbi_seedasync__implicit_return\n    method_n19kbi_seedasync__action_16_resource_acquire_16__linear -->|next| method_n19kbi_seedasync__action_19_seedasync_await_19_0__await\n    method_n19kbi_seedasync__action_19_external_call_19__linear -->|next| method_n19kbi_seedasync__action_21_seedasync_try_21_1__try\n    method_n19kbi_seedasync__action_19_seedasync_await_19_0__await -->|next| method_n19kbi_seedasync__action_19_external_call_19__linear\n    method_n19kbi_seedasync__action_21_seedasync_try_21_1__try -->|next| method_n19kbi_seedasync__action_23_log_23__linear\n    method_n19kbi_seedasync__action_23_log_23__linear -->|next| method_n19kbi_seedasync__action_26_guard_clause_26__condition\n    method_n19kbi_seedasync__action_26_guard_clause_26__condition -->|skip| method_n19kbi_seedasync__action_26_guard_clause_26__false\n    method_n19kbi_seedasync__action_26_guard_clause_26__condition -->|add-plans| method_n19kbi_seedasync__action_26_guard_clause_26__true\n    method_n19kbi_seedasync__action_26_guard_clause_26__false -->|next| method_n19kbi_seedasync__action_26_guard_clause_26__merge\n    method_n19kbi_seedasync__action_26_guard_clause_26__merge -->|next| method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition\n    method_n19kbi_seedasync__action_26_guard_clause_26__true -->|next| method_n19kbi_seedasync__action_26_guard_clause_26__merge\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition -->|false| method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__condition -->|true| method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__false -->|next| method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge -->|next| method_n19kbi_seedasync__action_28_persistence_write_28__linear\n    method_n19kbi_seedasync__action_26_seedasync_branch_26_2__true -->|next| method_n19kbi_seedasync__action_26_seedasync_branch_26_2__merge\n    method_n19kbi_seedasync__action_28_persistence_write_28__linear -->|used to set Id and PlanName when creating SubscriptionPlan instances| method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_\n    method_n19kbi_seedasync__action_34_seedasync_await_34_3__await -->|next| method_n19kbi_seedasync__action_35_log_35__linear\n    method_n19kbi_seedasync__action_35_log_35__linear -->|next| method_n19kbi_seedasync__action_40_loop_40__loop_entry\n    method_n19kbi_seedasync__action_40_loop_40__loop_body -->|continue| method_n19kbi_seedasync__action_40_loop_40__loop_entry\n    method_n19kbi_seedasync__action_40_loop_40__loop_entry -->|iterate| method_n19kbi_seedasync__action_40_loop_40__loop_body\n    method_n19kbi_seedasync__action_40_loop_40__loop_entry -->|exit| method_n19kbi_seedasync__action_40_loop_40__loop_exit\n    method_n19kbi_seedasync__action_40_loop_40__loop_exit -->|next| method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body -->|continue| method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry -->|var roleName in roleNames| method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_body\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_entry -->|Leaves the loop when the condition no longer holds.| method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit\n    method_n19kbi_seedasync__action_40_seedasync_loop_40_4__loop_exit -->|next| method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition -->|false| method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__condition -->|true| method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__false -->|next| method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge -->|next| method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear\n    method_n19kbi_seedasync__action_43_seedasync_branch_43_5__true -->|next| method_n19kbi_seedasync__action_43_seedasync_branch_43_5__merge\n    method_n19kbi_seedasync__action_45_seedasync_repository_write_45_6__linear -->|next| method_n19kbi_seedasync__action_49_seedasync_await_49_7__await\n    method_n19kbi_seedasync__action_49_seedasync_await_49_7__await -->|next| method_n19kbi_seedasync__action_54_seedasync_await_54_8__await\n    method_n19kbi_seedasync__action_54_persistence_read_54__linear -->|next| method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition\n    method_n19kbi_seedasync__action_54_seedasync_await_54_8__await -->|next| method_n19kbi_seedasync__action_54_persistence_read_54__linear\n    method_n19kbi_seedasync__action_56_branch_56__condition -->|admin-exists| method_n19kbi_seedasync__action_56_branch_56__false\n    method_n19kbi_seedasync__action_56_branch_56__condition -->|create-admin| method_n19kbi_seedasync__action_56_branch_56__true\n    method_n19kbi_seedasync__action_56_branch_56__false -->|next| method_n19kbi_seedasync__action_56_branch_56__merge\n    method_n19kbi_seedasync__action_56_branch_56__merge -->|instantiates admin NexusUser with email, subscription, tokens, tenant / security stamps| method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_\n    method_n19kbi_seedasync__action_56_branch_56__true -->|next| method_n19kbi_seedasync__action_56_branch_56__merge\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition -->|false| method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__condition -->|true| method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__false -->|next| method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge -->|next| method_n19kbi_seedasync__action_56_branch_56__condition\n    method_n19kbi_seedasync__action_56_seedasync_branch_56_9__true -->|next| method_n19kbi_seedasync__action_56_seedasync_branch_56_9__merge\n    method_n19kbi_seedasync__action_71_persistence_write_71__linear -->|next| method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear\n    method_n19kbi_seedasync__action_73_seedasync_repository_write_73_10__linear -->|next| method_n19kbi_seedasync__action_74_seedasync_await_74_11__await\n    method_n19kbi_seedasync__action_74_seedasync_await_74_11__await -->|next| method_n19kbi_seedasync__action_76_seedasync_await_76_12__await\n    method_n19kbi_seedasync__action_76_persistence_write_76__linear -->|next| method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear\n    method_n19kbi_seedasync__action_76_seedasync_await_76_12__await -->|next| method_n19kbi_seedasync__action_76_persistence_write_76__linear\n    method_n19kbi_seedasync__action_77_seedasync_repository_write_77_13__linear -->|next| method_n19kbi_seedasync__action_78_seedasync_await_78_14__await\n    method_n19kbi_seedasync__action_78_seedasync_await_78_14__await -->|next| method_n19kbi_seedasync__action_83_seedasync_await_83_15__await\n    method_n19kbi_seedasync__action_83_persistence_read_write_83__linear -->|next| method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition\n    method_n19kbi_seedasync__action_83_seedasync_await_83_15__await -->|next| method_n19kbi_seedasync__action_83_persistence_read_write_83__linear\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition -->|false| method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__condition -->|true| method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__false -->|next| method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge -->|calls| method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_\n    method_n19kbi_seedasync__action_84_seedasync_branch_84_16__true -->|next| method_n19kbi_seedasync__action_84_seedasync_branch_84_16__merge\n    method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear -->|next| method_n19kbi_seedasync__action_88_seedasync_await_88_18__await\n    method_n19kbi_seedasync__action_88_seedasync_await_88_18__await -->|next| method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition\n    method_n19kbi_seedasync__action_92_persistence_read_write_92__linear -->|next| method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition -->|false| method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__condition -->|true| method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__false -->|next| method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge -->|next| method_n19kbi_seedasync__action_92_persistence_read_write_92__linear\n    method_n19kbi_seedasync__action_92_seedasync_branch_92_19__true -->|next| method_n19kbi_seedasync__action_92_seedasync_branch_92_19__merge\n    method_n19kbi_seedasync__action_94_seedasync_repository_write_94_20__linear -->|creates sample Ebook for admin user with metadata and file path| method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_\n    method_n19kbi_seedasync__call_30_FreeId_FreeName_ProId_ProName_EnterpriseId_EnterpriseName_static_properties_ -->|next| method_n19kbi_seedasync__action_34_seedasync_await_34_3__await\n    method_n19kbi_seedasync__call_58_NexusUser_ctor_entity_creation_ -->|next| method_n19kbi_seedasync__action_71_persistence_write_71__linear\n    method_n19kbi_seedasync__call_86_Author_ctor_entity_creation_ -->|next| method_n19kbi_seedasync__action_87_seedasync_repository_write_87_17__linear\n    method_n19kbi_seedasync__call_94_Ebook_ctor_entity_creation_ -->|next| method_n19kbi_seedasync__action_105_seedasync_await_105_21__await\n    method_n19kbi_seedasync__entry -->|next| method_n19kbi_seedasync__action_16_resource_acquire_16__linear",
      "warnings": [
        "diagram method_n19kbi_seedasync__fragment_diagram exceeds preferred complexity thresholds (72 nodes, 81 edges)."
      ]
    }
  ],
  "renderHints": {
    "preferredSurface": "three-d",
    "defaultDiagramId": "file_136c3oe_dbinitializer_cs_execution_view",
    "controlFlowDiagramIds": [
      "method_n19kbi_seedasync__fragment_diagram"
    ],
    "defaultControlFlowDiagramIdsBySymbolId": {
      "method:n19kbi:seedasync": "method_n19kbi_seedasync__fragment_diagram"
    }
  }
}