Flutter › State Management with Provider

How does MultiProvider let you properly and cleanly combine several genuinely separate individual providers together, avoiding a genuinely awkward, deeply nested pyramid of several separate individually nested Provider widgets?

Intermediate

Answer

MultiProvider lets you properly register several genuinely separate individual providers together within just one single flat, considerably more readable combined list, rather than needing to manually nest several genuinely separate individual Provider widgets one directly inside another, which would otherwise quickly produce a genuinely awkward, deeply indented pyramid shaped structure as the total number of separate providers your app genuinely needs continues to steadily grow, and MultiProvider considerably improves readability while still functionally providing exactly that same combined overall set of providers to your entire app.
MultiProvider(
  providers: [
    ChangeNotifierProvider(create: (context) => CartModel()),
    ChangeNotifierProvider(create: (context) => UserModel()),
  ],
  child: MyApp(),
)
Real-world example A large app combines a dozen separate individual providers together using one single MultiProvider widget at the very top of their widget tree, avoiding what would have otherwise been a genuinely awkward, deeply nested pyramid of a dozen separate individually nested Provider widgets.

Common follow-ups: Can one provider registered within a MultiProvider genuinely depend on another provider also registered within that exact same list?;How does MultiProvider genuinely handle properly disposing of every single one of its own several registered providers?