code: function getDemoActions() {
      if (infinite) {
        const faker = require("faker")
        const controls = [
          map(() => ({
            payload: {
              toSpeak: faker.company.catchPhrase()
            }
          }))
        ]
        if (count) {
          controls.push(take(count))
        }
        return interval(1000).pipe(...controls)
      }
  
      return interval(250).pipe(
        zip(sayings, (_, toSpeak) => ({
          payload: {
            toSpeak
          }
        })),
        take(count)
      )
    }
docs: By returning an Observable, we can either hand back a static array or an infinite stream over time (every 60 seconds)