hunk.code_window:  *
    * @param {S} initialState Initial state.
    * @param {function (state: S): boolean} condition Condition to terminate generation (upon returning false).
    * @param {function (state: S): S} iterate Iteration step function.
    * @param {function (state: S): T} resultSelector Selector function for results produced in the sequence.
    * @param {SchedulerLike} [scheduler] A {@link SchedulerLike} on which to run the generator loop. If not provided, defaults to emit immediately.
    * @returns {Observable<T>} The generated sequence.
    */
     export function generate<T, S>(initialState: S,
  
hunk.labels: keep keep keep keep replace keep keep keep keep
hunk.after_edit:  * @param {function (state: S): T} resultSelector Selector function for results produced in the sequence. (deprecated)
  
hunk.file_path: src/internal/observable/generate.ts
hunk.type: replace
file: // #docplaster
  // #docregion , v3
  import { NgModule }                from '@angular/core';
  import { RouterModule, Routes }    from '@angular/router';
  
  import { ComposeMessageComponent } from './compose-message.component';
  import { PageNotFoundComponent }   from './not-found.component';
  
  const appRoutes: Routes = [
  // #enddocregion v3
  // #docregion compose
    {
      path: 'compose',
      component: ComposeMessageComponent,
      outlet: 'popup'
    },
  // #enddocregion compose
  // #docregion v3
    { path: '',   redirectTo: '/heroes', pathMatch: 'full' },
    { path: '**', component: PageNotFoundComponent }
  ];
  
  @NgModule({
    imports: [
      RouterModule.forRoot(
        appRoutes,
        { enableTracing: true } // <-- debugging purposes only
      )
    ],
    exports: [
      RouterModule
    ]
  })
  export class AppRoutingModule {}
  