{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Observable",
            "range": [
              9,
              19
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 19
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "Observable",
            "range": [
              9,
              19
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 19
              }
            }
          },
          "range": [
            9,
            19
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 9
            },
            "end": {
              "line": 1,
              "column": 19
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./Observable",
        "raw": "'./Observable'",
        "range": [
          27,
          41
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 27
          },
          "end": {
            "line": 1,
            "column": 41
          }
        }
      },
      "range": [
        0,
        42
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 42
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * Represents a push-based event or value that an {@link Observable} can emit.\n * This class is particularly useful for operators that manage notifications,\n * like {@link materialize}, {@link dematerialize}, {@link observeOn}, and\n * others. Besides wrapping the actual delivered value, it also annotates it\n * with metadata of, for instance, what type of push message it is (`next`,\n * `error`, or `complete`).\n *\n * @see {@link materialize}\n * @see {@link dematerialize}\n * @see {@link observeOn}\n *\n * @class Notification<T>\n ",
          "range": [
            43,
            579
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 0
            },
            "end": {
              "line": 15,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "VariableDeclaration",
        "declarations": [
          {
            "type": "VariableDeclarator",
            "id": {
              "type": "Identifier",
              "name": "Notification",
              "range": [
                591,
                603
              ],
              "loc": {
                "start": {
                  "line": 16,
                  "column": 11
                },
                "end": {
                  "line": 16,
                  "column": 23
                }
              }
            },
            "init": {
              "type": "CallExpression",
              "callee": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "FunctionDeclaration",
                      "id": {
                        "type": "Identifier",
                        "name": "Notification",
                        "range": [
                          634,
                          646
                        ],
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 13
                          },
                          "end": {
                            "line": 17,
                            "column": 25
                          }
                        }
                      },
                      "params": [
                        {
                          "type": "Identifier",
                          "name": "kind",
                          "range": [
                            647,
                            651
                          ],
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 26
                            },
                            "end": {
                              "line": 17,
                              "column": 30
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "name": "value",
                          "range": [
                            653,
                            658
                          ],
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 32
                            },
                            "end": {
                              "line": 17,
                              "column": 37
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "name": "error",
                          "range": [
                            660,
                            665
                          ],
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 39
                            },
                            "end": {
                              "line": 17,
                              "column": 44
                            }
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    677,
                                    681
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "kind",
                                  "range": [
                                    682,
                                    686
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 17
                                    }
                                  }
                                },
                                "range": [
                                  677,
                                  686
                                ],
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 17
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "kind",
                                "range": [
                                  689,
                                  693
                                ],
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                677,
                                693
                              ],
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 8
                                },
                                "end": {
                                  "line": 18,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              677,
                              694
                            ],
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 8
                              },
                              "end": {
                                "line": 18,
                                "column": 25
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    703,
                                    707
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 19,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 19,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "value",
                                  "range": [
                                    708,
                                    713
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 19,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 19,
                                      "column": 18
                                    }
                                  }
                                },
                                "range": [
                                  703,
                                  713
                                ],
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "value",
                                "range": [
                                  716,
                                  721
                                ],
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 26
                                  }
                                }
                              },
                              "range": [
                                703,
                                721
                              ],
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 8
                                },
                                "end": {
                                  "line": 19,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              703,
                              722
                            ],
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 8
                              },
                              "end": {
                                "line": 19,
                                "column": 27
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    731,
                                    735
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "error",
                                  "range": [
                                    736,
                                    741
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 20,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 18
                                    }
                                  }
                                },
                                "range": [
                                  731,
                                  741
                                ],
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 20,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "error",
                                "range": [
                                  744,
                                  749
                                ],
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 20,
                                    "column": 26
                                  }
                                }
                              },
                              "range": [
                                731,
                                749
                              ],
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 8
                                },
                                "end": {
                                  "line": 20,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              731,
                              750
                            ],
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 8
                              },
                              "end": {
                                "line": 20,
                                "column": 27
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    759,
                                    763
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "hasValue",
                                  "range": [
                                    764,
                                    772
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 21
                                    }
                                  }
                                },
                                "range": [
                                  759,
                                  772
                                ],
                                "loc": {
                                  "start": {
                                    "line": 21,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 21,
                                    "column": 21
                                  }
                                }
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "operator": "===",
                                "left": {
                                  "type": "Identifier",
                                  "name": "kind",
                                  "range": [
                                    775,
                                    779
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 28
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Literal",
                                  "value": "N",
                                  "raw": "'N'",
                                  "range": [
                                    784,
                                    787
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 21,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 21,
                                      "column": 36
                                    }
                                  }
                                },
                                "range": [
                                  775,
                                  787
                                ],
                                "loc": {
                                  "start": {
                                    "line": 21,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 21,
                                    "column": 36
                                  }
                                }
                              },
                              "range": [
                                759,
                                787
                              ],
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 8
                                },
                                "end": {
                                  "line": 21,
                                  "column": 36
                                }
                              }
                            },
                            "range": [
                              759,
                              788
                            ],
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 8
                              },
                              "end": {
                                "line": 21,
                                "column": 37
                              }
                            }
                          }
                        ],
                        "range": [
                          667,
                          794
                        ],
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 46
                          },
                          "end": {
                            "line": 22,
                            "column": 5
                          }
                        }
                      },
                      "generator": false,
                      "expression": false,
                      "range": [
                        625,
                        794
                      ],
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 4
                        },
                        "end": {
                          "line": 22,
                          "column": 5
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Delivers to the given `observer` the value wrapped by this Notification.\n     * @param {Observer} observer\n     * @return\n     ",
                          "range": [
                            799,
                            939
                          ],
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 4
                            },
                            "end": {
                              "line": 27,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "Notification",
                              "range": [
                                944,
                                956
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 4
                                },
                                "end": {
                                  "line": 28,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                957,
                                966
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 17
                                },
                                "end": {
                                  "line": 28,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              944,
                              966
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 4
                              },
                              "end": {
                                "line": 28,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "observe",
                            "range": [
                              967,
                              974
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 27
                              },
                              "end": {
                                "line": 28,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            944,
                            974
                          ],
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 4
                            },
                            "end": {
                              "line": 28,
                              "column": 34
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "observer",
                              "range": [
                                987,
                                995
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 47
                                },
                                "end": {
                                  "line": 28,
                                  "column": 55
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "SwitchStatement",
                                "discriminant": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      1015,
                                      1019
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "kind",
                                    "range": [
                                      1020,
                                      1024
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "range": [
                                    1015,
                                    1024
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 25
                                    }
                                  }
                                },
                                "cases": [
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "N",
                                      "raw": "'N'",
                                      "range": [
                                        1045,
                                        1048
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 30,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 30,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "observer",
                                              "range": [
                                                1073,
                                                1081
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 31
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "next",
                                              "range": [
                                                1082,
                                                1086
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "range": [
                                              1073,
                                              1086
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "observer",
                                                "range": [
                                                  1090,
                                                  1098
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 48
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "next",
                                                "range": [
                                                  1099,
                                                  1103
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 49
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 53
                                                  }
                                                }
                                              },
                                              "range": [
                                                1090,
                                                1103
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 53
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "range": [
                                                    1104,
                                                    1108
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 31,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 31,
                                                      "column": 58
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "value",
                                                  "range": [
                                                    1109,
                                                    1114
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 31,
                                                      "column": 59
                                                    },
                                                    "end": {
                                                      "line": 31,
                                                      "column": 64
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1104,
                                                  1114
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 31,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 31,
                                                    "column": 64
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              1090,
                                              1115
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 65
                                              }
                                            }
                                          },
                                          "range": [
                                            1073,
                                            1115
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 31,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 31,
                                              "column": 65
                                            }
                                          }
                                        },
                                        "range": [
                                          1066,
                                          1116
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 31,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 31,
                                            "column": 66
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1040,
                                      1116
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 30,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 66
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "E",
                                      "raw": "'E'",
                                      "range": [
                                        1134,
                                        1137
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 32,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 32,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "observer",
                                              "range": [
                                                1162,
                                                1170
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 33,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 33,
                                                  "column": 31
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "error",
                                              "range": [
                                                1171,
                                                1176
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 33,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 33,
                                                  "column": 37
                                                }
                                              }
                                            },
                                            "range": [
                                              1162,
                                              1176
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 33,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 33,
                                                "column": 37
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "observer",
                                                "range": [
                                                  1180,
                                                  1188
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 33,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 33,
                                                    "column": 49
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "error",
                                                "range": [
                                                  1189,
                                                  1194
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 33,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 33,
                                                    "column": 55
                                                  }
                                                }
                                              },
                                              "range": [
                                                1180,
                                                1194
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 33,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 33,
                                                  "column": 55
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "range": [
                                                    1195,
                                                    1199
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 33,
                                                      "column": 56
                                                    },
                                                    "end": {
                                                      "line": 33,
                                                      "column": 60
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "error",
                                                  "range": [
                                                    1200,
                                                    1205
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 33,
                                                      "column": 61
                                                    },
                                                    "end": {
                                                      "line": 33,
                                                      "column": 66
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1195,
                                                  1205
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 33,
                                                    "column": 56
                                                  },
                                                  "end": {
                                                    "line": 33,
                                                    "column": 66
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              1180,
                                              1206
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 33,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 33,
                                                "column": 67
                                              }
                                            }
                                          },
                                          "range": [
                                            1162,
                                            1206
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 33,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 33,
                                              "column": 67
                                            }
                                          }
                                        },
                                        "range": [
                                          1155,
                                          1207
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 68
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1129,
                                      1207
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 32,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 33,
                                        "column": 68
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "C",
                                      "raw": "'C'",
                                      "range": [
                                        1225,
                                        1228
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "observer",
                                              "range": [
                                                1253,
                                                1261
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 35,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 35,
                                                  "column": 31
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "complete",
                                              "range": [
                                                1262,
                                                1270
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 35,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 35,
                                                  "column": 40
                                                }
                                              }
                                            },
                                            "range": [
                                              1253,
                                              1270
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 35,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 35,
                                                "column": 40
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "observer",
                                                "range": [
                                                  1274,
                                                  1282
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 35,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 35,
                                                    "column": 52
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "complete",
                                                "range": [
                                                  1283,
                                                  1291
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 35,
                                                    "column": 53
                                                  },
                                                  "end": {
                                                    "line": 35,
                                                    "column": 61
                                                  }
                                                }
                                              },
                                              "range": [
                                                1274,
                                                1291
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 35,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 35,
                                                  "column": 61
                                                }
                                              }
                                            },
                                            "arguments": [],
                                            "range": [
                                              1274,
                                              1293
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 35,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 35,
                                                "column": 63
                                              }
                                            }
                                          },
                                          "range": [
                                            1253,
                                            1293
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 35,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 35,
                                              "column": 63
                                            }
                                          }
                                        },
                                        "range": [
                                          1246,
                                          1294
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 35,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 35,
                                            "column": 64
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1220,
                                      1294
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 64
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  1007,
                                  1304
                                ],
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 9
                                  }
                                }
                              }
                            ],
                            "range": [
                              997,
                              1310
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 57
                              },
                              "end": {
                                "line": 37,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            977,
                            1310
                          ],
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 37
                            },
                            "end": {
                              "line": 37,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          944,
                          1310
                        ],
                        "loc": {
                          "start": {
                            "line": 28,
                            "column": 4
                          },
                          "end": {
                            "line": 37,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        944,
                        1311
                      ],
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 4
                        },
                        "end": {
                          "line": 37,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Delivers to the given `observer` the value wrapped by this Notification.\n     * @param {Observer} observer\n     * @return\n     ",
                          "range": [
                            799,
                            939
                          ],
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 4
                            },
                            "end": {
                              "line": 27,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Given some {@link Observer} callbacks, deliver the value represented by the\n     * current Notification to the correctly corresponding callback.\n     * @param {function(value: T): void} next An Observer `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
                          "range": [
                            1316,
                            1731
                          ],
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 4
                            },
                            "end": {
                              "line": 45,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "Notification",
                              "range": [
                                1736,
                                1748
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 4
                                },
                                "end": {
                                  "line": 46,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                1749,
                                1758
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 17
                                },
                                "end": {
                                  "line": 46,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              1736,
                              1758
                            ],
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 4
                              },
                              "end": {
                                "line": 46,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "do",
                            "range": [
                              1759,
                              1761
                            ],
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 27
                              },
                              "end": {
                                "line": 46,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            1736,
                            1761
                          ],
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 4
                            },
                            "end": {
                              "line": 46,
                              "column": 29
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "next",
                              "range": [
                                1774,
                                1778
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 42
                                },
                                "end": {
                                  "line": 46,
                                  "column": 46
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "error",
                              "range": [
                                1780,
                                1785
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 48
                                },
                                "end": {
                                  "line": 46,
                                  "column": 53
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "complete",
                              "range": [
                                1787,
                                1795
                              ],
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 55
                                },
                                "end": {
                                  "line": 46,
                                  "column": 63
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "kind",
                                      "range": [
                                        1811,
                                        1815
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          1818,
                                          1822
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 23
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "kind",
                                        "range": [
                                          1823,
                                          1827
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 47,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 47,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "range": [
                                        1818,
                                        1827
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "range": [
                                      1811,
                                      1827
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 28
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  1807,
                                  1828
                                ],
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 29
                                  }
                                }
                              },
                              {
                                "type": "SwitchStatement",
                                "discriminant": {
                                  "type": "Identifier",
                                  "name": "kind",
                                  "range": [
                                    1845,
                                    1849
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 48,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 48,
                                      "column": 20
                                    }
                                  }
                                },
                                "cases": [
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "N",
                                      "raw": "'N'",
                                      "range": [
                                        1870,
                                        1873
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 49,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 49,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "Identifier",
                                            "name": "next",
                                            "range": [
                                              1898,
                                              1902
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 27
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "Identifier",
                                              "name": "next",
                                              "range": [
                                                1906,
                                                1910
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 35
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "range": [
                                                    1911,
                                                    1915
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 40
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "value",
                                                  "range": [
                                                    1916,
                                                    1921
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 46
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1911,
                                                  1921
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 46
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              1906,
                                              1922
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 47
                                              }
                                            }
                                          },
                                          "range": [
                                            1898,
                                            1922
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 50,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 50,
                                              "column": 47
                                            }
                                          }
                                        },
                                        "range": [
                                          1891,
                                          1923
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 48
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1865,
                                      1923
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 49,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 50,
                                        "column": 48
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "E",
                                      "raw": "'E'",
                                      "range": [
                                        1941,
                                        1944
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "Identifier",
                                            "name": "error",
                                            "range": [
                                              1969,
                                              1974
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 28
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "Identifier",
                                              "name": "error",
                                              "range": [
                                                1978,
                                                1983
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 52,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 52,
                                                  "column": 37
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "range": [
                                                    1984,
                                                    1988
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 42
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "error",
                                                  "range": [
                                                    1989,
                                                    1994
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 52,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 52,
                                                      "column": 48
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1984,
                                                  1994
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 52,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 52,
                                                    "column": 48
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              1978,
                                              1995
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 52,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 52,
                                                "column": 49
                                              }
                                            }
                                          },
                                          "range": [
                                            1969,
                                            1995
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 52,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 52,
                                              "column": 49
                                            }
                                          }
                                        },
                                        "range": [
                                          1962,
                                          1996
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 52,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 52,
                                            "column": 50
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1936,
                                      1996
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 52,
                                        "column": 50
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "C",
                                      "raw": "'C'",
                                      "range": [
                                        2014,
                                        2017
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "LogicalExpression",
                                          "operator": "&&",
                                          "left": {
                                            "type": "Identifier",
                                            "name": "complete",
                                            "range": [
                                              2042,
                                              2050
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 31
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "Identifier",
                                              "name": "complete",
                                              "range": [
                                                2054,
                                                2062
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 54,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 54,
                                                  "column": 43
                                                }
                                              }
                                            },
                                            "arguments": [],
                                            "range": [
                                              2054,
                                              2064
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 54,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 54,
                                                "column": 45
                                              }
                                            }
                                          },
                                          "range": [
                                            2042,
                                            2064
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 54,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 54,
                                              "column": 45
                                            }
                                          }
                                        },
                                        "range": [
                                          2035,
                                          2065
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 54,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 54,
                                            "column": 46
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      2009,
                                      2065
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 46
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  1837,
                                  2075
                                ],
                                "loc": {
                                  "start": {
                                    "line": 48,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 9
                                  }
                                }
                              }
                            ],
                            "range": [
                              1797,
                              2081
                            ],
                            "loc": {
                              "start": {
                                "line": 46,
                                "column": 65
                              },
                              "end": {
                                "line": 56,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            1764,
                            2081
                          ],
                          "loc": {
                            "start": {
                              "line": 46,
                              "column": 32
                            },
                            "end": {
                              "line": 56,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          1736,
                          2081
                        ],
                        "loc": {
                          "start": {
                            "line": 46,
                            "column": 4
                          },
                          "end": {
                            "line": 56,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        1736,
                        2082
                      ],
                      "loc": {
                        "start": {
                          "line": 46,
                          "column": 4
                        },
                        "end": {
                          "line": 56,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Given some {@link Observer} callbacks, deliver the value represented by the\n     * current Notification to the correctly corresponding callback.\n     * @param {function(value: T): void} next An Observer `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
                          "range": [
                            1316,
                            1731
                          ],
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 4
                            },
                            "end": {
                              "line": 45,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Takes an Observer or its individual callback functions, and calls `observe`\n     * or `do` methods accordingly.\n     * @param {Observer|function(value: T): void} nextOrObserver An Observer or\n     * the `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
                          "range": [
                            2087,
                            2502
                          ],
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 4
                            },
                            "end": {
                              "line": 65,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "Notification",
                              "range": [
                                2507,
                                2519
                              ],
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 4
                                },
                                "end": {
                                  "line": 66,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                2520,
                                2529
                              ],
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 17
                                },
                                "end": {
                                  "line": 66,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              2507,
                              2529
                            ],
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 4
                              },
                              "end": {
                                "line": 66,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "accept",
                            "range": [
                              2530,
                              2536
                            ],
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 27
                              },
                              "end": {
                                "line": 66,
                                "column": 33
                              }
                            }
                          },
                          "range": [
                            2507,
                            2536
                          ],
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 4
                            },
                            "end": {
                              "line": 66,
                              "column": 33
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "nextOrObserver",
                              "range": [
                                2549,
                                2563
                              ],
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 46
                                },
                                "end": {
                                  "line": 66,
                                  "column": 60
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "error",
                              "range": [
                                2565,
                                2570
                              ],
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 62
                                },
                                "end": {
                                  "line": 66,
                                  "column": 67
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "complete",
                              "range": [
                                2572,
                                2580
                              ],
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 69
                                },
                                "end": {
                                  "line": 66,
                                  "column": 77
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "LogicalExpression",
                                  "operator": "&&",
                                  "left": {
                                    "type": "Identifier",
                                    "name": "nextOrObserver",
                                    "range": [
                                      2596,
                                      2610
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "BinaryExpression",
                                    "operator": "===",
                                    "left": {
                                      "type": "UnaryExpression",
                                      "operator": "typeof",
                                      "argument": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "nextOrObserver",
                                          "range": [
                                            2621,
                                            2635
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 67,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 67,
                                              "column": 51
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "next",
                                          "range": [
                                            2636,
                                            2640
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 67,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 67,
                                              "column": 56
                                            }
                                          }
                                        },
                                        "range": [
                                          2621,
                                          2640
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 67,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 67,
                                            "column": 56
                                          }
                                        }
                                      },
                                      "prefix": true,
                                      "range": [
                                        2614,
                                        2640
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 56
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": "function",
                                      "raw": "'function'",
                                      "range": [
                                        2645,
                                        2655
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 71
                                        }
                                      }
                                    },
                                    "range": [
                                      2614,
                                      2655
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 71
                                      }
                                    }
                                  },
                                  "range": [
                                    2596,
                                    2655
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 71
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "ThisExpression",
                                            "range": [
                                              2678,
                                              2682
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 23
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "observe",
                                            "range": [
                                              2683,
                                              2690
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 31
                                              }
                                            }
                                          },
                                          "range": [
                                            2678,
                                            2690
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 68,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 68,
                                              "column": 31
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "nextOrObserver",
                                            "range": [
                                              2691,
                                              2705
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 68,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 68,
                                                "column": 46
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          2678,
                                          2706
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 68,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 68,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "range": [
                                        2671,
                                        2707
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 68,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 68,
                                          "column": 48
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    2657,
                                    2717
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 69,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "ThisExpression",
                                            "range": [
                                              2752,
                                              2756
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 23
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "do",
                                            "range": [
                                              2757,
                                              2759
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 26
                                              }
                                            }
                                          },
                                          "range": [
                                            2752,
                                            2759
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 71,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 71,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "nextOrObserver",
                                            "range": [
                                              2760,
                                              2774
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 41
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "error",
                                            "range": [
                                              2776,
                                              2781
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 48
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "complete",
                                            "range": [
                                              2783,
                                              2791
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 71,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 71,
                                                "column": 58
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          2752,
                                          2792
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 71,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 71,
                                            "column": 59
                                          }
                                        }
                                      },
                                      "range": [
                                        2745,
                                        2793
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 60
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    2731,
                                    2803
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 72,
                                      "column": 9
                                    }
                                  }
                                },
                                "range": [
                                  2592,
                                  2803
                                ],
                                "loc": {
                                  "start": {
                                    "line": 67,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 9
                                  }
                                }
                              }
                            ],
                            "range": [
                              2582,
                              2809
                            ],
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 79
                              },
                              "end": {
                                "line": 73,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            2539,
                            2809
                          ],
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 36
                            },
                            "end": {
                              "line": 73,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          2507,
                          2809
                        ],
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 4
                          },
                          "end": {
                            "line": 73,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        2507,
                        2810
                      ],
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 4
                        },
                        "end": {
                          "line": 73,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Takes an Observer or its individual callback functions, and calls `observe`\n     * or `do` methods accordingly.\n     * @param {Observer|function(value: T): void} nextOrObserver An Observer or\n     * the `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
                          "range": [
                            2087,
                            2502
                          ],
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 4
                            },
                            "end": {
                              "line": 65,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Returns a simple Observable that just delivers the notification represented\n     * by this Notification instance.\n     * @return {any}\n     ",
                          "range": [
                            2815,
                            2968
                          ],
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 4
                            },
                            "end": {
                              "line": 78,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "Notification",
                              "range": [
                                2973,
                                2985
                              ],
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 4
                                },
                                "end": {
                                  "line": 79,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                2986,
                                2995
                              ],
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 17
                                },
                                "end": {
                                  "line": 79,
                                  "column": 26
                                }
                              }
                            },
                            "range": [
                              2973,
                              2995
                            ],
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 4
                              },
                              "end": {
                                "line": 79,
                                "column": 26
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "toObservable",
                            "range": [
                              2996,
                              3008
                            ],
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 27
                              },
                              "end": {
                                "line": 79,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            2973,
                            3008
                          ],
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 4
                            },
                            "end": {
                              "line": 79,
                              "column": 39
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "kind",
                                      "range": [
                                        3037,
                                        3041
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          3044,
                                          3048
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 23
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "kind",
                                        "range": [
                                          3049,
                                          3053
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "range": [
                                        3044,
                                        3053
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "range": [
                                      3037,
                                      3053
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 80,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 80,
                                        "column": 28
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  3033,
                                  3054
                                ],
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 29
                                  }
                                }
                              },
                              {
                                "type": "SwitchStatement",
                                "discriminant": {
                                  "type": "Identifier",
                                  "name": "kind",
                                  "range": [
                                    3071,
                                    3075
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 81,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 20
                                    }
                                  }
                                },
                                "cases": [
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "N",
                                      "raw": "'N'",
                                      "range": [
                                        3096,
                                        3099
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 82,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 82,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "Observable",
                                              "range": [
                                                3124,
                                                3134
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 83,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 83,
                                                  "column": 33
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "of",
                                              "range": [
                                                3135,
                                                3137
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 83,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 83,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "range": [
                                              3124,
                                              3137
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 83,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 83,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  3138,
                                                  3142
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 83,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 83,
                                                    "column": 41
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "value",
                                                "range": [
                                                  3143,
                                                  3148
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 83,
                                                    "column": 42
                                                  },
                                                  "end": {
                                                    "line": 83,
                                                    "column": 47
                                                  }
                                                }
                                              },
                                              "range": [
                                                3138,
                                                3148
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 83,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 83,
                                                  "column": 47
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            3124,
                                            3149
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 83,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 83,
                                              "column": 48
                                            }
                                          }
                                        },
                                        "range": [
                                          3117,
                                          3150
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 83,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 83,
                                            "column": 49
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      3091,
                                      3150
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 82,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 49
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "E",
                                      "raw": "'E'",
                                      "range": [
                                        3168,
                                        3171
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 84,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 84,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "Observable",
                                              "range": [
                                                3196,
                                                3206
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 33
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "throw",
                                              "range": [
                                                3207,
                                                3212
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 39
                                                }
                                              }
                                            },
                                            "range": [
                                              3196,
                                              3212
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 39
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  3213,
                                                  3217
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 85,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 85,
                                                    "column": 44
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "error",
                                                "range": [
                                                  3218,
                                                  3223
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 85,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 85,
                                                    "column": 50
                                                  }
                                                }
                                              },
                                              "range": [
                                                3213,
                                                3223
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 50
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            3196,
                                            3224
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 85,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 85,
                                              "column": 51
                                            }
                                          }
                                        },
                                        "range": [
                                          3189,
                                          3225
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 85,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 85,
                                            "column": 52
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      3163,
                                      3225
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 84,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 85,
                                        "column": 52
                                      }
                                    }
                                  },
                                  {
                                    "type": "SwitchCase",
                                    "test": {
                                      "type": "Literal",
                                      "value": "C",
                                      "raw": "'C'",
                                      "range": [
                                        3243,
                                        3246
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "consequent": [
                                      {
                                        "type": "ReturnStatement",
                                        "argument": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "Observable",
                                              "range": [
                                                3271,
                                                3281
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 33
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "empty",
                                              "range": [
                                                3282,
                                                3287
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 39
                                                }
                                              }
                                            },
                                            "range": [
                                              3271,
                                              3287
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 39
                                              }
                                            }
                                          },
                                          "arguments": [],
                                          "range": [
                                            3271,
                                            3289
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 41
                                            }
                                          }
                                        },
                                        "range": [
                                          3264,
                                          3290
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 42
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      3238,
                                      3290
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 42
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  3063,
                                  3300
                                ],
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 9
                                  }
                                }
                              },
                              {
                                "type": "ThrowStatement",
                                "argument": {
                                  "type": "NewExpression",
                                  "callee": {
                                    "type": "Identifier",
                                    "name": "Error",
                                    "range": [
                                      3319,
                                      3324
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 23
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "value": "unexpected notification kind value",
                                      "raw": "'unexpected notification kind value'",
                                      "range": [
                                        3325,
                                        3361
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 60
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    3315,
                                    3362
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 89,
                                      "column": 61
                                    }
                                  }
                                },
                                "range": [
                                  3309,
                                  3363
                                ],
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 89,
                                    "column": 62
                                  }
                                }
                              }
                            ],
                            "range": [
                              3023,
                              3369
                            ],
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 54
                              },
                              "end": {
                                "line": 90,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            3011,
                            3369
                          ],
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 42
                            },
                            "end": {
                              "line": 90,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          2973,
                          3369
                        ],
                        "loc": {
                          "start": {
                            "line": 79,
                            "column": 4
                          },
                          "end": {
                            "line": 90,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        2973,
                        3370
                      ],
                      "loc": {
                        "start": {
                          "line": 79,
                          "column": 4
                        },
                        "end": {
                          "line": 90,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * Returns a simple Observable that just delivers the notification represented\n     * by this Notification instance.\n     * @return {any}\n     ",
                          "range": [
                            2815,
                            2968
                          ],
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 4
                            },
                            "end": {
                              "line": 78,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `next` from a\n     * given value.\n     * @param {T} value The `next` value.\n     * @return {Notification<T>} The \"next\" Notification representing the\n     * argument.\n     ",
                          "range": [
                            3375,
                            3617
                          ],
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 4
                            },
                            "end": {
                              "line": 97,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              3622,
                              3634
                            ],
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 4
                              },
                              "end": {
                                "line": 98,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "createNext",
                            "range": [
                              3635,
                              3645
                            ],
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 17
                              },
                              "end": {
                                "line": 98,
                                "column": 27
                              }
                            }
                          },
                          "range": [
                            3622,
                            3645
                          ],
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 4
                            },
                            "end": {
                              "line": 98,
                              "column": 27
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "value",
                              "range": [
                                3658,
                                3663
                              ],
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 40
                                },
                                "end": {
                                  "line": 98,
                                  "column": 45
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "BinaryExpression",
                                  "operator": "!==",
                                  "left": {
                                    "type": "UnaryExpression",
                                    "operator": "typeof",
                                    "argument": {
                                      "type": "Identifier",
                                      "name": "value",
                                      "range": [
                                        3686,
                                        3691
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "prefix": true,
                                    "range": [
                                      3679,
                                      3691
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 24
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": "undefined",
                                    "raw": "'undefined'",
                                    "range": [
                                      3696,
                                      3707
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 40
                                      }
                                    }
                                  },
                                  "range": [
                                    3679,
                                    3707
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 40
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "NewExpression",
                                        "callee": {
                                          "type": "Identifier",
                                          "name": "Notification",
                                          "range": [
                                            3734,
                                            3746
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 100,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 100,
                                              "column": 35
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "value": "N",
                                            "raw": "'N'",
                                            "range": [
                                              3747,
                                              3750
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 100,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 100,
                                                "column": 39
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              3752,
                                              3757
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 100,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 100,
                                                "column": 46
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          3730,
                                          3758
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 100,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 100,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "range": [
                                        3723,
                                        3759
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 100,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 100,
                                          "column": 48
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    3709,
                                    3769
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  3675,
                                  3769
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 9
                                  }
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      3785,
                                      3789
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 102,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 102,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "undefinedValueNotification",
                                    "range": [
                                      3790,
                                      3816
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 102,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 102,
                                        "column": 46
                                      }
                                    }
                                  },
                                  "range": [
                                    3785,
                                    3816
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 102,
                                      "column": 46
                                    }
                                  }
                                },
                                "range": [
                                  3778,
                                  3817
                                ],
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 47
                                  }
                                }
                              }
                            ],
                            "range": [
                              3665,
                              3823
                            ],
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 47
                              },
                              "end": {
                                "line": 103,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            3648,
                            3823
                          ],
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 30
                            },
                            "end": {
                              "line": 103,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          3622,
                          3823
                        ],
                        "loc": {
                          "start": {
                            "line": 98,
                            "column": 4
                          },
                          "end": {
                            "line": 103,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        3622,
                        3824
                      ],
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 4
                        },
                        "end": {
                          "line": 103,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `next` from a\n     * given value.\n     * @param {T} value The `next` value.\n     * @return {Notification<T>} The \"next\" Notification representing the\n     * argument.\n     ",
                          "range": [
                            3375,
                            3617
                          ],
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 4
                            },
                            "end": {
                              "line": 97,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `error` from a\n     * given error.\n     * @param {any} [err] The `error` error.\n     * @return {Notification<T>} The \"error\" Notification representing the\n     * argument.\n     ",
                          "range": [
                            3829,
                            4076
                          ],
                          "loc": {
                            "start": {
                              "line": 104,
                              "column": 4
                            },
                            "end": {
                              "line": 110,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4081,
                              4093
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 4
                              },
                              "end": {
                                "line": 111,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "createError",
                            "range": [
                              4094,
                              4105
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 17
                              },
                              "end": {
                                "line": 111,
                                "column": 28
                              }
                            }
                          },
                          "range": [
                            4081,
                            4105
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 4
                            },
                            "end": {
                              "line": 111,
                              "column": 28
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "err",
                              "range": [
                                4118,
                                4121
                              ],
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 41
                                },
                                "end": {
                                  "line": 111,
                                  "column": 44
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "NewExpression",
                                  "callee": {
                                    "type": "Identifier",
                                    "name": "Notification",
                                    "range": [
                                      4144,
                                      4156
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 112,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 112,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "value": "E",
                                      "raw": "'E'",
                                      "range": [
                                        4157,
                                        4160
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 112,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 112,
                                          "column": 35
                                        }
                                      }
                                    },
                                    {
                                      "type": "Identifier",
                                      "name": "undefined",
                                      "range": [
                                        4162,
                                        4171
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 112,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 112,
                                          "column": 46
                                        }
                                      }
                                    },
                                    {
                                      "type": "Identifier",
                                      "name": "err",
                                      "range": [
                                        4173,
                                        4176
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 112,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 112,
                                          "column": 51
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    4140,
                                    4177
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 112,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 112,
                                      "column": 52
                                    }
                                  }
                                },
                                "range": [
                                  4133,
                                  4178
                                ],
                                "loc": {
                                  "start": {
                                    "line": 112,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 112,
                                    "column": 53
                                  }
                                }
                              }
                            ],
                            "range": [
                              4123,
                              4184
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 46
                              },
                              "end": {
                                "line": 113,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            4108,
                            4184
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 31
                            },
                            "end": {
                              "line": 113,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          4081,
                          4184
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 4
                          },
                          "end": {
                            "line": 113,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        4081,
                        4185
                      ],
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 4
                        },
                        "end": {
                          "line": 113,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `error` from a\n     * given error.\n     * @param {any} [err] The `error` error.\n     * @return {Notification<T>} The \"error\" Notification representing the\n     * argument.\n     ",
                          "range": [
                            3829,
                            4076
                          ],
                          "loc": {
                            "start": {
                              "line": 104,
                              "column": 4
                            },
                            "end": {
                              "line": 110,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `complete`.\n     * @return {Notification<any>} The valueless \"complete\" Notification.\n     ",
                          "range": [
                            4190,
                            4351
                          ],
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 4
                            },
                            "end": {
                              "line": 117,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4356,
                              4368
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 4
                              },
                              "end": {
                                "line": 118,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "createComplete",
                            "range": [
                              4369,
                              4383
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 17
                              },
                              "end": {
                                "line": 118,
                                "column": 31
                              }
                            }
                          },
                          "range": [
                            4356,
                            4383
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 4
                            },
                            "end": {
                              "line": 118,
                              "column": 31
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      4415,
                                      4419
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "completeNotification",
                                    "range": [
                                      4420,
                                      4440
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 40
                                      }
                                    }
                                  },
                                  "range": [
                                    4415,
                                    4440
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 40
                                    }
                                  }
                                },
                                "range": [
                                  4408,
                                  4441
                                ],
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 41
                                  }
                                }
                              }
                            ],
                            "range": [
                              4398,
                              4447
                            ],
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 46
                              },
                              "end": {
                                "line": 120,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            4386,
                            4447
                          ],
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 34
                            },
                            "end": {
                              "line": 120,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          4356,
                          4447
                        ],
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 4
                          },
                          "end": {
                            "line": 120,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        4356,
                        4448
                      ],
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 4
                        },
                        "end": {
                          "line": 120,
                          "column": 6
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Block",
                          "value": "*\n     * A shortcut to create a Notification instance of the type `complete`.\n     * @return {Notification<any>} The valueless \"complete\" Notification.\n     ",
                          "range": [
                            4190,
                            4351
                          ],
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 4
                            },
                            "end": {
                              "line": 117,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4453,
                              4465
                            ],
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 4
                              },
                              "end": {
                                "line": 121,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "completeNotification",
                            "range": [
                              4466,
                              4486
                            ],
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 17
                              },
                              "end": {
                                "line": 121,
                                "column": 37
                              }
                            }
                          },
                          "range": [
                            4453,
                            4486
                          ],
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 4
                            },
                            "end": {
                              "line": 121,
                              "column": 37
                            }
                          }
                        },
                        "right": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4493,
                              4505
                            ],
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 44
                              },
                              "end": {
                                "line": 121,
                                "column": 56
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "value": "C",
                              "raw": "'C'",
                              "range": [
                                4506,
                                4509
                              ],
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 57
                                },
                                "end": {
                                  "line": 121,
                                  "column": 60
                                }
                              }
                            }
                          ],
                          "range": [
                            4489,
                            4510
                          ],
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 40
                            },
                            "end": {
                              "line": 121,
                              "column": 61
                            }
                          }
                        },
                        "range": [
                          4453,
                          4510
                        ],
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 4
                          },
                          "end": {
                            "line": 121,
                            "column": 61
                          }
                        }
                      },
                      "range": [
                        4453,
                        4511
                      ],
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 4
                        },
                        "end": {
                          "line": 121,
                          "column": 62
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4516,
                              4528
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 4
                              },
                              "end": {
                                "line": 122,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "undefinedValueNotification",
                            "range": [
                              4529,
                              4555
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 17
                              },
                              "end": {
                                "line": 122,
                                "column": 43
                              }
                            }
                          },
                          "range": [
                            4516,
                            4555
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 4
                            },
                            "end": {
                              "line": 122,
                              "column": 43
                            }
                          }
                        },
                        "right": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Notification",
                            "range": [
                              4562,
                              4574
                            ],
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 50
                              },
                              "end": {
                                "line": 122,
                                "column": 62
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "value": "N",
                              "raw": "'N'",
                              "range": [
                                4575,
                                4578
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 63
                                },
                                "end": {
                                  "line": 122,
                                  "column": 66
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "undefined",
                              "range": [
                                4580,
                                4589
                              ],
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 68
                                },
                                "end": {
                                  "line": 122,
                                  "column": 77
                                }
                              }
                            }
                          ],
                          "range": [
                            4558,
                            4590
                          ],
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 46
                            },
                            "end": {
                              "line": 122,
                              "column": 78
                            }
                          }
                        },
                        "range": [
                          4516,
                          4590
                        ],
                        "loc": {
                          "start": {
                            "line": 122,
                            "column": 4
                          },
                          "end": {
                            "line": 122,
                            "column": 78
                          }
                        }
                      },
                      "range": [
                        4516,
                        4591
                      ],
                      "loc": {
                        "start": {
                          "line": 122,
                          "column": 4
                        },
                        "end": {
                          "line": 122,
                          "column": 79
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "Notification",
                        "range": [
                          4603,
                          4615
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 11
                          },
                          "end": {
                            "line": 123,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        4596,
                        4616
                      ],
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 4
                        },
                        "end": {
                          "line": 123,
                          "column": 24
                        }
                      }
                    }
                  ],
                  "range": [
                    619,
                    4618
                  ],
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 39
                    },
                    "end": {
                      "line": 124,
                      "column": 1
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  607,
                  4618
                ],
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 27
                  },
                  "end": {
                    "line": 124,
                    "column": 1
                  }
                }
              },
              "arguments": [],
              "range": [
                607,
                4620
              ],
              "loc": {
                "start": {
                  "line": 16,
                  "column": 27
                },
                "end": {
                  "line": 124,
                  "column": 3
                }
              }
            },
            "range": [
              591,
              4621
            ],
            "loc": {
              "start": {
                "line": 16,
                "column": 11
              },
              "end": {
                "line": 124,
                "column": 4
              }
            }
          }
        ],
        "kind": "var",
        "range": [
          587,
          4622
        ],
        "loc": {
          "start": {
            "line": 16,
            "column": 7
          },
          "end": {
            "line": 124,
            "column": 5
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * Represents a push-based event or value that an {@link Observable} can emit.\n * This class is particularly useful for operators that manage notifications,\n * like {@link materialize}, {@link dematerialize}, {@link observeOn}, and\n * others. Besides wrapping the actual delivered value, it also annotates it\n * with metadata of, for instance, what type of push message it is (`next`,\n * `error`, or `complete`).\n *\n * @see {@link materialize}\n * @see {@link dematerialize}\n * @see {@link observeOn}\n *\n * @class Notification<T>\n ",
            "range": [
              43,
              579
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 0
              },
              "end": {
                "line": 15,
                "column": 3
              }
            }
          }
        ],
        "trailingComments": [
          {
            "type": "Line",
            "value": "# sourceMappingURL=Notification.js.map",
            "range": [
              4623,
              4663
            ],
            "loc": {
              "start": {
                "line": 125,
                "column": 0
              },
              "end": {
                "line": 125,
                "column": 40
              }
            }
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "range": [
        580,
        4622
      ],
      "loc": {
        "start": {
          "line": 16,
          "column": 0
        },
        "end": {
          "line": 124,
          "column": 5
        }
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * Represents a push-based event or value that an {@link Observable} can emit.\n * This class is particularly useful for operators that manage notifications,\n * like {@link materialize}, {@link dematerialize}, {@link observeOn}, and\n * others. Besides wrapping the actual delivered value, it also annotates it\n * with metadata of, for instance, what type of push message it is (`next`,\n * `error`, or `complete`).\n *\n * @see {@link materialize}\n * @see {@link dematerialize}\n * @see {@link observeOn}\n *\n * @class Notification<T>\n ",
          "range": [
            43,
            579
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 0
            },
            "end": {
              "line": 15,
              "column": 3
            }
          }
        }
      ],
      "trailingComments": [
        {
          "type": "Line",
          "value": "# sourceMappingURL=Notification.js.map",
          "range": [
            4623,
            4663
          ],
          "loc": {
            "start": {
              "line": 125,
              "column": 0
            },
            "end": {
              "line": 125,
              "column": 40
            }
          }
        }
      ]
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    4622
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 124,
      "column": 5
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * Represents a push-based event or value that an {@link Observable} can emit.\n * This class is particularly useful for operators that manage notifications,\n * like {@link materialize}, {@link dematerialize}, {@link observeOn}, and\n * others. Besides wrapping the actual delivered value, it also annotates it\n * with metadata of, for instance, what type of push message it is (`next`,\n * `error`, or `complete`).\n *\n * @see {@link materialize}\n * @see {@link dematerialize}\n * @see {@link observeOn}\n *\n * @class Notification<T>\n ",
      "range": [
        43,
        579
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 15,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * Delivers to the given `observer` the value wrapped by this Notification.\n     * @param {Observer} observer\n     * @return\n     ",
      "range": [
        799,
        939
      ],
      "loc": {
        "start": {
          "line": 23,
          "column": 4
        },
        "end": {
          "line": 27,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * Given some {@link Observer} callbacks, deliver the value represented by the\n     * current Notification to the correctly corresponding callback.\n     * @param {function(value: T): void} next An Observer `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
      "range": [
        1316,
        1731
      ],
      "loc": {
        "start": {
          "line": 38,
          "column": 4
        },
        "end": {
          "line": 45,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * Takes an Observer or its individual callback functions, and calls `observe`\n     * or `do` methods accordingly.\n     * @param {Observer|function(value: T): void} nextOrObserver An Observer or\n     * the `next` callback.\n     * @param {function(err: any): void} [error] An Observer `error` callback.\n     * @param {function(): void} [complete] An Observer `complete` callback.\n     * @return {any}\n     ",
      "range": [
        2087,
        2502
      ],
      "loc": {
        "start": {
          "line": 57,
          "column": 4
        },
        "end": {
          "line": 65,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * Returns a simple Observable that just delivers the notification represented\n     * by this Notification instance.\n     * @return {any}\n     ",
      "range": [
        2815,
        2968
      ],
      "loc": {
        "start": {
          "line": 74,
          "column": 4
        },
        "end": {
          "line": 78,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * A shortcut to create a Notification instance of the type `next` from a\n     * given value.\n     * @param {T} value The `next` value.\n     * @return {Notification<T>} The \"next\" Notification representing the\n     * argument.\n     ",
      "range": [
        3375,
        3617
      ],
      "loc": {
        "start": {
          "line": 91,
          "column": 4
        },
        "end": {
          "line": 97,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * A shortcut to create a Notification instance of the type `error` from a\n     * given error.\n     * @param {any} [err] The `error` error.\n     * @return {Notification<T>} The \"error\" Notification representing the\n     * argument.\n     ",
      "range": [
        3829,
        4076
      ],
      "loc": {
        "start": {
          "line": 104,
          "column": 4
        },
        "end": {
          "line": 110,
          "column": 7
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n     * A shortcut to create a Notification instance of the type `complete`.\n     * @return {Notification<any>} The valueless \"complete\" Notification.\n     ",
      "range": [
        4190,
        4351
      ],
      "loc": {
        "start": {
          "line": 114,
          "column": 4
        },
        "end": {
          "line": 117,
          "column": 7
        }
      }
    },
    {
      "type": "Line",
      "value": "# sourceMappingURL=Notification.js.map",
      "range": [
        4623,
        4663
      ],
      "loc": {
        "start": {
          "line": 125,
          "column": 0
        },
        "end": {
          "line": 125,
          "column": 40
        }
      }
    }
  ]
}