{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "root",
            "range": [
              9,
              13
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 13
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "root",
            "range": [
              9,
              13
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 13
              }
            }
          },
          "range": [
            9,
            13
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 9
            },
            "end": {
              "line": 1,
              "column": 13
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../util/root",
        "raw": "'../util/root'",
        "range": [
          21,
          35
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 21
          },
          "end": {
            "line": 1,
            "column": 35
          }
        }
      },
      "range": [
        0,
        36
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 36
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Observable",
            "range": [
              46,
              56
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 19
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "Observable",
            "range": [
              46,
              56
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 19
              }
            }
          },
          "range": [
            46,
            56
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 9
            },
            "end": {
              "line": 2,
              "column": 19
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../Observable",
        "raw": "'../Observable'",
        "range": [
          64,
          79
        ],
        "loc": {
          "start": {
            "line": 2,
            "column": 27
          },
          "end": {
            "line": 2,
            "column": 42
          }
        }
      },
      "range": [
        37,
        80
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 43
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @extends {Ignored}\n * @hide true\n ",
          "range": [
            81,
            175
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 0
            },
            "end": {
              "line": 7,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "VariableDeclaration",
        "declarations": [
          {
            "type": "VariableDeclarator",
            "id": {
              "type": "Identifier",
              "name": "PromiseObservable",
              "range": [
                187,
                204
              ],
              "loc": {
                "start": {
                  "line": 8,
                  "column": 11
                },
                "end": {
                  "line": 8,
                  "column": 28
                }
              }
            },
            "init": {
              "type": "CallExpression",
              "callee": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "_super",
                    "range": [
                      218,
                      224
                    ],
                    "loc": {
                      "start": {
                        "line": 8,
                        "column": 42
                      },
                      "end": {
                        "line": 8,
                        "column": 48
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "Identifier",
                          "name": "__extends",
                          "range": [
                            232,
                            241
                          ],
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 4
                            },
                            "end": {
                              "line": 9,
                              "column": 13
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "PromiseObservable",
                            "range": [
                              242,
                              259
                            ],
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 14
                              },
                              "end": {
                                "line": 9,
                                "column": 31
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "name": "_super",
                            "range": [
                              261,
                              267
                            ],
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 33
                              },
                              "end": {
                                "line": 9,
                                "column": 39
                              }
                            }
                          }
                        ],
                        "range": [
                          232,
                          268
                        ],
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 4
                          },
                          "end": {
                            "line": 9,
                            "column": 40
                          }
                        }
                      },
                      "range": [
                        232,
                        269
                      ],
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 4
                        },
                        "end": {
                          "line": 9,
                          "column": 41
                        }
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "id": {
                        "type": "Identifier",
                        "name": "PromiseObservable",
                        "range": [
                          283,
                          300
                        ],
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 13
                          },
                          "end": {
                            "line": 10,
                            "column": 30
                          }
                        }
                      },
                      "params": [
                        {
                          "type": "Identifier",
                          "name": "promise",
                          "range": [
                            301,
                            308
                          ],
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 31
                            },
                            "end": {
                              "line": 10,
                              "column": 38
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "name": "scheduler",
                          "range": [
                            310,
                            319
                          ],
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 40
                            },
                            "end": {
                              "line": 10,
                              "column": 49
                            }
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "_super",
                                  "range": [
                                    331,
                                    337
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 14
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "call",
                                  "range": [
                                    338,
                                    342
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 19
                                    }
                                  }
                                },
                                "range": [
                                  331,
                                  342
                                ],
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 19
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "range": [
                                    343,
                                    347
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 24
                                    }
                                  }
                                }
                              ],
                              "range": [
                                331,
                                348
                              ],
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 8
                                },
                                "end": {
                                  "line": 11,
                                  "column": 25
                                }
                              }
                            },
                            "range": [
                              331,
                              349
                            ],
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 8
                              },
                              "end": {
                                "line": 11,
                                "column": 26
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    358,
                                    362
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "promise",
                                  "range": [
                                    363,
                                    370
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 20
                                    }
                                  }
                                },
                                "range": [
                                  358,
                                  370
                                ],
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 20
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "promise",
                                "range": [
                                  373,
                                  380
                                ],
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 30
                                  }
                                }
                              },
                              "range": [
                                358,
                                380
                              ],
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 8
                                },
                                "end": {
                                  "line": 12,
                                  "column": 30
                                }
                              }
                            },
                            "range": [
                              358,
                              381
                            ],
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 8
                              },
                              "end": {
                                "line": 12,
                                "column": 31
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    390,
                                    394
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "scheduler",
                                  "range": [
                                    395,
                                    404
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 22
                                    }
                                  }
                                },
                                "range": [
                                  390,
                                  404
                                ],
                                "loc": {
                                  "start": {
                                    "line": 13,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 13,
                                    "column": 22
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "scheduler",
                                "range": [
                                  407,
                                  416
                                ],
                                "loc": {
                                  "start": {
                                    "line": 13,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 13,
                                    "column": 34
                                  }
                                }
                              },
                              "range": [
                                390,
                                416
                              ],
                              "loc": {
                                "start": {
                                  "line": 13,
                                  "column": 8
                                },
                                "end": {
                                  "line": 13,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              390,
                              417
                            ],
                            "loc": {
                              "start": {
                                "line": 13,
                                "column": 8
                              },
                              "end": {
                                "line": 13,
                                "column": 35
                              }
                            }
                          }
                        ],
                        "range": [
                          321,
                          423
                        ],
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 51
                          },
                          "end": {
                            "line": 14,
                            "column": 5
                          }
                        }
                      },
                      "generator": false,
                      "expression": false,
                      "range": [
                        274,
                        423
                      ],
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 4
                        },
                        "end": {
                          "line": 14,
                          "column": 5
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Converts a Promise to an Observable.\n     *\n     * <span class=\"informal\">Returns an Observable that just emits the Promise's\n     * resolved value, then completes.</span>\n     *\n     * Converts an ES2015 Promise or a Promises/A+ spec compliant Promise to an\n     * Observable. If the Promise resolves with a value, the output Observable\n     * emits that resolved value as a `next`, and then completes. If the Promise\n     * is rejected, then the output Observable emits the corresponding Error.\n     *\n     * @example <caption>Convert the Promise returned by Fetch to an Observable</caption>\n     * var result = Rx.Observable.fromPromise(fetch('http://myserver.com/'));\n     * result.subscribe(x => console.log(x), e => console.error(e));\n     *\n     * @see {@link bindCallback}\n     * @see {@link from}\n     *\n     * @param {Promise<T>} promise The promise to be converted.\n     * @param {Scheduler} [scheduler] An optional Scheduler to use for scheduling\n     * the delivery of the resolved value (or the rejection).\n     * @return {Observable<T>} An Observable which wraps the Promise.\n     * @static true\n     * @name fromPromise\n     * @owner Observable\n     ",
                          "range": [
                            428,
                            1607
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 4
                            },
                            "end": {
                              "line": 40,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "PromiseObservable",
                            "range": [
                              1612,
                              1629
                            ],
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 4
                              },
                              "end": {
                                "line": 41,
                                "column": 21
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "create",
                            "range": [
                              1630,
                              1636
                            ],
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 22
                              },
                              "end": {
                                "line": 41,
                                "column": 28
                              }
                            }
                          },
                          "range": [
                            1612,
                            1636
                          ],
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 4
                            },
                            "end": {
                              "line": 41,
                              "column": 28
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "promise",
                              "range": [
                                1649,
                                1656
                              ],
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 41
                                },
                                "end": {
                                  "line": 41,
                                  "column": 48
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "scheduler",
                              "range": [
                                1658,
                                1667
                              ],
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 50
                                },
                                "end": {
                                  "line": 41,
                                  "column": 59
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "NewExpression",
                                  "callee": {
                                    "type": "Identifier",
                                    "name": "PromiseObservable",
                                    "range": [
                                      1690,
                                      1707
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 42,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 42,
                                        "column": 36
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "name": "promise",
                                      "range": [
                                        1708,
                                        1715
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 42,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 42,
                                          "column": 44
                                        }
                                      }
                                    },
                                    {
                                      "type": "Identifier",
                                      "name": "scheduler",
                                      "range": [
                                        1717,
                                        1726
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 42,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 42,
                                          "column": 55
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1686,
                                    1727
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 56
                                    }
                                  }
                                },
                                "range": [
                                  1679,
                                  1728
                                ],
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 57
                                  }
                                }
                              }
                            ],
                            "range": [
                              1669,
                              1734
                            ],
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 61
                              },
                              "end": {
                                "line": 43,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            1639,
                            1734
                          ],
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 31
                            },
                            "end": {
                              "line": 43,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          1612,
                          1734
                        ],
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 4
                          },
                          "end": {
                            "line": 43,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        1612,
                        1735
                      ],
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 4
                        },
                        "end": {
                          "line": 43,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Converts a Promise to an Observable.\n     *\n     * <span class=\"informal\">Returns an Observable that just emits the Promise's\n     * resolved value, then completes.</span>\n     *\n     * Converts an ES2015 Promise or a Promises/A+ spec compliant Promise to an\n     * Observable. If the Promise resolves with a value, the output Observable\n     * emits that resolved value as a `next`, and then completes. If the Promise\n     * is rejected, then the output Observable emits the corresponding Error.\n     *\n     * @example <caption>Convert the Promise returned by Fetch to an Observable</caption>\n     * var result = Rx.Observable.fromPromise(fetch('http://myserver.com/'));\n     * result.subscribe(x => console.log(x), e => console.error(e));\n     *\n     * @see {@link bindCallback}\n     * @see {@link from}\n     *\n     * @param {Promise<T>} promise The promise to be converted.\n     * @param {Scheduler} [scheduler] An optional Scheduler to use for scheduling\n     * the delivery of the resolved value (or the rejection).\n     * @return {Observable<T>} An Observable which wraps the Promise.\n     * @static true\n     * @name fromPromise\n     * @owner Observable\n     ",
                          "range": [
                            428,
                            1607
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 4
                            },
                            "end": {
                              "line": 40,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "PromiseObservable",
                              "range": [
                                1740,
                                1757
                              ],
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 4
                                },
                                "end": {
                                  "line": 44,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                1758,
                                1767
                              ],
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 22
                                },
                                "end": {
                                  "line": 44,
                                  "column": 31
                                }
                              }
                            },
                            "range": [
                              1740,
                              1767
                            ],
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 4
                              },
                              "end": {
                                "line": 44,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_subscribe",
                            "range": [
                              1768,
                              1778
                            ],
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 32
                              },
                              "end": {
                                "line": 44,
                                "column": 42
                              }
                            }
                          },
                          "range": [
                            1740,
                            1778
                          ],
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 4
                            },
                            "end": {
                              "line": 44,
                              "column": 42
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "subscriber",
                              "range": [
                                1791,
                                1801
                              ],
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 55
                                },
                                "end": {
                                  "line": 44,
                                  "column": 65
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "_this",
                                      "range": [
                                        1817,
                                        1822
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 45,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 45,
                                          "column": 17
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "ThisExpression",
                                      "range": [
                                        1825,
                                        1829
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 45,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 45,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "range": [
                                      1817,
                                      1829
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 45,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 45,
                                        "column": 24
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  1813,
                                  1830
                                ],
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 25
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "promise",
                                      "range": [
                                        1843,
                                        1850
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 46,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 46,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          1853,
                                          1857
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 46,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 46,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "promise",
                                        "range": [
                                          1858,
                                          1865
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 46,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 46,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "range": [
                                        1853,
                                        1865
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 46,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 46,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      1843,
                                      1865
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 46,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 46,
                                        "column": 34
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  1839,
                                  1866
                                ],
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 35
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "scheduler",
                                      "range": [
                                        1879,
                                        1888
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 21
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          1891,
                                          1895
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "scheduler",
                                        "range": [
                                          1896,
                                          1905
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 38
                                          }
                                        }
                                      },
                                      "range": [
                                        1891,
                                        1905
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "range": [
                                      1879,
                                      1905
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 38
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  1875,
                                  1906
                                ],
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 39
                                  }
                                }
                              },
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "BinaryExpression",
                                  "operator": "==",
                                  "left": {
                                    "type": "Identifier",
                                    "name": "scheduler",
                                    "range": [
                                      1919,
                                      1928
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 48,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 48,
                                        "column": 21
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": null,
                                    "raw": "null",
                                    "range": [
                                      1932,
                                      1936
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 48,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 48,
                                        "column": 29
                                      }
                                    }
                                  },
                                  "range": [
                                    1919,
                                    1936
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 48,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 48,
                                      "column": 29
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "IfStatement",
                                      "test": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            1956,
                                            1960
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "_isScalar",
                                          "range": [
                                            1961,
                                            1970
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 49,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 49,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "range": [
                                          1956,
                                          1970
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 30
                                          }
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "body": [
                                          {
                                            "type": "IfStatement",
                                            "test": {
                                              "type": "UnaryExpression",
                                              "operator": "!",
                                              "argument": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "Identifier",
                                                  "name": "subscriber",
                                                  "range": [
                                                    1995,
                                                    2005
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 31
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "closed",
                                                  "range": [
                                                    2006,
                                                    2012
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 38
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1995,
                                                  2012
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 38
                                                  }
                                                }
                                              },
                                              "prefix": true,
                                              "range": [
                                                1994,
                                                2012
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 38
                                                }
                                              }
                                            },
                                            "consequent": {
                                              "type": "BlockStatement",
                                              "body": [
                                                {
                                                  "type": "ExpressionStatement",
                                                  "expression": {
                                                    "type": "CallExpression",
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "computed": false,
                                                      "object": {
                                                        "type": "Identifier",
                                                        "name": "subscriber",
                                                        "range": [
                                                          2036,
                                                          2046
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 51,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 51,
                                                            "column": 30
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "name": "next",
                                                        "range": [
                                                          2047,
                                                          2051
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 51,
                                                            "column": 31
                                                          },
                                                          "end": {
                                                            "line": 51,
                                                            "column": 35
                                                          }
                                                        }
                                                      },
                                                      "range": [
                                                        2036,
                                                        2051
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 51,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 51,
                                                          "column": 35
                                                        }
                                                      }
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "MemberExpression",
                                                        "computed": false,
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "range": [
                                                            2052,
                                                            2056
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 51,
                                                              "column": 36
                                                            },
                                                            "end": {
                                                              "line": 51,
                                                              "column": 40
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "name": "value",
                                                          "range": [
                                                            2057,
                                                            2062
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 51,
                                                              "column": 41
                                                            },
                                                            "end": {
                                                              "line": 51,
                                                              "column": 46
                                                            }
                                                          }
                                                        },
                                                        "range": [
                                                          2052,
                                                          2062
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 51,
                                                            "column": 36
                                                          },
                                                          "end": {
                                                            "line": 51,
                                                            "column": 46
                                                          }
                                                        }
                                                      }
                                                    ],
                                                    "range": [
                                                      2036,
                                                      2063
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 51,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 51,
                                                        "column": 47
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    2036,
                                                    2064
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 51,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 51,
                                                      "column": 48
                                                    }
                                                  }
                                                },
                                                {
                                                  "type": "ExpressionStatement",
                                                  "expression": {
                                                    "type": "CallExpression",
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "computed": false,
                                                      "object": {
                                                        "type": "Identifier",
                                                        "name": "subscriber",
                                                        "range": [
                                                          2085,
                                                          2095
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 52,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 52,
                                                            "column": 30
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "name": "complete",
                                                        "range": [
                                                          2096,
                                                          2104
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 52,
                                                            "column": 31
                                                          },
                                                          "end": {
                                                            "line": 52,
                                                            "column": 39
                                                          }
                                                        }
                                                      },
                                                      "range": [
                                                        2085,
                                                        2104
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 52,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 52,
                                                          "column": 39
                                                        }
                                                      }
                                                    },
                                                    "arguments": [],
                                                    "range": [
                                                      2085,
                                                      2106
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 52,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 52,
                                                        "column": 41
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    2085,
                                                    2107
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 42
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                2014,
                                                2125
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 53,
                                                  "column": 17
                                                }
                                              }
                                            },
                                            "alternate": null,
                                            "range": [
                                              1990,
                                              2125
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 53,
                                                "column": 17
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          1972,
                                          2139
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "alternate": {
                                        "type": "BlockStatement",
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "expression": {
                                              "type": "CallExpression",
                                              "callee": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "CallExpression",
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "computed": false,
                                                    "object": {
                                                      "type": "Identifier",
                                                      "name": "promise",
                                                      "range": [
                                                        2175,
                                                        2182
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 56,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 56,
                                                          "column": 23
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "name": "then",
                                                      "range": [
                                                        2183,
                                                        2187
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 56,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 56,
                                                          "column": 28
                                                        }
                                                      }
                                                    },
                                                    "range": [
                                                      2175,
                                                      2187
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 56,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 56,
                                                        "column": 28
                                                      }
                                                    }
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "FunctionExpression",
                                                      "id": null,
                                                      "params": [
                                                        {
                                                          "type": "Identifier",
                                                          "name": "value",
                                                          "range": [
                                                            2198,
                                                            2203
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 56,
                                                              "column": 39
                                                            },
                                                            "end": {
                                                              "line": 56,
                                                              "column": 44
                                                            }
                                                          }
                                                        }
                                                      ],
                                                      "body": {
                                                        "type": "BlockStatement",
                                                        "body": [
                                                          {
                                                            "type": "ExpressionStatement",
                                                            "expression": {
                                                              "type": "AssignmentExpression",
                                                              "operator": "=",
                                                              "left": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "_this",
                                                                  "range": [
                                                                    2227,
                                                                    2232
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 57,
                                                                      "column": 20
                                                                    },
                                                                    "end": {
                                                                      "line": 57,
                                                                      "column": 25
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "value",
                                                                  "range": [
                                                                    2233,
                                                                    2238
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 57,
                                                                      "column": 26
                                                                    },
                                                                    "end": {
                                                                      "line": 57,
                                                                      "column": 31
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  2227,
                                                                  2238
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 57,
                                                                    "column": 20
                                                                  },
                                                                  "end": {
                                                                    "line": 57,
                                                                    "column": 31
                                                                  }
                                                                }
                                                              },
                                                              "right": {
                                                                "type": "Identifier",
                                                                "name": "value",
                                                                "range": [
                                                                  2241,
                                                                  2246
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 57,
                                                                    "column": 34
                                                                  },
                                                                  "end": {
                                                                    "line": 57,
                                                                    "column": 39
                                                                  }
                                                                }
                                                              },
                                                              "range": [
                                                                2227,
                                                                2246
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 57,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 57,
                                                                  "column": 39
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              2227,
                                                              2247
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 57,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 57,
                                                                "column": 40
                                                              }
                                                            }
                                                          },
                                                          {
                                                            "type": "ExpressionStatement",
                                                            "expression": {
                                                              "type": "AssignmentExpression",
                                                              "operator": "=",
                                                              "left": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "_this",
                                                                  "range": [
                                                                    2268,
                                                                    2273
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 58,
                                                                      "column": 20
                                                                    },
                                                                    "end": {
                                                                      "line": 58,
                                                                      "column": 25
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "_isScalar",
                                                                  "range": [
                                                                    2274,
                                                                    2283
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 58,
                                                                      "column": 26
                                                                    },
                                                                    "end": {
                                                                      "line": 58,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  2268,
                                                                  2283
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 58,
                                                                    "column": 20
                                                                  },
                                                                  "end": {
                                                                    "line": 58,
                                                                    "column": 35
                                                                  }
                                                                }
                                                              },
                                                              "right": {
                                                                "type": "Literal",
                                                                "value": true,
                                                                "raw": "true",
                                                                "range": [
                                                                  2286,
                                                                  2290
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 58,
                                                                    "column": 38
                                                                  },
                                                                  "end": {
                                                                    "line": 58,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "range": [
                                                                2268,
                                                                2290
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 58,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 58,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              2268,
                                                              2291
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 58,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 58,
                                                                "column": 43
                                                              }
                                                            }
                                                          },
                                                          {
                                                            "type": "IfStatement",
                                                            "test": {
                                                              "type": "UnaryExpression",
                                                              "operator": "!",
                                                              "argument": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "subscriber",
                                                                  "range": [
                                                                    2317,
                                                                    2327
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 59,
                                                                      "column": 25
                                                                    },
                                                                    "end": {
                                                                      "line": 59,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "closed",
                                                                  "range": [
                                                                    2328,
                                                                    2334
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 59,
                                                                      "column": 36
                                                                    },
                                                                    "end": {
                                                                      "line": 59,
                                                                      "column": 42
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  2317,
                                                                  2334
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 59,
                                                                    "column": 25
                                                                  },
                                                                  "end": {
                                                                    "line": 59,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "prefix": true,
                                                              "range": [
                                                                2316,
                                                                2334
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 59,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 59,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "consequent": {
                                                              "type": "BlockStatement",
                                                              "body": [
                                                                {
                                                                  "type": "ExpressionStatement",
                                                                  "expression": {
                                                                    "type": "CallExpression",
                                                                    "callee": {
                                                                      "type": "MemberExpression",
                                                                      "computed": false,
                                                                      "object": {
                                                                        "type": "Identifier",
                                                                        "name": "subscriber",
                                                                        "range": [
                                                                          2362,
                                                                          2372
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 60,
                                                                            "column": 24
                                                                          },
                                                                          "end": {
                                                                            "line": 60,
                                                                            "column": 34
                                                                          }
                                                                        }
                                                                      },
                                                                      "property": {
                                                                        "type": "Identifier",
                                                                        "name": "next",
                                                                        "range": [
                                                                          2373,
                                                                          2377
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 60,
                                                                            "column": 35
                                                                          },
                                                                          "end": {
                                                                            "line": 60,
                                                                            "column": 39
                                                                          }
                                                                        }
                                                                      },
                                                                      "range": [
                                                                        2362,
                                                                        2377
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 60,
                                                                          "column": 24
                                                                        },
                                                                        "end": {
                                                                          "line": 60,
                                                                          "column": 39
                                                                        }
                                                                      }
                                                                    },
                                                                    "arguments": [
                                                                      {
                                                                        "type": "Identifier",
                                                                        "name": "value",
                                                                        "range": [
                                                                          2378,
                                                                          2383
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 60,
                                                                            "column": 40
                                                                          },
                                                                          "end": {
                                                                            "line": 60,
                                                                            "column": 45
                                                                          }
                                                                        }
                                                                      }
                                                                    ],
                                                                    "range": [
                                                                      2362,
                                                                      2384
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 60,
                                                                        "column": 24
                                                                      },
                                                                      "end": {
                                                                        "line": 60,
                                                                        "column": 46
                                                                      }
                                                                    }
                                                                  },
                                                                  "range": [
                                                                    2362,
                                                                    2385
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 60,
                                                                      "column": 24
                                                                    },
                                                                    "end": {
                                                                      "line": 60,
                                                                      "column": 47
                                                                    }
                                                                  }
                                                                },
                                                                {
                                                                  "type": "ExpressionStatement",
                                                                  "expression": {
                                                                    "type": "CallExpression",
                                                                    "callee": {
                                                                      "type": "MemberExpression",
                                                                      "computed": false,
                                                                      "object": {
                                                                        "type": "Identifier",
                                                                        "name": "subscriber",
                                                                        "range": [
                                                                          2410,
                                                                          2420
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 61,
                                                                            "column": 24
                                                                          },
                                                                          "end": {
                                                                            "line": 61,
                                                                            "column": 34
                                                                          }
                                                                        }
                                                                      },
                                                                      "property": {
                                                                        "type": "Identifier",
                                                                        "name": "complete",
                                                                        "range": [
                                                                          2421,
                                                                          2429
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 61,
                                                                            "column": 35
                                                                          },
                                                                          "end": {
                                                                            "line": 61,
                                                                            "column": 43
                                                                          }
                                                                        }
                                                                      },
                                                                      "range": [
                                                                        2410,
                                                                        2429
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 61,
                                                                          "column": 24
                                                                        },
                                                                        "end": {
                                                                          "line": 61,
                                                                          "column": 43
                                                                        }
                                                                      }
                                                                    },
                                                                    "arguments": [],
                                                                    "range": [
                                                                      2410,
                                                                      2431
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 61,
                                                                        "column": 24
                                                                      },
                                                                      "end": {
                                                                        "line": 61,
                                                                        "column": 45
                                                                      }
                                                                    }
                                                                  },
                                                                  "range": [
                                                                    2410,
                                                                    2432
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 61,
                                                                      "column": 24
                                                                    },
                                                                    "end": {
                                                                      "line": 61,
                                                                      "column": 46
                                                                    }
                                                                  }
                                                                }
                                                              ],
                                                              "range": [
                                                                2336,
                                                                2454
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 59,
                                                                  "column": 44
                                                                },
                                                                "end": {
                                                                  "line": 62,
                                                                  "column": 21
                                                                }
                                                              }
                                                            },
                                                            "alternate": null,
                                                            "range": [
                                                              2312,
                                                              2454
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 59,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 62,
                                                                "column": 21
                                                              }
                                                            }
                                                          }
                                                        ],
                                                        "range": [
                                                          2205,
                                                          2472
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 56,
                                                            "column": 46
                                                          },
                                                          "end": {
                                                            "line": 63,
                                                            "column": 17
                                                          }
                                                        }
                                                      },
                                                      "generator": false,
                                                      "expression": false,
                                                      "range": [
                                                        2188,
                                                        2472
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 56,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 63,
                                                          "column": 17
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "FunctionExpression",
                                                      "id": null,
                                                      "params": [
                                                        {
                                                          "type": "Identifier",
                                                          "name": "err",
                                                          "range": [
                                                            2484,
                                                            2487
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 63,
                                                              "column": 29
                                                            },
                                                            "end": {
                                                              "line": 63,
                                                              "column": 32
                                                            }
                                                          }
                                                        }
                                                      ],
                                                      "body": {
                                                        "type": "BlockStatement",
                                                        "body": [
                                                          {
                                                            "type": "IfStatement",
                                                            "test": {
                                                              "type": "UnaryExpression",
                                                              "operator": "!",
                                                              "argument": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "subscriber",
                                                                  "range": [
                                                                    2516,
                                                                    2526
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 64,
                                                                      "column": 25
                                                                    },
                                                                    "end": {
                                                                      "line": 64,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "closed",
                                                                  "range": [
                                                                    2527,
                                                                    2533
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 64,
                                                                      "column": 36
                                                                    },
                                                                    "end": {
                                                                      "line": 64,
                                                                      "column": 42
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  2516,
                                                                  2533
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 64,
                                                                    "column": 25
                                                                  },
                                                                  "end": {
                                                                    "line": 64,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "prefix": true,
                                                              "range": [
                                                                2515,
                                                                2533
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 64,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 64,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "consequent": {
                                                              "type": "BlockStatement",
                                                              "body": [
                                                                {
                                                                  "type": "ExpressionStatement",
                                                                  "expression": {
                                                                    "type": "CallExpression",
                                                                    "callee": {
                                                                      "type": "MemberExpression",
                                                                      "computed": false,
                                                                      "object": {
                                                                        "type": "Identifier",
                                                                        "name": "subscriber",
                                                                        "range": [
                                                                          2561,
                                                                          2571
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 65,
                                                                            "column": 24
                                                                          },
                                                                          "end": {
                                                                            "line": 65,
                                                                            "column": 34
                                                                          }
                                                                        }
                                                                      },
                                                                      "property": {
                                                                        "type": "Identifier",
                                                                        "name": "error",
                                                                        "range": [
                                                                          2572,
                                                                          2577
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 65,
                                                                            "column": 35
                                                                          },
                                                                          "end": {
                                                                            "line": 65,
                                                                            "column": 40
                                                                          }
                                                                        }
                                                                      },
                                                                      "range": [
                                                                        2561,
                                                                        2577
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 65,
                                                                          "column": 24
                                                                        },
                                                                        "end": {
                                                                          "line": 65,
                                                                          "column": 40
                                                                        }
                                                                      }
                                                                    },
                                                                    "arguments": [
                                                                      {
                                                                        "type": "Identifier",
                                                                        "name": "err",
                                                                        "range": [
                                                                          2578,
                                                                          2581
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 65,
                                                                            "column": 41
                                                                          },
                                                                          "end": {
                                                                            "line": 65,
                                                                            "column": 44
                                                                          }
                                                                        }
                                                                      }
                                                                    ],
                                                                    "range": [
                                                                      2561,
                                                                      2582
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 65,
                                                                        "column": 24
                                                                      },
                                                                      "end": {
                                                                        "line": 65,
                                                                        "column": 45
                                                                      }
                                                                    }
                                                                  },
                                                                  "range": [
                                                                    2561,
                                                                    2583
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 65,
                                                                      "column": 24
                                                                    },
                                                                    "end": {
                                                                      "line": 65,
                                                                      "column": 46
                                                                    }
                                                                  }
                                                                }
                                                              ],
                                                              "range": [
                                                                2535,
                                                                2605
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 64,
                                                                  "column": 44
                                                                },
                                                                "end": {
                                                                  "line": 66,
                                                                  "column": 21
                                                                }
                                                              }
                                                            },
                                                            "alternate": null,
                                                            "range": [
                                                              2511,
                                                              2605
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 64,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 66,
                                                                "column": 21
                                                              }
                                                            }
                                                          }
                                                        ],
                                                        "range": [
                                                          2489,
                                                          2623
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 63,
                                                            "column": 34
                                                          },
                                                          "end": {
                                                            "line": 67,
                                                            "column": 17
                                                          }
                                                        }
                                                      },
                                                      "generator": false,
                                                      "expression": false,
                                                      "range": [
                                                        2474,
                                                        2623
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 63,
                                                          "column": 19
                                                        },
                                                        "end": {
                                                          "line": 67,
                                                          "column": 17
                                                        }
                                                      }
                                                    }
                                                  ],
                                                  "range": [
                                                    2175,
                                                    2624
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 56,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 67,
                                                      "column": 18
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "then",
                                                  "range": [
                                                    2646,
                                                    2650
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 68,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 68,
                                                      "column": 25
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  2175,
                                                  2650
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 56,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 68,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Literal",
                                                  "value": null,
                                                  "raw": "null",
                                                  "range": [
                                                    2651,
                                                    2655
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 68,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 68,
                                                      "column": 30
                                                    }
                                                  }
                                                },
                                                {
                                                  "type": "FunctionExpression",
                                                  "id": null,
                                                  "params": [
                                                    {
                                                      "type": "Identifier",
                                                      "name": "err",
                                                      "range": [
                                                        2667,
                                                        2670
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 68,
                                                          "column": 42
                                                        },
                                                        "end": {
                                                          "line": 68,
                                                          "column": 45
                                                        }
                                                      }
                                                    }
                                                  ],
                                                  "body": {
                                                    "type": "BlockStatement",
                                                    "body": [
                                                      {
                                                        "type": "ExpressionStatement",
                                                        "expression": {
                                                          "type": "CallExpression",
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "computed": false,
                                                            "object": {
                                                              "type": "Identifier",
                                                              "name": "root",
                                                              "range": [
                                                                2765,
                                                                2769
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 70,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 70,
                                                                  "column": 24
                                                                }
                                                              }
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "name": "setTimeout",
                                                              "range": [
                                                                2770,
                                                                2780
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 70,
                                                                  "column": 25
                                                                },
                                                                "end": {
                                                                  "line": 70,
                                                                  "column": 35
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              2765,
                                                              2780
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 70,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 70,
                                                                "column": 35
                                                              }
                                                            }
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "FunctionExpression",
                                                              "id": null,
                                                              "params": [],
                                                              "body": {
                                                                "type": "BlockStatement",
                                                                "body": [
                                                                  {
                                                                    "type": "ThrowStatement",
                                                                    "argument": {
                                                                      "type": "Identifier",
                                                                      "name": "err",
                                                                      "range": [
                                                                        2801,
                                                                        2804
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 70,
                                                                          "column": 56
                                                                        },
                                                                        "end": {
                                                                          "line": 70,
                                                                          "column": 59
                                                                        }
                                                                      }
                                                                    },
                                                                    "range": [
                                                                      2795,
                                                                      2805
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 70,
                                                                        "column": 50
                                                                      },
                                                                      "end": {
                                                                        "line": 70,
                                                                        "column": 60
                                                                      }
                                                                    }
                                                                  }
                                                                ],
                                                                "range": [
                                                                  2793,
                                                                  2807
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 70,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 70,
                                                                    "column": 62
                                                                  }
                                                                }
                                                              },
                                                              "generator": false,
                                                              "expression": false,
                                                              "range": [
                                                                2781,
                                                                2807
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 70,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 70,
                                                                  "column": 62
                                                                }
                                                              }
                                                            }
                                                          ],
                                                          "range": [
                                                            2765,
                                                            2808
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 70,
                                                              "column": 20
                                                            },
                                                            "end": {
                                                              "line": 70,
                                                              "column": 63
                                                            }
                                                          }
                                                        },
                                                        "range": [
                                                          2765,
                                                          2809
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 70,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 70,
                                                            "column": 64
                                                          }
                                                        },
                                                        "leadingComments": [
                                                          {
                                                            "type": "Line",
                                                            "value": " escape the promise trap, throw unhandled errors",
                                                            "range": [
                                                              2694,
                                                              2744
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 69,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 69,
                                                                "column": 70
                                                              }
                                                            }
                                                          }
                                                        ]
                                                      }
                                                    ],
                                                    "range": [
                                                      2672,
                                                      2827
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 68,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 71,
                                                        "column": 17
                                                      }
                                                    }
                                                  },
                                                  "generator": false,
                                                  "expression": false,
                                                  "range": [
                                                    2657,
                                                    2827
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 68,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 71,
                                                      "column": 17
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                2175,
                                                2828
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 56,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 71,
                                                  "column": 18
                                                }
                                              }
                                            },
                                            "range": [
                                              2175,
                                              2829
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 56,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 19
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          2157,
                                          2843
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 55,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "range": [
                                        1952,
                                        2843
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 49,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 13
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1938,
                                    2853
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 48,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "IfStatement",
                                      "test": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            2885,
                                            2889
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 75,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 75,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "_isScalar",
                                          "range": [
                                            2890,
                                            2899
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 75,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 75,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "range": [
                                          2885,
                                          2899
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 75,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 75,
                                            "column": 30
                                          }
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "body": [
                                          {
                                            "type": "IfStatement",
                                            "test": {
                                              "type": "UnaryExpression",
                                              "operator": "!",
                                              "argument": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "Identifier",
                                                  "name": "subscriber",
                                                  "range": [
                                                    2924,
                                                    2934
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 76,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 76,
                                                      "column": 31
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "closed",
                                                  "range": [
                                                    2935,
                                                    2941
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 76,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 76,
                                                      "column": 38
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  2924,
                                                  2941
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 76,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 76,
                                                    "column": 38
                                                  }
                                                }
                                              },
                                              "prefix": true,
                                              "range": [
                                                2923,
                                                2941
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 76,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 76,
                                                  "column": 38
                                                }
                                              }
                                            },
                                            "consequent": {
                                              "type": "BlockStatement",
                                              "body": [
                                                {
                                                  "type": "ReturnStatement",
                                                  "argument": {
                                                    "type": "CallExpression",
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "computed": false,
                                                      "object": {
                                                        "type": "Identifier",
                                                        "name": "scheduler",
                                                        "range": [
                                                          2972,
                                                          2981
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 77,
                                                            "column": 27
                                                          },
                                                          "end": {
                                                            "line": 77,
                                                            "column": 36
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "name": "schedule",
                                                        "range": [
                                                          2982,
                                                          2990
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 77,
                                                            "column": 37
                                                          },
                                                          "end": {
                                                            "line": 77,
                                                            "column": 45
                                                          }
                                                        }
                                                      },
                                                      "range": [
                                                        2972,
                                                        2990
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 77,
                                                          "column": 27
                                                        },
                                                        "end": {
                                                          "line": 77,
                                                          "column": 45
                                                        }
                                                      }
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "name": "dispatchNext",
                                                        "range": [
                                                          2991,
                                                          3003
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 77,
                                                            "column": 46
                                                          },
                                                          "end": {
                                                            "line": 77,
                                                            "column": 58
                                                          }
                                                        }
                                                      },
                                                      {
                                                        "type": "Literal",
                                                        "value": 0,
                                                        "raw": "0",
                                                        "range": [
                                                          3005,
                                                          3006
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 77,
                                                            "column": 60
                                                          },
                                                          "end": {
                                                            "line": 77,
                                                            "column": 61
                                                          }
                                                        }
                                                      },
                                                      {
                                                        "type": "ObjectExpression",
                                                        "properties": [
                                                          {
                                                            "type": "Property",
                                                            "key": {
                                                              "type": "Identifier",
                                                              "name": "value",
                                                              "range": [
                                                                3010,
                                                                3015
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 77,
                                                                  "column": 65
                                                                },
                                                                "end": {
                                                                  "line": 77,
                                                                  "column": 70
                                                                }
                                                              }
                                                            },
                                                            "value": {
                                                              "type": "MemberExpression",
                                                              "computed": false,
                                                              "object": {
                                                                "type": "ThisExpression",
                                                                "range": [
                                                                  3017,
                                                                  3021
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 77,
                                                                    "column": 72
                                                                  },
                                                                  "end": {
                                                                    "line": 77,
                                                                    "column": 76
                                                                  }
                                                                }
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "name": "value",
                                                                "range": [
                                                                  3022,
                                                                  3027
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 77,
                                                                    "column": 77
                                                                  },
                                                                  "end": {
                                                                    "line": 77,
                                                                    "column": 82
                                                                  }
                                                                }
                                                              },
                                                              "range": [
                                                                3017,
                                                                3027
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 77,
                                                                  "column": 72
                                                                },
                                                                "end": {
                                                                  "line": 77,
                                                                  "column": 82
                                                                }
                                                              }
                                                            },
                                                            "kind": "init",
                                                            "method": false,
                                                            "shorthand": false,
                                                            "computed": false,
                                                            "range": [
                                                              3010,
                                                              3027
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 77,
                                                                "column": 65
                                                              },
                                                              "end": {
                                                                "line": 77,
                                                                "column": 82
                                                              }
                                                            }
                                                          },
                                                          {
                                                            "type": "Property",
                                                            "key": {
                                                              "type": "Identifier",
                                                              "name": "subscriber",
                                                              "range": [
                                                                3029,
                                                                3039
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 77,
                                                                  "column": 84
                                                                },
                                                                "end": {
                                                                  "line": 77,
                                                                  "column": 94
                                                                }
                                                              }
                                                            },
                                                            "value": {
                                                              "type": "Identifier",
                                                              "name": "subscriber",
                                                              "range": [
                                                                3041,
                                                                3051
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 77,
                                                                  "column": 96
                                                                },
                                                                "end": {
                                                                  "line": 77,
                                                                  "column": 106
                                                                }
                                                              }
                                                            },
                                                            "kind": "init",
                                                            "method": false,
                                                            "shorthand": false,
                                                            "computed": false,
                                                            "range": [
                                                              3029,
                                                              3051
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 77,
                                                                "column": 84
                                                              },
                                                              "end": {
                                                                "line": 77,
                                                                "column": 106
                                                              }
                                                            }
                                                          }
                                                        ],
                                                        "range": [
                                                          3008,
                                                          3053
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 77,
                                                            "column": 63
                                                          },
                                                          "end": {
                                                            "line": 77,
                                                            "column": 108
                                                          }
                                                        }
                                                      }
                                                    ],
                                                    "range": [
                                                      2972,
                                                      3054
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 77,
                                                        "column": 27
                                                      },
                                                      "end": {
                                                        "line": 77,
                                                        "column": 109
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    2965,
                                                    3055
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 77,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 77,
                                                      "column": 110
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                2943,
                                                3073
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 76,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 78,
                                                  "column": 17
                                                }
                                              }
                                            },
                                            "alternate": null,
                                            "range": [
                                              2919,
                                              3073
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 76,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 17
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          2901,
                                          3087
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 75,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "alternate": {
                                        "type": "BlockStatement",
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "expression": {
                                              "type": "CallExpression",
                                              "callee": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "CallExpression",
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "computed": false,
                                                    "object": {
                                                      "type": "Identifier",
                                                      "name": "promise",
                                                      "range": [
                                                        3123,
                                                        3130
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 81,
                                                          "column": 16
                                                        },
                                                        "end": {
                                                          "line": 81,
                                                          "column": 23
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "name": "then",
                                                      "range": [
                                                        3131,
                                                        3135
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 81,
                                                          "column": 24
                                                        },
                                                        "end": {
                                                          "line": 81,
                                                          "column": 28
                                                        }
                                                      }
                                                    },
                                                    "range": [
                                                      3123,
                                                      3135
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 81,
                                                        "column": 16
                                                      },
                                                      "end": {
                                                        "line": 81,
                                                        "column": 28
                                                      }
                                                    }
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "FunctionExpression",
                                                      "id": null,
                                                      "params": [
                                                        {
                                                          "type": "Identifier",
                                                          "name": "value",
                                                          "range": [
                                                            3146,
                                                            3151
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 81,
                                                              "column": 39
                                                            },
                                                            "end": {
                                                              "line": 81,
                                                              "column": 44
                                                            }
                                                          }
                                                        }
                                                      ],
                                                      "body": {
                                                        "type": "BlockStatement",
                                                        "body": [
                                                          {
                                                            "type": "ExpressionStatement",
                                                            "expression": {
                                                              "type": "AssignmentExpression",
                                                              "operator": "=",
                                                              "left": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "_this",
                                                                  "range": [
                                                                    3175,
                                                                    3180
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 82,
                                                                      "column": 20
                                                                    },
                                                                    "end": {
                                                                      "line": 82,
                                                                      "column": 25
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "value",
                                                                  "range": [
                                                                    3181,
                                                                    3186
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 82,
                                                                      "column": 26
                                                                    },
                                                                    "end": {
                                                                      "line": 82,
                                                                      "column": 31
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  3175,
                                                                  3186
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 82,
                                                                    "column": 20
                                                                  },
                                                                  "end": {
                                                                    "line": 82,
                                                                    "column": 31
                                                                  }
                                                                }
                                                              },
                                                              "right": {
                                                                "type": "Identifier",
                                                                "name": "value",
                                                                "range": [
                                                                  3189,
                                                                  3194
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 82,
                                                                    "column": 34
                                                                  },
                                                                  "end": {
                                                                    "line": 82,
                                                                    "column": 39
                                                                  }
                                                                }
                                                              },
                                                              "range": [
                                                                3175,
                                                                3194
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 82,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 82,
                                                                  "column": 39
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              3175,
                                                              3195
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 82,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 82,
                                                                "column": 40
                                                              }
                                                            }
                                                          },
                                                          {
                                                            "type": "ExpressionStatement",
                                                            "expression": {
                                                              "type": "AssignmentExpression",
                                                              "operator": "=",
                                                              "left": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "_this",
                                                                  "range": [
                                                                    3216,
                                                                    3221
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 83,
                                                                      "column": 20
                                                                    },
                                                                    "end": {
                                                                      "line": 83,
                                                                      "column": 25
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "_isScalar",
                                                                  "range": [
                                                                    3222,
                                                                    3231
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 83,
                                                                      "column": 26
                                                                    },
                                                                    "end": {
                                                                      "line": 83,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  3216,
                                                                  3231
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 83,
                                                                    "column": 20
                                                                  },
                                                                  "end": {
                                                                    "line": 83,
                                                                    "column": 35
                                                                  }
                                                                }
                                                              },
                                                              "right": {
                                                                "type": "Literal",
                                                                "value": true,
                                                                "raw": "true",
                                                                "range": [
                                                                  3234,
                                                                  3238
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 83,
                                                                    "column": 38
                                                                  },
                                                                  "end": {
                                                                    "line": 83,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "range": [
                                                                3216,
                                                                3238
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 83,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 83,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              3216,
                                                              3239
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 83,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 83,
                                                                "column": 43
                                                              }
                                                            }
                                                          },
                                                          {
                                                            "type": "IfStatement",
                                                            "test": {
                                                              "type": "UnaryExpression",
                                                              "operator": "!",
                                                              "argument": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "subscriber",
                                                                  "range": [
                                                                    3265,
                                                                    3275
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 84,
                                                                      "column": 25
                                                                    },
                                                                    "end": {
                                                                      "line": 84,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "closed",
                                                                  "range": [
                                                                    3276,
                                                                    3282
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 84,
                                                                      "column": 36
                                                                    },
                                                                    "end": {
                                                                      "line": 84,
                                                                      "column": 42
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  3265,
                                                                  3282
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 84,
                                                                    "column": 25
                                                                  },
                                                                  "end": {
                                                                    "line": 84,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "prefix": true,
                                                              "range": [
                                                                3264,
                                                                3282
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 84,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 84,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "consequent": {
                                                              "type": "BlockStatement",
                                                              "body": [
                                                                {
                                                                  "type": "ExpressionStatement",
                                                                  "expression": {
                                                                    "type": "CallExpression",
                                                                    "callee": {
                                                                      "type": "MemberExpression",
                                                                      "computed": false,
                                                                      "object": {
                                                                        "type": "Identifier",
                                                                        "name": "subscriber",
                                                                        "range": [
                                                                          3310,
                                                                          3320
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 85,
                                                                            "column": 24
                                                                          },
                                                                          "end": {
                                                                            "line": 85,
                                                                            "column": 34
                                                                          }
                                                                        }
                                                                      },
                                                                      "property": {
                                                                        "type": "Identifier",
                                                                        "name": "add",
                                                                        "range": [
                                                                          3321,
                                                                          3324
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 85,
                                                                            "column": 35
                                                                          },
                                                                          "end": {
                                                                            "line": 85,
                                                                            "column": 38
                                                                          }
                                                                        }
                                                                      },
                                                                      "range": [
                                                                        3310,
                                                                        3324
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 85,
                                                                          "column": 24
                                                                        },
                                                                        "end": {
                                                                          "line": 85,
                                                                          "column": 38
                                                                        }
                                                                      }
                                                                    },
                                                                    "arguments": [
                                                                      {
                                                                        "type": "CallExpression",
                                                                        "callee": {
                                                                          "type": "MemberExpression",
                                                                          "computed": false,
                                                                          "object": {
                                                                            "type": "Identifier",
                                                                            "name": "scheduler",
                                                                            "range": [
                                                                              3325,
                                                                              3334
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 85,
                                                                                "column": 39
                                                                              },
                                                                              "end": {
                                                                                "line": 85,
                                                                                "column": 48
                                                                              }
                                                                            }
                                                                          },
                                                                          "property": {
                                                                            "type": "Identifier",
                                                                            "name": "schedule",
                                                                            "range": [
                                                                              3335,
                                                                              3343
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 85,
                                                                                "column": 49
                                                                              },
                                                                              "end": {
                                                                                "line": 85,
                                                                                "column": 57
                                                                              }
                                                                            }
                                                                          },
                                                                          "range": [
                                                                            3325,
                                                                            3343
                                                                          ],
                                                                          "loc": {
                                                                            "start": {
                                                                              "line": 85,
                                                                              "column": 39
                                                                            },
                                                                            "end": {
                                                                              "line": 85,
                                                                              "column": 57
                                                                            }
                                                                          }
                                                                        },
                                                                        "arguments": [
                                                                          {
                                                                            "type": "Identifier",
                                                                            "name": "dispatchNext",
                                                                            "range": [
                                                                              3344,
                                                                              3356
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 85,
                                                                                "column": 58
                                                                              },
                                                                              "end": {
                                                                                "line": 85,
                                                                                "column": 70
                                                                              }
                                                                            }
                                                                          },
                                                                          {
                                                                            "type": "Literal",
                                                                            "value": 0,
                                                                            "raw": "0",
                                                                            "range": [
                                                                              3358,
                                                                              3359
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 85,
                                                                                "column": 72
                                                                              },
                                                                              "end": {
                                                                                "line": 85,
                                                                                "column": 73
                                                                              }
                                                                            }
                                                                          },
                                                                          {
                                                                            "type": "ObjectExpression",
                                                                            "properties": [
                                                                              {
                                                                                "type": "Property",
                                                                                "key": {
                                                                                  "type": "Identifier",
                                                                                  "name": "value",
                                                                                  "range": [
                                                                                    3363,
                                                                                    3368
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 85,
                                                                                      "column": 77
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 85,
                                                                                      "column": 82
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "value": {
                                                                                  "type": "Identifier",
                                                                                  "name": "value",
                                                                                  "range": [
                                                                                    3370,
                                                                                    3375
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 85,
                                                                                      "column": 84
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 85,
                                                                                      "column": 89
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "kind": "init",
                                                                                "method": false,
                                                                                "shorthand": false,
                                                                                "computed": false,
                                                                                "range": [
                                                                                  3363,
                                                                                  3375
                                                                                ],
                                                                                "loc": {
                                                                                  "start": {
                                                                                    "line": 85,
                                                                                    "column": 77
                                                                                  },
                                                                                  "end": {
                                                                                    "line": 85,
                                                                                    "column": 89
                                                                                  }
                                                                                }
                                                                              },
                                                                              {
                                                                                "type": "Property",
                                                                                "key": {
                                                                                  "type": "Identifier",
                                                                                  "name": "subscriber",
                                                                                  "range": [
                                                                                    3377,
                                                                                    3387
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 85,
                                                                                      "column": 91
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 85,
                                                                                      "column": 101
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "value": {
                                                                                  "type": "Identifier",
                                                                                  "name": "subscriber",
                                                                                  "range": [
                                                                                    3389,
                                                                                    3399
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 85,
                                                                                      "column": 103
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 85,
                                                                                      "column": 113
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "kind": "init",
                                                                                "method": false,
                                                                                "shorthand": false,
                                                                                "computed": false,
                                                                                "range": [
                                                                                  3377,
                                                                                  3399
                                                                                ],
                                                                                "loc": {
                                                                                  "start": {
                                                                                    "line": 85,
                                                                                    "column": 91
                                                                                  },
                                                                                  "end": {
                                                                                    "line": 85,
                                                                                    "column": 113
                                                                                  }
                                                                                }
                                                                              }
                                                                            ],
                                                                            "range": [
                                                                              3361,
                                                                              3401
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 85,
                                                                                "column": 75
                                                                              },
                                                                              "end": {
                                                                                "line": 85,
                                                                                "column": 115
                                                                              }
                                                                            }
                                                                          }
                                                                        ],
                                                                        "range": [
                                                                          3325,
                                                                          3402
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 85,
                                                                            "column": 39
                                                                          },
                                                                          "end": {
                                                                            "line": 85,
                                                                            "column": 116
                                                                          }
                                                                        }
                                                                      }
                                                                    ],
                                                                    "range": [
                                                                      3310,
                                                                      3403
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 85,
                                                                        "column": 24
                                                                      },
                                                                      "end": {
                                                                        "line": 85,
                                                                        "column": 117
                                                                      }
                                                                    }
                                                                  },
                                                                  "range": [
                                                                    3310,
                                                                    3404
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 85,
                                                                      "column": 24
                                                                    },
                                                                    "end": {
                                                                      "line": 85,
                                                                      "column": 118
                                                                    }
                                                                  }
                                                                }
                                                              ],
                                                              "range": [
                                                                3284,
                                                                3426
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 84,
                                                                  "column": 44
                                                                },
                                                                "end": {
                                                                  "line": 86,
                                                                  "column": 21
                                                                }
                                                              }
                                                            },
                                                            "alternate": null,
                                                            "range": [
                                                              3260,
                                                              3426
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 84,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 86,
                                                                "column": 21
                                                              }
                                                            }
                                                          }
                                                        ],
                                                        "range": [
                                                          3153,
                                                          3444
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 81,
                                                            "column": 46
                                                          },
                                                          "end": {
                                                            "line": 87,
                                                            "column": 17
                                                          }
                                                        }
                                                      },
                                                      "generator": false,
                                                      "expression": false,
                                                      "range": [
                                                        3136,
                                                        3444
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 81,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 87,
                                                          "column": 17
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "FunctionExpression",
                                                      "id": null,
                                                      "params": [
                                                        {
                                                          "type": "Identifier",
                                                          "name": "err",
                                                          "range": [
                                                            3456,
                                                            3459
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 87,
                                                              "column": 29
                                                            },
                                                            "end": {
                                                              "line": 87,
                                                              "column": 32
                                                            }
                                                          }
                                                        }
                                                      ],
                                                      "body": {
                                                        "type": "BlockStatement",
                                                        "body": [
                                                          {
                                                            "type": "IfStatement",
                                                            "test": {
                                                              "type": "UnaryExpression",
                                                              "operator": "!",
                                                              "argument": {
                                                                "type": "MemberExpression",
                                                                "computed": false,
                                                                "object": {
                                                                  "type": "Identifier",
                                                                  "name": "subscriber",
                                                                  "range": [
                                                                    3488,
                                                                    3498
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 88,
                                                                      "column": 25
                                                                    },
                                                                    "end": {
                                                                      "line": 88,
                                                                      "column": 35
                                                                    }
                                                                  }
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "name": "closed",
                                                                  "range": [
                                                                    3499,
                                                                    3505
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 88,
                                                                      "column": 36
                                                                    },
                                                                    "end": {
                                                                      "line": 88,
                                                                      "column": 42
                                                                    }
                                                                  }
                                                                },
                                                                "range": [
                                                                  3488,
                                                                  3505
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 88,
                                                                    "column": 25
                                                                  },
                                                                  "end": {
                                                                    "line": 88,
                                                                    "column": 42
                                                                  }
                                                                }
                                                              },
                                                              "prefix": true,
                                                              "range": [
                                                                3487,
                                                                3505
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 88,
                                                                  "column": 24
                                                                },
                                                                "end": {
                                                                  "line": 88,
                                                                  "column": 42
                                                                }
                                                              }
                                                            },
                                                            "consequent": {
                                                              "type": "BlockStatement",
                                                              "body": [
                                                                {
                                                                  "type": "ExpressionStatement",
                                                                  "expression": {
                                                                    "type": "CallExpression",
                                                                    "callee": {
                                                                      "type": "MemberExpression",
                                                                      "computed": false,
                                                                      "object": {
                                                                        "type": "Identifier",
                                                                        "name": "subscriber",
                                                                        "range": [
                                                                          3533,
                                                                          3543
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 89,
                                                                            "column": 24
                                                                          },
                                                                          "end": {
                                                                            "line": 89,
                                                                            "column": 34
                                                                          }
                                                                        }
                                                                      },
                                                                      "property": {
                                                                        "type": "Identifier",
                                                                        "name": "add",
                                                                        "range": [
                                                                          3544,
                                                                          3547
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 89,
                                                                            "column": 35
                                                                          },
                                                                          "end": {
                                                                            "line": 89,
                                                                            "column": 38
                                                                          }
                                                                        }
                                                                      },
                                                                      "range": [
                                                                        3533,
                                                                        3547
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 89,
                                                                          "column": 24
                                                                        },
                                                                        "end": {
                                                                          "line": 89,
                                                                          "column": 38
                                                                        }
                                                                      }
                                                                    },
                                                                    "arguments": [
                                                                      {
                                                                        "type": "CallExpression",
                                                                        "callee": {
                                                                          "type": "MemberExpression",
                                                                          "computed": false,
                                                                          "object": {
                                                                            "type": "Identifier",
                                                                            "name": "scheduler",
                                                                            "range": [
                                                                              3548,
                                                                              3557
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 89,
                                                                                "column": 39
                                                                              },
                                                                              "end": {
                                                                                "line": 89,
                                                                                "column": 48
                                                                              }
                                                                            }
                                                                          },
                                                                          "property": {
                                                                            "type": "Identifier",
                                                                            "name": "schedule",
                                                                            "range": [
                                                                              3558,
                                                                              3566
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 89,
                                                                                "column": 49
                                                                              },
                                                                              "end": {
                                                                                "line": 89,
                                                                                "column": 57
                                                                              }
                                                                            }
                                                                          },
                                                                          "range": [
                                                                            3548,
                                                                            3566
                                                                          ],
                                                                          "loc": {
                                                                            "start": {
                                                                              "line": 89,
                                                                              "column": 39
                                                                            },
                                                                            "end": {
                                                                              "line": 89,
                                                                              "column": 57
                                                                            }
                                                                          }
                                                                        },
                                                                        "arguments": [
                                                                          {
                                                                            "type": "Identifier",
                                                                            "name": "dispatchError",
                                                                            "range": [
                                                                              3567,
                                                                              3580
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 89,
                                                                                "column": 58
                                                                              },
                                                                              "end": {
                                                                                "line": 89,
                                                                                "column": 71
                                                                              }
                                                                            }
                                                                          },
                                                                          {
                                                                            "type": "Literal",
                                                                            "value": 0,
                                                                            "raw": "0",
                                                                            "range": [
                                                                              3582,
                                                                              3583
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 89,
                                                                                "column": 73
                                                                              },
                                                                              "end": {
                                                                                "line": 89,
                                                                                "column": 74
                                                                              }
                                                                            }
                                                                          },
                                                                          {
                                                                            "type": "ObjectExpression",
                                                                            "properties": [
                                                                              {
                                                                                "type": "Property",
                                                                                "key": {
                                                                                  "type": "Identifier",
                                                                                  "name": "err",
                                                                                  "range": [
                                                                                    3587,
                                                                                    3590
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 89,
                                                                                      "column": 78
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 89,
                                                                                      "column": 81
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "value": {
                                                                                  "type": "Identifier",
                                                                                  "name": "err",
                                                                                  "range": [
                                                                                    3592,
                                                                                    3595
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 89,
                                                                                      "column": 83
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 89,
                                                                                      "column": 86
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "kind": "init",
                                                                                "method": false,
                                                                                "shorthand": false,
                                                                                "computed": false,
                                                                                "range": [
                                                                                  3587,
                                                                                  3595
                                                                                ],
                                                                                "loc": {
                                                                                  "start": {
                                                                                    "line": 89,
                                                                                    "column": 78
                                                                                  },
                                                                                  "end": {
                                                                                    "line": 89,
                                                                                    "column": 86
                                                                                  }
                                                                                }
                                                                              },
                                                                              {
                                                                                "type": "Property",
                                                                                "key": {
                                                                                  "type": "Identifier",
                                                                                  "name": "subscriber",
                                                                                  "range": [
                                                                                    3597,
                                                                                    3607
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 89,
                                                                                      "column": 88
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 89,
                                                                                      "column": 98
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "value": {
                                                                                  "type": "Identifier",
                                                                                  "name": "subscriber",
                                                                                  "range": [
                                                                                    3609,
                                                                                    3619
                                                                                  ],
                                                                                  "loc": {
                                                                                    "start": {
                                                                                      "line": 89,
                                                                                      "column": 100
                                                                                    },
                                                                                    "end": {
                                                                                      "line": 89,
                                                                                      "column": 110
                                                                                    }
                                                                                  }
                                                                                },
                                                                                "kind": "init",
                                                                                "method": false,
                                                                                "shorthand": false,
                                                                                "computed": false,
                                                                                "range": [
                                                                                  3597,
                                                                                  3619
                                                                                ],
                                                                                "loc": {
                                                                                  "start": {
                                                                                    "line": 89,
                                                                                    "column": 88
                                                                                  },
                                                                                  "end": {
                                                                                    "line": 89,
                                                                                    "column": 110
                                                                                  }
                                                                                }
                                                                              }
                                                                            ],
                                                                            "range": [
                                                                              3585,
                                                                              3621
                                                                            ],
                                                                            "loc": {
                                                                              "start": {
                                                                                "line": 89,
                                                                                "column": 76
                                                                              },
                                                                              "end": {
                                                                                "line": 89,
                                                                                "column": 112
                                                                              }
                                                                            }
                                                                          }
                                                                        ],
                                                                        "range": [
                                                                          3548,
                                                                          3622
                                                                        ],
                                                                        "loc": {
                                                                          "start": {
                                                                            "line": 89,
                                                                            "column": 39
                                                                          },
                                                                          "end": {
                                                                            "line": 89,
                                                                            "column": 113
                                                                          }
                                                                        }
                                                                      }
                                                                    ],
                                                                    "range": [
                                                                      3533,
                                                                      3623
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 89,
                                                                        "column": 24
                                                                      },
                                                                      "end": {
                                                                        "line": 89,
                                                                        "column": 114
                                                                      }
                                                                    }
                                                                  },
                                                                  "range": [
                                                                    3533,
                                                                    3624
                                                                  ],
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 89,
                                                                      "column": 24
                                                                    },
                                                                    "end": {
                                                                      "line": 89,
                                                                      "column": 115
                                                                    }
                                                                  }
                                                                }
                                                              ],
                                                              "range": [
                                                                3507,
                                                                3646
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 88,
                                                                  "column": 44
                                                                },
                                                                "end": {
                                                                  "line": 90,
                                                                  "column": 21
                                                                }
                                                              }
                                                            },
                                                            "alternate": null,
                                                            "range": [
                                                              3483,
                                                              3646
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 88,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 90,
                                                                "column": 21
                                                              }
                                                            }
                                                          }
                                                        ],
                                                        "range": [
                                                          3461,
                                                          3664
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 87,
                                                            "column": 34
                                                          },
                                                          "end": {
                                                            "line": 91,
                                                            "column": 17
                                                          }
                                                        }
                                                      },
                                                      "generator": false,
                                                      "expression": false,
                                                      "range": [
                                                        3446,
                                                        3664
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 87,
                                                          "column": 19
                                                        },
                                                        "end": {
                                                          "line": 91,
                                                          "column": 17
                                                        }
                                                      }
                                                    }
                                                  ],
                                                  "range": [
                                                    3123,
                                                    3665
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 81,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 91,
                                                      "column": 18
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "then",
                                                  "range": [
                                                    3687,
                                                    3691
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 92,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 92,
                                                      "column": 25
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  3123,
                                                  3691
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 81,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 92,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Literal",
                                                  "value": null,
                                                  "raw": "null",
                                                  "range": [
                                                    3692,
                                                    3696
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 92,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 92,
                                                      "column": 30
                                                    }
                                                  }
                                                },
                                                {
                                                  "type": "FunctionExpression",
                                                  "id": null,
                                                  "params": [
                                                    {
                                                      "type": "Identifier",
                                                      "name": "err",
                                                      "range": [
                                                        3708,
                                                        3711
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 92,
                                                          "column": 42
                                                        },
                                                        "end": {
                                                          "line": 92,
                                                          "column": 45
                                                        }
                                                      }
                                                    }
                                                  ],
                                                  "body": {
                                                    "type": "BlockStatement",
                                                    "body": [
                                                      {
                                                        "type": "ExpressionStatement",
                                                        "expression": {
                                                          "type": "CallExpression",
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "computed": false,
                                                            "object": {
                                                              "type": "Identifier",
                                                              "name": "root",
                                                              "range": [
                                                                3806,
                                                                3810
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 94,
                                                                  "column": 20
                                                                },
                                                                "end": {
                                                                  "line": 94,
                                                                  "column": 24
                                                                }
                                                              }
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "name": "setTimeout",
                                                              "range": [
                                                                3811,
                                                                3821
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 94,
                                                                  "column": 25
                                                                },
                                                                "end": {
                                                                  "line": 94,
                                                                  "column": 35
                                                                }
                                                              }
                                                            },
                                                            "range": [
                                                              3806,
                                                              3821
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 94,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 94,
                                                                "column": 35
                                                              }
                                                            }
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "FunctionExpression",
                                                              "id": null,
                                                              "params": [],
                                                              "body": {
                                                                "type": "BlockStatement",
                                                                "body": [
                                                                  {
                                                                    "type": "ThrowStatement",
                                                                    "argument": {
                                                                      "type": "Identifier",
                                                                      "name": "err",
                                                                      "range": [
                                                                        3842,
                                                                        3845
                                                                      ],
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 94,
                                                                          "column": 56
                                                                        },
                                                                        "end": {
                                                                          "line": 94,
                                                                          "column": 59
                                                                        }
                                                                      }
                                                                    },
                                                                    "range": [
                                                                      3836,
                                                                      3846
                                                                    ],
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 94,
                                                                        "column": 50
                                                                      },
                                                                      "end": {
                                                                        "line": 94,
                                                                        "column": 60
                                                                      }
                                                                    }
                                                                  }
                                                                ],
                                                                "range": [
                                                                  3834,
                                                                  3848
                                                                ],
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 94,
                                                                    "column": 48
                                                                  },
                                                                  "end": {
                                                                    "line": 94,
                                                                    "column": 62
                                                                  }
                                                                }
                                                              },
                                                              "generator": false,
                                                              "expression": false,
                                                              "range": [
                                                                3822,
                                                                3848
                                                              ],
                                                              "loc": {
                                                                "start": {
                                                                  "line": 94,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 94,
                                                                  "column": 62
                                                                }
                                                              }
                                                            }
                                                          ],
                                                          "range": [
                                                            3806,
                                                            3849
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 94,
                                                              "column": 20
                                                            },
                                                            "end": {
                                                              "line": 94,
                                                              "column": 63
                                                            }
                                                          }
                                                        },
                                                        "range": [
                                                          3806,
                                                          3850
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 94,
                                                            "column": 20
                                                          },
                                                          "end": {
                                                            "line": 94,
                                                            "column": 64
                                                          }
                                                        },
                                                        "leadingComments": [
                                                          {
                                                            "type": "Line",
                                                            "value": " escape the promise trap, throw unhandled errors",
                                                            "range": [
                                                              3735,
                                                              3785
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 93,
                                                                "column": 20
                                                              },
                                                              "end": {
                                                                "line": 93,
                                                                "column": 70
                                                              }
                                                            }
                                                          }
                                                        ]
                                                      }
                                                    ],
                                                    "range": [
                                                      3713,
                                                      3868
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 92,
                                                        "column": 47
                                                      },
                                                      "end": {
                                                        "line": 95,
                                                        "column": 17
                                                      }
                                                    }
                                                  },
                                                  "generator": false,
                                                  "expression": false,
                                                  "range": [
                                                    3698,
                                                    3868
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 92,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 95,
                                                      "column": 17
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                3123,
                                                3869
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 81,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 95,
                                                  "column": 18
                                                }
                                              }
                                            },
                                            "range": [
                                              3123,
                                              3870
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 81,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 95,
                                                "column": 19
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          3105,
                                          3884
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 96,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "range": [
                                        2881,
                                        3884
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 75,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 96,
                                          "column": 13
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    2867,
                                    3894
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 74,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 9
                                    }
                                  }
                                },
                                "range": [
                                  1915,
                                  3894
                                ],
                                "loc": {
                                  "start": {
                                    "line": 48,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 9
                                  }
                                }
                              }
                            ],
                            "range": [
                              1803,
                              3900
                            ],
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 67
                              },
                              "end": {
                                "line": 98,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            1781,
                            3900
                          ],
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 45
                            },
                            "end": {
                              "line": 98,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          1740,
                          3900
                        ],
                        "loc": {
                          "start": {
                            "line": 44,
                            "column": 4
                          },
                          "end": {
                            "line": 98,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        1740,
                        3901
                      ],
                      "loc": {
                        "start": {
                          "line": 44,
                          "column": 4
                        },
                        "end": {
                          "line": 98,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "PromiseObservable",
                        "range": [
                          3913,
                          3930
                        ],
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 11
                          },
                          "end": {
                            "line": 99,
                            "column": 28
                          }
                        }
                      },
                      "range": [
                        3906,
                        3931
                      ],
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 4
                        },
                        "end": {
                          "line": 99,
                          "column": 29
                        }
                      }
                    }
                  ],
                  "range": [
                    226,
                    3933
                  ],
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 50
                    },
                    "end": {
                      "line": 100,
                      "column": 1
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  208,
                  3933
                ],
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 32
                  },
                  "end": {
                    "line": 100,
                    "column": 1
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "Observable",
                  "range": [
                    3934,
                    3944
                  ],
                  "loc": {
                    "start": {
                      "line": 100,
                      "column": 2
                    },
                    "end": {
                      "line": 100,
                      "column": 12
                    }
                  }
                }
              ],
              "range": [
                208,
                3945
              ],
              "loc": {
                "start": {
                  "line": 8,
                  "column": 32
                },
                "end": {
                  "line": 100,
                  "column": 13
                }
              }
            },
            "range": [
              187,
              3946
            ],
            "loc": {
              "start": {
                "line": 8,
                "column": 11
              },
              "end": {
                "line": 100,
                "column": 14
              }
            }
          }
        ],
        "kind": "var",
        "range": [
          183,
          3947
        ],
        "loc": {
          "start": {
            "line": 8,
            "column": 7
          },
          "end": {
            "line": 100,
            "column": 15
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @extends {Ignored}\n * @hide true\n ",
            "range": [
              81,
              175
            ],
            "loc": {
              "start": {
                "line": 3,
                "column": 0
              },
              "end": {
                "line": 7,
                "column": 3
              }
            }
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "range": [
        176,
        3947
      ],
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 100,
          "column": 15
        }
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @extends {Ignored}\n * @hide true\n ",
          "range": [
            81,
            175
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 0
            },
            "end": {
              "line": 7,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "id": {
        "type": "Identifier",
        "name": "dispatchNext",
        "range": [
          3957,
          3969
        ],
        "loc": {
          "start": {
            "line": 101,
            "column": 9
          },
          "end": {
            "line": 101,
            "column": 21
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "arg",
          "range": [
            3970,
            3973
          ],
          "loc": {
            "start": {
              "line": 101,
              "column": 22
            },
            "end": {
              "line": 101,
              "column": 25
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "value",
                  "range": [
                    3985,
                    3990
                  ],
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 8
                    },
                    "end": {
                      "line": 102,
                      "column": 13
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      3993,
                      3996
                    ],
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 16
                      },
                      "end": {
                        "line": 102,
                        "column": 19
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "value",
                    "range": [
                      3997,
                      4002
                    ],
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 20
                      },
                      "end": {
                        "line": 102,
                        "column": 25
                      }
                    }
                  },
                  "range": [
                    3993,
                    4002
                  ],
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 16
                    },
                    "end": {
                      "line": 102,
                      "column": 25
                    }
                  }
                },
                "range": [
                  3985,
                  4002
                ],
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 8
                  },
                  "end": {
                    "line": 102,
                    "column": 25
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    4004,
                    4014
                  ],
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 27
                    },
                    "end": {
                      "line": 102,
                      "column": 37
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      4017,
                      4020
                    ],
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 40
                      },
                      "end": {
                        "line": 102,
                        "column": 43
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      4021,
                      4031
                    ],
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 44
                      },
                      "end": {
                        "line": 102,
                        "column": 54
                      }
                    }
                  },
                  "range": [
                    4017,
                    4031
                  ],
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 40
                    },
                    "end": {
                      "line": 102,
                      "column": 54
                    }
                  }
                },
                "range": [
                  4004,
                  4031
                ],
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 27
                  },
                  "end": {
                    "line": 102,
                    "column": 54
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              3981,
              4032
            ],
            "loc": {
              "start": {
                "line": 102,
                "column": 4
              },
              "end": {
                "line": 102,
                "column": 55
              }
            }
          },
          {
            "type": "IfStatement",
            "test": {
              "type": "UnaryExpression",
              "operator": "!",
              "argument": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    4042,
                    4052
                  ],
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 9
                    },
                    "end": {
                      "line": 103,
                      "column": 19
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "closed",
                  "range": [
                    4053,
                    4059
                  ],
                  "loc": {
                    "start": {
                      "line": 103,
                      "column": 20
                    },
                    "end": {
                      "line": 103,
                      "column": 26
                    }
                  }
                },
                "range": [
                  4042,
                  4059
                ],
                "loc": {
                  "start": {
                    "line": 103,
                    "column": 9
                  },
                  "end": {
                    "line": 103,
                    "column": 26
                  }
                }
              },
              "prefix": true,
              "range": [
                4041,
                4059
              ],
              "loc": {
                "start": {
                  "line": 103,
                  "column": 8
                },
                "end": {
                  "line": 103,
                  "column": 26
                }
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "body": [
                {
                  "type": "ExpressionStatement",
                  "expression": {
                    "type": "CallExpression",
                    "callee": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "subscriber",
                        "range": [
                          4071,
                          4081
                        ],
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 8
                          },
                          "end": {
                            "line": 104,
                            "column": 18
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "next",
                        "range": [
                          4082,
                          4086
                        ],
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 19
                          },
                          "end": {
                            "line": 104,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        4071,
                        4086
                      ],
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 8
                        },
                        "end": {
                          "line": 104,
                          "column": 23
                        }
                      }
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "name": "value",
                        "range": [
                          4087,
                          4092
                        ],
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 24
                          },
                          "end": {
                            "line": 104,
                            "column": 29
                          }
                        }
                      }
                    ],
                    "range": [
                      4071,
                      4093
                    ],
                    "loc": {
                      "start": {
                        "line": 104,
                        "column": 8
                      },
                      "end": {
                        "line": 104,
                        "column": 30
                      }
                    }
                  },
                  "range": [
                    4071,
                    4094
                  ],
                  "loc": {
                    "start": {
                      "line": 104,
                      "column": 8
                    },
                    "end": {
                      "line": 104,
                      "column": 31
                    }
                  }
                },
                {
                  "type": "ExpressionStatement",
                  "expression": {
                    "type": "CallExpression",
                    "callee": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "subscriber",
                        "range": [
                          4103,
                          4113
                        ],
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 8
                          },
                          "end": {
                            "line": 105,
                            "column": 18
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "complete",
                        "range": [
                          4114,
                          4122
                        ],
                        "loc": {
                          "start": {
                            "line": 105,
                            "column": 19
                          },
                          "end": {
                            "line": 105,
                            "column": 27
                          }
                        }
                      },
                      "range": [
                        4103,
                        4122
                      ],
                      "loc": {
                        "start": {
                          "line": 105,
                          "column": 8
                        },
                        "end": {
                          "line": 105,
                          "column": 27
                        }
                      }
                    },
                    "arguments": [],
                    "range": [
                      4103,
                      4124
                    ],
                    "loc": {
                      "start": {
                        "line": 105,
                        "column": 8
                      },
                      "end": {
                        "line": 105,
                        "column": 29
                      }
                    }
                  },
                  "range": [
                    4103,
                    4125
                  ],
                  "loc": {
                    "start": {
                      "line": 105,
                      "column": 8
                    },
                    "end": {
                      "line": 105,
                      "column": 30
                    }
                  }
                }
              ],
              "range": [
                4061,
                4131
              ],
              "loc": {
                "start": {
                  "line": 103,
                  "column": 28
                },
                "end": {
                  "line": 106,
                  "column": 5
                }
              }
            },
            "alternate": null,
            "range": [
              4037,
              4131
            ],
            "loc": {
              "start": {
                "line": 103,
                "column": 4
              },
              "end": {
                "line": 106,
                "column": 5
              }
            }
          }
        ],
        "range": [
          3975,
          4133
        ],
        "loc": {
          "start": {
            "line": 101,
            "column": 27
          },
          "end": {
            "line": 107,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        3948,
        4133
      ],
      "loc": {
        "start": {
          "line": 101,
          "column": 0
        },
        "end": {
          "line": 107,
          "column": 1
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "id": {
        "type": "Identifier",
        "name": "dispatchError",
        "range": [
          4143,
          4156
        ],
        "loc": {
          "start": {
            "line": 108,
            "column": 9
          },
          "end": {
            "line": 108,
            "column": 22
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "arg",
          "range": [
            4157,
            4160
          ],
          "loc": {
            "start": {
              "line": 108,
              "column": 23
            },
            "end": {
              "line": 108,
              "column": 26
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "err",
                  "range": [
                    4172,
                    4175
                  ],
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 8
                    },
                    "end": {
                      "line": 109,
                      "column": 11
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      4178,
                      4181
                    ],
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 14
                      },
                      "end": {
                        "line": 109,
                        "column": 17
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "err",
                    "range": [
                      4182,
                      4185
                    ],
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 18
                      },
                      "end": {
                        "line": 109,
                        "column": 21
                      }
                    }
                  },
                  "range": [
                    4178,
                    4185
                  ],
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 14
                    },
                    "end": {
                      "line": 109,
                      "column": 21
                    }
                  }
                },
                "range": [
                  4172,
                  4185
                ],
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 8
                  },
                  "end": {
                    "line": 109,
                    "column": 21
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    4187,
                    4197
                  ],
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 23
                    },
                    "end": {
                      "line": 109,
                      "column": 33
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      4200,
                      4203
                    ],
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 36
                      },
                      "end": {
                        "line": 109,
                        "column": 39
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      4204,
                      4214
                    ],
                    "loc": {
                      "start": {
                        "line": 109,
                        "column": 40
                      },
                      "end": {
                        "line": 109,
                        "column": 50
                      }
                    }
                  },
                  "range": [
                    4200,
                    4214
                  ],
                  "loc": {
                    "start": {
                      "line": 109,
                      "column": 36
                    },
                    "end": {
                      "line": 109,
                      "column": 50
                    }
                  }
                },
                "range": [
                  4187,
                  4214
                ],
                "loc": {
                  "start": {
                    "line": 109,
                    "column": 23
                  },
                  "end": {
                    "line": 109,
                    "column": 50
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              4168,
              4215
            ],
            "loc": {
              "start": {
                "line": 109,
                "column": 4
              },
              "end": {
                "line": 109,
                "column": 51
              }
            }
          },
          {
            "type": "IfStatement",
            "test": {
              "type": "UnaryExpression",
              "operator": "!",
              "argument": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    4225,
                    4235
                  ],
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 9
                    },
                    "end": {
                      "line": 110,
                      "column": 19
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "closed",
                  "range": [
                    4236,
                    4242
                  ],
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 20
                    },
                    "end": {
                      "line": 110,
                      "column": 26
                    }
                  }
                },
                "range": [
                  4225,
                  4242
                ],
                "loc": {
                  "start": {
                    "line": 110,
                    "column": 9
                  },
                  "end": {
                    "line": 110,
                    "column": 26
                  }
                }
              },
              "prefix": true,
              "range": [
                4224,
                4242
              ],
              "loc": {
                "start": {
                  "line": 110,
                  "column": 8
                },
                "end": {
                  "line": 110,
                  "column": 26
                }
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "body": [
                {
                  "type": "ExpressionStatement",
                  "expression": {
                    "type": "CallExpression",
                    "callee": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "subscriber",
                        "range": [
                          4254,
                          4264
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 8
                          },
                          "end": {
                            "line": 111,
                            "column": 18
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "error",
                        "range": [
                          4265,
                          4270
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 19
                          },
                          "end": {
                            "line": 111,
                            "column": 24
                          }
                        }
                      },
                      "range": [
                        4254,
                        4270
                      ],
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 8
                        },
                        "end": {
                          "line": 111,
                          "column": 24
                        }
                      }
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "name": "err",
                        "range": [
                          4271,
                          4274
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 25
                          },
                          "end": {
                            "line": 111,
                            "column": 28
                          }
                        }
                      }
                    ],
                    "range": [
                      4254,
                      4275
                    ],
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 8
                      },
                      "end": {
                        "line": 111,
                        "column": 29
                      }
                    }
                  },
                  "range": [
                    4254,
                    4276
                  ],
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 8
                    },
                    "end": {
                      "line": 111,
                      "column": 30
                    }
                  }
                }
              ],
              "range": [
                4244,
                4282
              ],
              "loc": {
                "start": {
                  "line": 110,
                  "column": 28
                },
                "end": {
                  "line": 112,
                  "column": 5
                }
              }
            },
            "alternate": null,
            "range": [
              4220,
              4282
            ],
            "loc": {
              "start": {
                "line": 110,
                "column": 4
              },
              "end": {
                "line": 112,
                "column": 5
              }
            }
          }
        ],
        "range": [
          4162,
          4284
        ],
        "loc": {
          "start": {
            "line": 108,
            "column": 28
          },
          "end": {
            "line": 113,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        4134,
        4284
      ],
      "loc": {
        "start": {
          "line": 108,
          "column": 0
        },
        "end": {
          "line": 113,
          "column": 1
        }
      },
      "trailingComments": [
        {
          "type": "Line",
          "value": "# sourceMappingURL=PromiseObservable.js.map",
          "range": [
            4285,
            4330
          ],
          "loc": {
            "start": {
              "line": 114,
              "column": 0
            },
            "end": {
              "line": 114,
              "column": 45
            }
          }
        }
      ]
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    4284
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 113,
      "column": 1
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @extends {Ignored}\n * @hide true\n ",
      "range": [
        81,
        175
      ],
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * Converts a Promise to an Observable.\n     *\n     * <span class=\"informal\">Returns an Observable that just emits the Promise's\n     * resolved value, then completes.</span>\n     *\n     * Converts an ES2015 Promise or a Promises/A+ spec compliant Promise to an\n     * Observable. If the Promise resolves with a value, the output Observable\n     * emits that resolved value as a `next`, and then completes. If the Promise\n     * is rejected, then the output Observable emits the corresponding Error.\n     *\n     * @example <caption>Convert the Promise returned by Fetch to an Observable</caption>\n     * var result = Rx.Observable.fromPromise(fetch('http://myserver.com/'));\n     * result.subscribe(x => console.log(x), e => console.error(e));\n     *\n     * @see {@link bindCallback}\n     * @see {@link from}\n     *\n     * @param {Promise<T>} promise The promise to be converted.\n     * @param {Scheduler} [scheduler] An optional Scheduler to use for scheduling\n     * the delivery of the resolved value (or the rejection).\n     * @return {Observable<T>} An Observable which wraps the Promise.\n     * @static true\n     * @name fromPromise\n     * @owner Observable\n     ",
      "range": [
        428,
        1607
      ],
      "loc": {
        "start": {
          "line": 15,
          "column": 4
        },
        "end": {
          "line": 40,
          "column": 7
        }
      }
    },
    {
      "type": "Line",
      "value": " escape the promise trap, throw unhandled errors",
      "range": [
        2694,
        2744
      ],
      "loc": {
        "start": {
          "line": 69,
          "column": 20
        },
        "end": {
          "line": 69,
          "column": 70
        }
      }
    },
    {
      "type": "Line",
      "value": " escape the promise trap, throw unhandled errors",
      "range": [
        3735,
        3785
      ],
      "loc": {
        "start": {
          "line": 93,
          "column": 20
        },
        "end": {
          "line": 93,
          "column": 70
        }
      }
    },
    {
      "type": "Line",
      "value": "# sourceMappingURL=PromiseObservable.js.map",
      "range": [
        4285,
        4330
      ],
      "loc": {
        "start": {
          "line": 114,
          "column": 0
        },
        "end": {
          "line": 114,
          "column": 45
        }
      }
    }
  ]
}