{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Subject",
            "range": [
              9,
              16
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 16
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "Subject",
            "range": [
              9,
              16
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 16
              }
            }
          },
          "range": [
            9,
            16
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 9
            },
            "end": {
              "line": 1,
              "column": 16
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../Subject",
        "raw": "'../Subject'",
        "range": [
          24,
          36
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 24
          },
          "end": {
            "line": 1,
            "column": 36
          }
        }
      },
      "range": [
        0,
        37
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 37
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "async",
            "range": [
              47,
              52
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 14
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "async",
            "range": [
              47,
              52
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 14
              }
            }
          },
          "range": [
            47,
            52
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 9
            },
            "end": {
              "line": 2,
              "column": 14
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../scheduler/async",
        "raw": "'../scheduler/async'",
        "range": [
          60,
          80
        ],
        "loc": {
          "start": {
            "line": 2,
            "column": 22
          },
          "end": {
            "line": 2,
            "column": 42
          }
        }
      },
      "range": [
        38,
        81
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 43
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Subscriber",
            "range": [
              91,
              101
            ],
            "loc": {
              "start": {
                "line": 3,
                "column": 9
              },
              "end": {
                "line": 3,
                "column": 19
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "Subscriber",
            "range": [
              91,
              101
            ],
            "loc": {
              "start": {
                "line": 3,
                "column": 9
              },
              "end": {
                "line": 3,
                "column": 19
              }
            }
          },
          "range": [
            91,
            101
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 9
            },
            "end": {
              "line": 3,
              "column": 19
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../Subscriber",
        "raw": "'../Subscriber'",
        "range": [
          109,
          124
        ],
        "loc": {
          "start": {
            "line": 3,
            "column": 27
          },
          "end": {
            "line": 3,
            "column": 42
          }
        }
      },
      "range": [
        82,
        125
      ],
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 43
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * Branch out the source Observable values as a nested Observable periodically\n * in time.\n *\n * <span class=\"informal\">It's like {@link bufferTime}, but emits a nested\n * Observable instead of an array.</span>\n *\n * <img src=\"./img/windowTime.png\" width=\"100%\">\n *\n * Returns an Observable that emits windows of items it collects from the source\n * Observable. The output Observable starts a new window periodically, as\n * determined by the `windowCreationInterval` argument. It emits each window\n * after a fixed timespan, specified by the `windowTimeSpan` argument. When the\n * source Observable completes or encounters an error, the output Observable\n * emits the current window and propagates the notification from the source\n * Observable. If `windowCreationInterval` is not provided, the output\n * Observable starts a new window when the previous window of duration\n * `windowTimeSpan` completes.\n *\n * @example <caption>In every window of 1 second each, emit at most 2 click events</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @example <caption>Every 5 seconds start a window 1 second long, and emit at most 2 click events per window</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000, 5000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @see {@link window}\n * @see {@link windowCount}\n * @see {@link windowToggle}\n * @see {@link windowWhen}\n * @see {@link bufferTime}\n *\n * @param {number} windowTimeSpan The amount of time to fill each window.\n * @param {number} [windowCreationInterval] The interval at which to start new\n * windows.\n * @param {Scheduler} [scheduler=async] The scheduler on which to schedule the\n * intervals that determine window boundaries.\n * @return {Observable<Observable<T>>} An observable of windows, which in turn\n * are Observables.\n * @method windowTime\n * @owner Observable\n ",
          "range": [
            126,
            2375
          ],
          "loc": {
            "start": {
              "line": 4,
              "column": 0
            },
            "end": {
              "line": 52,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "FunctionDeclaration",
        "id": {
          "type": "Identifier",
          "name": "windowTime",
          "range": [
            2392,
            2402
          ],
          "loc": {
            "start": {
              "line": 53,
              "column": 16
            },
            "end": {
              "line": 53,
              "column": 26
            }
          }
        },
        "params": [
          {
            "type": "Identifier",
            "name": "windowTimeSpan",
            "range": [
              2403,
              2417
            ],
            "loc": {
              "start": {
                "line": 53,
                "column": 27
              },
              "end": {
                "line": 53,
                "column": 41
              }
            }
          },
          {
            "type": "Identifier",
            "name": "windowCreationInterval",
            "range": [
              2419,
              2441
            ],
            "loc": {
              "start": {
                "line": 53,
                "column": 43
              },
              "end": {
                "line": 53,
                "column": 65
              }
            }
          },
          {
            "type": "Identifier",
            "name": "scheduler",
            "range": [
              2443,
              2452
            ],
            "loc": {
              "start": {
                "line": 53,
                "column": 67
              },
              "end": {
                "line": 53,
                "column": 76
              }
            }
          }
        ],
        "body": {
          "type": "BlockStatement",
          "body": [
            {
              "type": "IfStatement",
              "test": {
                "type": "BinaryExpression",
                "operator": "===",
                "left": {
                  "type": "Identifier",
                  "name": "windowCreationInterval",
                  "range": [
                    2464,
                    2486
                  ],
                  "loc": {
                    "start": {
                      "line": 54,
                      "column": 8
                    },
                    "end": {
                      "line": 54,
                      "column": 30
                    }
                  }
                },
                "right": {
                  "type": "UnaryExpression",
                  "operator": "void",
                  "argument": {
                    "type": "Literal",
                    "value": 0,
                    "raw": "0",
                    "range": [
                      2496,
                      2497
                    ],
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 40
                      },
                      "end": {
                        "line": 54,
                        "column": 41
                      }
                    }
                  },
                  "prefix": true,
                  "range": [
                    2491,
                    2497
                  ],
                  "loc": {
                    "start": {
                      "line": 54,
                      "column": 35
                    },
                    "end": {
                      "line": 54,
                      "column": 41
                    }
                  }
                },
                "range": [
                  2464,
                  2497
                ],
                "loc": {
                  "start": {
                    "line": 54,
                    "column": 8
                  },
                  "end": {
                    "line": 54,
                    "column": 41
                  }
                }
              },
              "consequent": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "name": "windowCreationInterval",
                        "range": [
                          2501,
                          2523
                        ],
                        "loc": {
                          "start": {
                            "line": 54,
                            "column": 45
                          },
                          "end": {
                            "line": 54,
                            "column": 67
                          }
                        }
                      },
                      "right": {
                        "type": "Literal",
                        "value": null,
                        "raw": "null",
                        "range": [
                          2526,
                          2530
                        ],
                        "loc": {
                          "start": {
                            "line": 54,
                            "column": 70
                          },
                          "end": {
                            "line": 54,
                            "column": 74
                          }
                        }
                      },
                      "range": [
                        2501,
                        2530
                      ],
                      "loc": {
                        "start": {
                          "line": 54,
                          "column": 45
                        },
                        "end": {
                          "line": 54,
                          "column": 74
                        }
                      }
                    },
                    "range": [
                      2501,
                      2531
                    ],
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 45
                      },
                      "end": {
                        "line": 54,
                        "column": 75
                      }
                    }
                  }
                ],
                "range": [
                  2499,
                  2533
                ],
                "loc": {
                  "start": {
                    "line": 54,
                    "column": 43
                  },
                  "end": {
                    "line": 54,
                    "column": 77
                  }
                }
              },
              "alternate": null,
              "range": [
                2460,
                2533
              ],
              "loc": {
                "start": {
                  "line": 54,
                  "column": 4
                },
                "end": {
                  "line": 54,
                  "column": 77
                }
              }
            },
            {
              "type": "IfStatement",
              "test": {
                "type": "BinaryExpression",
                "operator": "===",
                "left": {
                  "type": "Identifier",
                  "name": "scheduler",
                  "range": [
                    2542,
                    2551
                  ],
                  "loc": {
                    "start": {
                      "line": 55,
                      "column": 8
                    },
                    "end": {
                      "line": 55,
                      "column": 17
                    }
                  }
                },
                "right": {
                  "type": "UnaryExpression",
                  "operator": "void",
                  "argument": {
                    "type": "Literal",
                    "value": 0,
                    "raw": "0",
                    "range": [
                      2561,
                      2562
                    ],
                    "loc": {
                      "start": {
                        "line": 55,
                        "column": 27
                      },
                      "end": {
                        "line": 55,
                        "column": 28
                      }
                    }
                  },
                  "prefix": true,
                  "range": [
                    2556,
                    2562
                  ],
                  "loc": {
                    "start": {
                      "line": 55,
                      "column": 22
                    },
                    "end": {
                      "line": 55,
                      "column": 28
                    }
                  }
                },
                "range": [
                  2542,
                  2562
                ],
                "loc": {
                  "start": {
                    "line": 55,
                    "column": 8
                  },
                  "end": {
                    "line": 55,
                    "column": 28
                  }
                }
              },
              "consequent": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "name": "scheduler",
                        "range": [
                          2566,
                          2575
                        ],
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 32
                          },
                          "end": {
                            "line": 55,
                            "column": 41
                          }
                        }
                      },
                      "right": {
                        "type": "Identifier",
                        "name": "async",
                        "range": [
                          2578,
                          2583
                        ],
                        "loc": {
                          "start": {
                            "line": 55,
                            "column": 44
                          },
                          "end": {
                            "line": 55,
                            "column": 49
                          }
                        }
                      },
                      "range": [
                        2566,
                        2583
                      ],
                      "loc": {
                        "start": {
                          "line": 55,
                          "column": 32
                        },
                        "end": {
                          "line": 55,
                          "column": 49
                        }
                      }
                    },
                    "range": [
                      2566,
                      2584
                    ],
                    "loc": {
                      "start": {
                        "line": 55,
                        "column": 32
                      },
                      "end": {
                        "line": 55,
                        "column": 50
                      }
                    }
                  }
                ],
                "range": [
                  2564,
                  2586
                ],
                "loc": {
                  "start": {
                    "line": 55,
                    "column": 30
                  },
                  "end": {
                    "line": 55,
                    "column": 52
                  }
                }
              },
              "alternate": null,
              "range": [
                2538,
                2586
              ],
              "loc": {
                "start": {
                  "line": 55,
                  "column": 4
                },
                "end": {
                  "line": 55,
                  "column": 52
                }
              }
            },
            {
              "type": "ReturnStatement",
              "argument": {
                "type": "CallExpression",
                "callee": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "ThisExpression",
                    "range": [
                      2598,
                      2602
                    ],
                    "loc": {
                      "start": {
                        "line": 56,
                        "column": 11
                      },
                      "end": {
                        "line": 56,
                        "column": 15
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "lift",
                    "range": [
                      2603,
                      2607
                    ],
                    "loc": {
                      "start": {
                        "line": 56,
                        "column": 16
                      },
                      "end": {
                        "line": 56,
                        "column": 20
                      }
                    }
                  },
                  "range": [
                    2598,
                    2607
                  ],
                  "loc": {
                    "start": {
                      "line": 56,
                      "column": 11
                    },
                    "end": {
                      "line": 56,
                      "column": 20
                    }
                  }
                },
                "arguments": [
                  {
                    "type": "NewExpression",
                    "callee": {
                      "type": "Identifier",
                      "name": "WindowTimeOperator",
                      "range": [
                        2612,
                        2630
                      ],
                      "loc": {
                        "start": {
                          "line": 56,
                          "column": 25
                        },
                        "end": {
                          "line": 56,
                          "column": 43
                        }
                      }
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "name": "windowTimeSpan",
                        "range": [
                          2631,
                          2645
                        ],
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 44
                          },
                          "end": {
                            "line": 56,
                            "column": 58
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "windowCreationInterval",
                        "range": [
                          2647,
                          2669
                        ],
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 60
                          },
                          "end": {
                            "line": 56,
                            "column": 82
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "scheduler",
                        "range": [
                          2671,
                          2680
                        ],
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 84
                          },
                          "end": {
                            "line": 56,
                            "column": 93
                          }
                        }
                      }
                    ],
                    "range": [
                      2608,
                      2681
                    ],
                    "loc": {
                      "start": {
                        "line": 56,
                        "column": 21
                      },
                      "end": {
                        "line": 56,
                        "column": 94
                      }
                    }
                  }
                ],
                "range": [
                  2598,
                  2682
                ],
                "loc": {
                  "start": {
                    "line": 56,
                    "column": 11
                  },
                  "end": {
                    "line": 56,
                    "column": 95
                  }
                }
              },
              "range": [
                2591,
                2683
              ],
              "loc": {
                "start": {
                  "line": 56,
                  "column": 4
                },
                "end": {
                  "line": 56,
                  "column": 96
                }
              }
            }
          ],
          "range": [
            2454,
            2685
          ],
          "loc": {
            "start": {
              "line": 53,
              "column": 78
            },
            "end": {
              "line": 57,
              "column": 1
            }
          }
        },
        "generator": false,
        "expression": false,
        "range": [
          2383,
          2685
        ],
        "loc": {
          "start": {
            "line": 53,
            "column": 7
          },
          "end": {
            "line": 57,
            "column": 1
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * Branch out the source Observable values as a nested Observable periodically\n * in time.\n *\n * <span class=\"informal\">It's like {@link bufferTime}, but emits a nested\n * Observable instead of an array.</span>\n *\n * <img src=\"./img/windowTime.png\" width=\"100%\">\n *\n * Returns an Observable that emits windows of items it collects from the source\n * Observable. The output Observable starts a new window periodically, as\n * determined by the `windowCreationInterval` argument. It emits each window\n * after a fixed timespan, specified by the `windowTimeSpan` argument. When the\n * source Observable completes or encounters an error, the output Observable\n * emits the current window and propagates the notification from the source\n * Observable. If `windowCreationInterval` is not provided, the output\n * Observable starts a new window when the previous window of duration\n * `windowTimeSpan` completes.\n *\n * @example <caption>In every window of 1 second each, emit at most 2 click events</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @example <caption>Every 5 seconds start a window 1 second long, and emit at most 2 click events per window</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000, 5000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @see {@link window}\n * @see {@link windowCount}\n * @see {@link windowToggle}\n * @see {@link windowWhen}\n * @see {@link bufferTime}\n *\n * @param {number} windowTimeSpan The amount of time to fill each window.\n * @param {number} [windowCreationInterval] The interval at which to start new\n * windows.\n * @param {Scheduler} [scheduler=async] The scheduler on which to schedule the\n * intervals that determine window boundaries.\n * @return {Observable<Observable<T>>} An observable of windows, which in turn\n * are Observables.\n * @method windowTime\n * @owner Observable\n ",
            "range": [
              126,
              2375
            ],
            "loc": {
              "start": {
                "line": 4,
                "column": 0
              },
              "end": {
                "line": 52,
                "column": 3
              }
            }
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "range": [
        2376,
        2685
      ],
      "loc": {
        "start": {
          "line": 53,
          "column": 0
        },
        "end": {
          "line": 57,
          "column": 1
        }
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * Branch out the source Observable values as a nested Observable periodically\n * in time.\n *\n * <span class=\"informal\">It's like {@link bufferTime}, but emits a nested\n * Observable instead of an array.</span>\n *\n * <img src=\"./img/windowTime.png\" width=\"100%\">\n *\n * Returns an Observable that emits windows of items it collects from the source\n * Observable. The output Observable starts a new window periodically, as\n * determined by the `windowCreationInterval` argument. It emits each window\n * after a fixed timespan, specified by the `windowTimeSpan` argument. When the\n * source Observable completes or encounters an error, the output Observable\n * emits the current window and propagates the notification from the source\n * Observable. If `windowCreationInterval` is not provided, the output\n * Observable starts a new window when the previous window of duration\n * `windowTimeSpan` completes.\n *\n * @example <caption>In every window of 1 second each, emit at most 2 click events</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @example <caption>Every 5 seconds start a window 1 second long, and emit at most 2 click events per window</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000, 5000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @see {@link window}\n * @see {@link windowCount}\n * @see {@link windowToggle}\n * @see {@link windowWhen}\n * @see {@link bufferTime}\n *\n * @param {number} windowTimeSpan The amount of time to fill each window.\n * @param {number} [windowCreationInterval] The interval at which to start new\n * windows.\n * @param {Scheduler} [scheduler=async] The scheduler on which to schedule the\n * intervals that determine window boundaries.\n * @return {Observable<Observable<T>>} An observable of windows, which in turn\n * are Observables.\n * @method windowTime\n * @owner Observable\n ",
          "range": [
            126,
            2375
          ],
          "loc": {
            "start": {
              "line": 4,
              "column": 0
            },
            "end": {
              "line": 52,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "VariableDeclaration",
      "declarations": [
        {
          "type": "VariableDeclarator",
          "id": {
            "type": "Identifier",
            "name": "WindowTimeOperator",
            "range": [
              2690,
              2708
            ],
            "loc": {
              "start": {
                "line": 58,
                "column": 4
              },
              "end": {
                "line": 58,
                "column": 22
              }
            }
          },
          "init": {
            "type": "CallExpression",
            "callee": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "FunctionDeclaration",
                    "id": {
                      "type": "Identifier",
                      "name": "WindowTimeOperator",
                      "range": [
                        2739,
                        2757
                      ],
                      "loc": {
                        "start": {
                          "line": 59,
                          "column": 13
                        },
                        "end": {
                          "line": 59,
                          "column": 31
                        }
                      }
                    },
                    "params": [
                      {
                        "type": "Identifier",
                        "name": "windowTimeSpan",
                        "range": [
                          2758,
                          2772
                        ],
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 32
                          },
                          "end": {
                            "line": 59,
                            "column": 46
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "windowCreationInterval",
                        "range": [
                          2774,
                          2796
                        ],
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 48
                          },
                          "end": {
                            "line": 59,
                            "column": 70
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "scheduler",
                        "range": [
                          2798,
                          2807
                        ],
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 72
                          },
                          "end": {
                            "line": 59,
                            "column": 81
                          }
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  2819,
                                  2823
                                ],
                                "loc": {
                                  "start": {
                                    "line": 60,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 60,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "windowTimeSpan",
                                "range": [
                                  2824,
                                  2838
                                ],
                                "loc": {
                                  "start": {
                                    "line": 60,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 60,
                                    "column": 27
                                  }
                                }
                              },
                              "range": [
                                2819,
                                2838
                              ],
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 8
                                },
                                "end": {
                                  "line": 60,
                                  "column": 27
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "windowTimeSpan",
                              "range": [
                                2841,
                                2855
                              ],
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 30
                                },
                                "end": {
                                  "line": 60,
                                  "column": 44
                                }
                              }
                            },
                            "range": [
                              2819,
                              2855
                            ],
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 8
                              },
                              "end": {
                                "line": 60,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            2819,
                            2856
                          ],
                          "loc": {
                            "start": {
                              "line": 60,
                              "column": 8
                            },
                            "end": {
                              "line": 60,
                              "column": 45
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  2865,
                                  2869
                                ],
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "windowCreationInterval",
                                "range": [
                                  2870,
                                  2892
                                ],
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 35
                                  }
                                }
                              },
                              "range": [
                                2865,
                                2892
                              ],
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 8
                                },
                                "end": {
                                  "line": 61,
                                  "column": 35
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "windowCreationInterval",
                              "range": [
                                2895,
                                2917
                              ],
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 38
                                },
                                "end": {
                                  "line": 61,
                                  "column": 60
                                }
                              }
                            },
                            "range": [
                              2865,
                              2917
                            ],
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 8
                              },
                              "end": {
                                "line": 61,
                                "column": 60
                              }
                            }
                          },
                          "range": [
                            2865,
                            2918
                          ],
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 8
                            },
                            "end": {
                              "line": 61,
                              "column": 61
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  2927,
                                  2931
                                ],
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "scheduler",
                                "range": [
                                  2932,
                                  2941
                                ],
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 22
                                  }
                                }
                              },
                              "range": [
                                2927,
                                2941
                              ],
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 8
                                },
                                "end": {
                                  "line": 62,
                                  "column": 22
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "scheduler",
                              "range": [
                                2944,
                                2953
                              ],
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 25
                                },
                                "end": {
                                  "line": 62,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              2927,
                              2953
                            ],
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 8
                              },
                              "end": {
                                "line": 62,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            2927,
                            2954
                          ],
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 8
                            },
                            "end": {
                              "line": 62,
                              "column": 35
                            }
                          }
                        }
                      ],
                      "range": [
                        2809,
                        2960
                      ],
                      "loc": {
                        "start": {
                          "line": 59,
                          "column": 83
                        },
                        "end": {
                          "line": 63,
                          "column": 5
                        }
                      }
                    },
                    "generator": false,
                    "expression": false,
                    "range": [
                      2730,
                      2960
                    ],
                    "loc": {
                      "start": {
                        "line": 59,
                        "column": 4
                      },
                      "end": {
                        "line": 63,
                        "column": 5
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeOperator",
                            "range": [
                              2965,
                              2983
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 4
                              },
                              "end": {
                                "line": 64,
                                "column": 22
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              2984,
                              2993
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 23
                              },
                              "end": {
                                "line": 64,
                                "column": 32
                              }
                            }
                          },
                          "range": [
                            2965,
                            2993
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 4
                            },
                            "end": {
                              "line": 64,
                              "column": 32
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "call",
                          "range": [
                            2994,
                            2998
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 33
                            },
                            "end": {
                              "line": 64,
                              "column": 37
                            }
                          }
                        },
                        "range": [
                          2965,
                          2998
                        ],
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 4
                          },
                          "end": {
                            "line": 64,
                            "column": 37
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [
                          {
                            "type": "Identifier",
                            "name": "subscriber",
                            "range": [
                              3011,
                              3021
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 50
                              },
                              "end": {
                                "line": 64,
                                "column": 60
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "name": "source",
                            "range": [
                              3023,
                              3029
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 62
                              },
                              "end": {
                                "line": 64,
                                "column": 68
                              }
                            }
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "argument": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "source",
                                    "range": [
                                      3048,
                                      3054
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 21
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "_subscribe",
                                    "range": [
                                      3055,
                                      3065
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 32
                                      }
                                    }
                                  },
                                  "range": [
                                    3048,
                                    3065
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 32
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "callee": {
                                      "type": "Identifier",
                                      "name": "WindowTimeSubscriber",
                                      "range": [
                                        3070,
                                        3090
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 57
                                        }
                                      }
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "name": "subscriber",
                                        "range": [
                                          3091,
                                          3101
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 68
                                          }
                                        }
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            3103,
                                            3107
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 74
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "windowTimeSpan",
                                          "range": [
                                            3108,
                                            3122
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 89
                                            }
                                          }
                                        },
                                        "range": [
                                          3103,
                                          3122
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 89
                                          }
                                        }
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            3124,
                                            3128
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 91
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 95
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "windowCreationInterval",
                                          "range": [
                                            3129,
                                            3151
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 96
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 118
                                            }
                                          }
                                        },
                                        "range": [
                                          3124,
                                          3151
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 91
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 118
                                          }
                                        }
                                      },
                                      {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            3153,
                                            3157
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 120
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 124
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "scheduler",
                                          "range": [
                                            3158,
                                            3167
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 65,
                                              "column": 125
                                            },
                                            "end": {
                                              "line": 65,
                                              "column": 134
                                            }
                                          }
                                        },
                                        "range": [
                                          3153,
                                          3167
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 120
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 134
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      3066,
                                      3168
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 135
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  3048,
                                  3169
                                ],
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 136
                                  }
                                }
                              },
                              "range": [
                                3041,
                                3170
                              ],
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 8
                                },
                                "end": {
                                  "line": 65,
                                  "column": 137
                                }
                              }
                            }
                          ],
                          "range": [
                            3031,
                            3176
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 70
                            },
                            "end": {
                              "line": 66,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          3001,
                          3176
                        ],
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 40
                          },
                          "end": {
                            "line": 66,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        2965,
                        3176
                      ],
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 4
                        },
                        "end": {
                          "line": 66,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      2965,
                      3177
                    ],
                    "loc": {
                      "start": {
                        "line": 64,
                        "column": 4
                      },
                      "end": {
                        "line": 66,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "WindowTimeOperator",
                      "range": [
                        3189,
                        3207
                      ],
                      "loc": {
                        "start": {
                          "line": 67,
                          "column": 11
                        },
                        "end": {
                          "line": 67,
                          "column": 29
                        }
                      }
                    },
                    "range": [
                      3182,
                      3208
                    ],
                    "loc": {
                      "start": {
                        "line": 67,
                        "column": 4
                      },
                      "end": {
                        "line": 67,
                        "column": 30
                      }
                    }
                  }
                ],
                "range": [
                  2724,
                  3210
                ],
                "loc": {
                  "start": {
                    "line": 58,
                    "column": 38
                  },
                  "end": {
                    "line": 68,
                    "column": 1
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                2712,
                3210
              ],
              "loc": {
                "start": {
                  "line": 58,
                  "column": 26
                },
                "end": {
                  "line": 68,
                  "column": 1
                }
              }
            },
            "arguments": [],
            "range": [
              2712,
              3212
            ],
            "loc": {
              "start": {
                "line": 58,
                "column": 26
              },
              "end": {
                "line": 68,
                "column": 3
              }
            }
          },
          "range": [
            2690,
            3213
          ],
          "loc": {
            "start": {
              "line": 58,
              "column": 4
            },
            "end": {
              "line": 68,
              "column": 4
            }
          }
        }
      ],
      "kind": "var",
      "range": [
        2686,
        3214
      ],
      "loc": {
        "start": {
          "line": 58,
          "column": 0
        },
        "end": {
          "line": 68,
          "column": 5
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
          "range": [
            3215,
            3306
          ],
          "loc": {
            "start": {
              "line": 69,
              "column": 0
            },
            "end": {
              "line": 73,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "VariableDeclaration",
      "declarations": [
        {
          "type": "VariableDeclarator",
          "id": {
            "type": "Identifier",
            "name": "WindowTimeSubscriber",
            "range": [
              3311,
              3331
            ],
            "loc": {
              "start": {
                "line": 74,
                "column": 4
              },
              "end": {
                "line": 74,
                "column": 24
              }
            }
          },
          "init": {
            "type": "CallExpression",
            "callee": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "_super",
                  "range": [
                    3345,
                    3351
                  ],
                  "loc": {
                    "start": {
                      "line": 74,
                      "column": 38
                    },
                    "end": {
                      "line": 74,
                      "column": 44
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "Identifier",
                        "name": "__extends",
                        "range": [
                          3359,
                          3368
                        ],
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 4
                          },
                          "end": {
                            "line": 75,
                            "column": 13
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "WindowTimeSubscriber",
                          "range": [
                            3369,
                            3389
                          ],
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 14
                            },
                            "end": {
                              "line": 75,
                              "column": 34
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "name": "_super",
                          "range": [
                            3391,
                            3397
                          ],
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 36
                            },
                            "end": {
                              "line": 75,
                              "column": 42
                            }
                          }
                        }
                      ],
                      "range": [
                        3359,
                        3398
                      ],
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 4
                        },
                        "end": {
                          "line": 75,
                          "column": 43
                        }
                      }
                    },
                    "range": [
                      3359,
                      3399
                    ],
                    "loc": {
                      "start": {
                        "line": 75,
                        "column": 4
                      },
                      "end": {
                        "line": 75,
                        "column": 44
                      }
                    }
                  },
                  {
                    "type": "FunctionDeclaration",
                    "id": {
                      "type": "Identifier",
                      "name": "WindowTimeSubscriber",
                      "range": [
                        3413,
                        3433
                      ],
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 13
                        },
                        "end": {
                          "line": 76,
                          "column": 33
                        }
                      }
                    },
                    "params": [
                      {
                        "type": "Identifier",
                        "name": "destination",
                        "range": [
                          3434,
                          3445
                        ],
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 34
                          },
                          "end": {
                            "line": 76,
                            "column": 45
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "windowTimeSpan",
                        "range": [
                          3447,
                          3461
                        ],
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 47
                          },
                          "end": {
                            "line": 76,
                            "column": 61
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "windowCreationInterval",
                        "range": [
                          3463,
                          3485
                        ],
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 63
                          },
                          "end": {
                            "line": 76,
                            "column": 85
                          }
                        }
                      },
                      {
                        "type": "Identifier",
                        "name": "scheduler",
                        "range": [
                          3487,
                          3496
                        ],
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 87
                          },
                          "end": {
                            "line": 76,
                            "column": 96
                          }
                        }
                      }
                    ],
                    "body": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "_super",
                                "range": [
                                  3508,
                                  3514
                                ],
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "call",
                                "range": [
                                  3515,
                                  3519
                                ],
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 19
                                  }
                                }
                              },
                              "range": [
                                3508,
                                3519
                              ],
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 8
                                },
                                "end": {
                                  "line": 77,
                                  "column": 19
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "range": [
                                  3520,
                                  3524
                                ],
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 24
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "name": "destination",
                                "range": [
                                  3526,
                                  3537
                                ],
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 37
                                  }
                                }
                              }
                            ],
                            "range": [
                              3508,
                              3538
                            ],
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 38
                              }
                            }
                          },
                          "range": [
                            3508,
                            3539
                          ],
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 39
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3548,
                                  3552
                                ],
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "destination",
                                "range": [
                                  3553,
                                  3564
                                ],
                                "loc": {
                                  "start": {
                                    "line": 78,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                3548,
                                3564
                              ],
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 8
                                },
                                "end": {
                                  "line": 78,
                                  "column": 24
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "destination",
                              "range": [
                                3567,
                                3578
                              ],
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 27
                                },
                                "end": {
                                  "line": 78,
                                  "column": 38
                                }
                              }
                            },
                            "range": [
                              3548,
                              3578
                            ],
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 8
                              },
                              "end": {
                                "line": 78,
                                "column": 38
                              }
                            }
                          },
                          "range": [
                            3548,
                            3579
                          ],
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 39
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3588,
                                  3592
                                ],
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "windowTimeSpan",
                                "range": [
                                  3593,
                                  3607
                                ],
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 27
                                  }
                                }
                              },
                              "range": [
                                3588,
                                3607
                              ],
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 8
                                },
                                "end": {
                                  "line": 79,
                                  "column": 27
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "windowTimeSpan",
                              "range": [
                                3610,
                                3624
                              ],
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 30
                                },
                                "end": {
                                  "line": 79,
                                  "column": 44
                                }
                              }
                            },
                            "range": [
                              3588,
                              3624
                            ],
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 8
                              },
                              "end": {
                                "line": 79,
                                "column": 44
                              }
                            }
                          },
                          "range": [
                            3588,
                            3625
                          ],
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 8
                            },
                            "end": {
                              "line": 79,
                              "column": 45
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3634,
                                  3638
                                ],
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "windowCreationInterval",
                                "range": [
                                  3639,
                                  3661
                                ],
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 35
                                  }
                                }
                              },
                              "range": [
                                3634,
                                3661
                              ],
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 8
                                },
                                "end": {
                                  "line": 80,
                                  "column": 35
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "windowCreationInterval",
                              "range": [
                                3664,
                                3686
                              ],
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 38
                                },
                                "end": {
                                  "line": 80,
                                  "column": 60
                                }
                              }
                            },
                            "range": [
                              3634,
                              3686
                            ],
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 8
                              },
                              "end": {
                                "line": 80,
                                "column": 60
                              }
                            }
                          },
                          "range": [
                            3634,
                            3687
                          ],
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 61
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3696,
                                  3700
                                ],
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "scheduler",
                                "range": [
                                  3701,
                                  3710
                                ],
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 22
                                  }
                                }
                              },
                              "range": [
                                3696,
                                3710
                              ],
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 8
                                },
                                "end": {
                                  "line": 81,
                                  "column": 22
                                }
                              }
                            },
                            "right": {
                              "type": "Identifier",
                              "name": "scheduler",
                              "range": [
                                3713,
                                3722
                              ],
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 25
                                },
                                "end": {
                                  "line": 81,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              3696,
                              3722
                            ],
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 8
                              },
                              "end": {
                                "line": 81,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            3696,
                            3723
                          ],
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 8
                            },
                            "end": {
                              "line": 81,
                              "column": 35
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3732,
                                  3736
                                ],
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "windows",
                                "range": [
                                  3737,
                                  3744
                                ],
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 20
                                  }
                                }
                              },
                              "range": [
                                3732,
                                3744
                              ],
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 8
                                },
                                "end": {
                                  "line": 82,
                                  "column": 20
                                }
                              }
                            },
                            "right": {
                              "type": "ArrayExpression",
                              "elements": [],
                              "range": [
                                3747,
                                3749
                              ],
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 23
                                },
                                "end": {
                                  "line": 82,
                                  "column": 25
                                }
                              }
                            },
                            "range": [
                              3732,
                              3749
                            ],
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 8
                              },
                              "end": {
                                "line": 82,
                                "column": 25
                              }
                            }
                          },
                          "range": [
                            3732,
                            3750
                          ],
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 8
                            },
                            "end": {
                              "line": 82,
                              "column": 26
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "test": {
                            "type": "LogicalExpression",
                            "operator": "&&",
                            "left": {
                              "type": "BinaryExpression",
                              "operator": "!==",
                              "left": {
                                "type": "Identifier",
                                "name": "windowCreationInterval",
                                "range": [
                                  3763,
                                  3785
                                ],
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 34
                                  }
                                }
                              },
                              "right": {
                                "type": "Literal",
                                "value": null,
                                "raw": "null",
                                "range": [
                                  3790,
                                  3794
                                ],
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 43
                                  }
                                }
                              },
                              "range": [
                                3763,
                                3794
                              ],
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 12
                                },
                                "end": {
                                  "line": 83,
                                  "column": 43
                                }
                              }
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "operator": ">=",
                              "left": {
                                "type": "Identifier",
                                "name": "windowCreationInterval",
                                "range": [
                                  3798,
                                  3820
                                ],
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 69
                                  }
                                }
                              },
                              "right": {
                                "type": "Literal",
                                "value": 0,
                                "raw": "0",
                                "range": [
                                  3824,
                                  3825
                                ],
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 74
                                  }
                                }
                              },
                              "range": [
                                3798,
                                3825
                              ],
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 47
                                },
                                "end": {
                                  "line": 83,
                                  "column": 74
                                }
                              }
                            },
                            "range": [
                              3763,
                              3825
                            ],
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 12
                              },
                              "end": {
                                "line": 83,
                                "column": 74
                              }
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "window_1",
                                      "range": [
                                        3845,
                                        3853
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 84,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 84,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            3856,
                                            3860
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 84,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 84,
                                              "column": 31
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "openWindow",
                                          "range": [
                                            3861,
                                            3871
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 84,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 84,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "range": [
                                          3856,
                                          3871
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 84,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 84,
                                            "column": 42
                                          }
                                        }
                                      },
                                      "arguments": [],
                                      "range": [
                                        3856,
                                        3873
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 84,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 84,
                                          "column": 44
                                        }
                                      }
                                    },
                                    "range": [
                                      3845,
                                      3873
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 84,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 84,
                                        "column": 44
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  3841,
                                  3874
                                ],
                                "loc": {
                                  "start": {
                                    "line": 84,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 84,
                                    "column": 45
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "closeState",
                                      "range": [
                                        3891,
                                        3901
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "ObjectExpression",
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "subscriber",
                                            "range": [
                                              3906,
                                              3916
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 41
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "ThisExpression",
                                            "range": [
                                              3918,
                                              3922
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 47
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            3906,
                                            3922
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 85,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 85,
                                              "column": 47
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "window",
                                            "range": [
                                              3924,
                                              3930
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 55
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "window_1",
                                            "range": [
                                              3932,
                                              3940
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 65
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            3924,
                                            3940
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 85,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 85,
                                              "column": 65
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "context",
                                            "range": [
                                              3942,
                                              3949
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 67
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 74
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Literal",
                                            "value": null,
                                            "raw": "null",
                                            "range": [
                                              3951,
                                              3955
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 80
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            3942,
                                            3955
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 85,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 85,
                                              "column": 80
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        3904,
                                        3957
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 85,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 85,
                                          "column": 82
                                        }
                                      }
                                    },
                                    "range": [
                                      3891,
                                      3957
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 85,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 85,
                                        "column": 82
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  3887,
                                  3958
                                ],
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 83
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "creationState",
                                      "range": [
                                        3975,
                                        3988
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 29
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "ObjectExpression",
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "windowTimeSpan",
                                            "range": [
                                              3993,
                                              4007
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "windowTimeSpan",
                                            "range": [
                                              4009,
                                              4023
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 64
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            3993,
                                            4023
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 64
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "windowCreationInterval",
                                            "range": [
                                              4025,
                                              4047
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 88
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "windowCreationInterval",
                                            "range": [
                                              4049,
                                              4071
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 90
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 112
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4025,
                                            4071
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 112
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "subscriber",
                                            "range": [
                                              4073,
                                              4083
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 114
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 124
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "ThisExpression",
                                            "range": [
                                              4085,
                                              4089
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 126
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 130
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4073,
                                            4089
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 114
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 130
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "scheduler",
                                            "range": [
                                              4091,
                                              4100
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 132
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 141
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "scheduler",
                                            "range": [
                                              4102,
                                              4111
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 143
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 152
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4091,
                                            4111
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 132
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 152
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        3991,
                                        4113
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 154
                                        }
                                      }
                                    },
                                    "range": [
                                      3975,
                                      4113
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 154
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  3971,
                                  4114
                                ],
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 155
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        4127,
                                        4131
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "add",
                                      "range": [
                                        4132,
                                        4135
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "range": [
                                      4127,
                                      4135
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "scheduler",
                                          "range": [
                                            4136,
                                            4145
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "schedule",
                                          "range": [
                                            4146,
                                            4154
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 39
                                            }
                                          }
                                        },
                                        "range": [
                                          4136,
                                          4154
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 39
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "dispatchWindowClose",
                                          "range": [
                                            4155,
                                            4174
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 59
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "windowTimeSpan",
                                          "range": [
                                            4176,
                                            4190
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 75
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "closeState",
                                          "range": [
                                            4192,
                                            4202
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 77
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 87
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4136,
                                        4203
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 88
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    4127,
                                    4204
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 89
                                    }
                                  }
                                },
                                "range": [
                                  4127,
                                  4205
                                ],
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 90
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        4218,
                                        4222
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "add",
                                      "range": [
                                        4223,
                                        4226
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "range": [
                                      4218,
                                      4226
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 88,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 88,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "scheduler",
                                          "range": [
                                            4227,
                                            4236
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "schedule",
                                          "range": [
                                            4237,
                                            4245
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 39
                                            }
                                          }
                                        },
                                        "range": [
                                          4227,
                                          4245
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 88,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 39
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "dispatchWindowCreation",
                                          "range": [
                                            4246,
                                            4268
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 62
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "windowCreationInterval",
                                          "range": [
                                            4270,
                                            4292
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 86
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "creationState",
                                          "range": [
                                            4294,
                                            4307
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 88
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 101
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4227,
                                        4308
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 88,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 88,
                                          "column": 102
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    4218,
                                    4309
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 88,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 88,
                                      "column": 103
                                    }
                                  }
                                },
                                "range": [
                                  4218,
                                  4310
                                ],
                                "loc": {
                                  "start": {
                                    "line": 88,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 88,
                                    "column": 104
                                  }
                                }
                              }
                            ],
                            "range": [
                              3827,
                              4320
                            ],
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 76
                              },
                              "end": {
                                "line": 89,
                                "column": 9
                              }
                            }
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "window_2",
                                      "range": [
                                        4352,
                                        4360
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            4363,
                                            4367
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 91,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 91,
                                              "column": 31
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "openWindow",
                                          "range": [
                                            4368,
                                            4378
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 91,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 91,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "range": [
                                          4363,
                                          4378
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 91,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 91,
                                            "column": 42
                                          }
                                        }
                                      },
                                      "arguments": [],
                                      "range": [
                                        4363,
                                        4380
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 91,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 91,
                                          "column": 44
                                        }
                                      }
                                    },
                                    "range": [
                                      4352,
                                      4380
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 91,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 91,
                                        "column": 44
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  4348,
                                  4381
                                ],
                                "loc": {
                                  "start": {
                                    "line": 91,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 91,
                                    "column": 45
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "timeSpanOnlyState",
                                      "range": [
                                        4398,
                                        4415
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "ObjectExpression",
                                      "properties": [
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "subscriber",
                                            "range": [
                                              4420,
                                              4430
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 38
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 48
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "ThisExpression",
                                            "range": [
                                              4432,
                                              4436
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 54
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4420,
                                            4436
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 92,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 92,
                                              "column": 54
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "window",
                                            "range": [
                                              4438,
                                              4444
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 62
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "window_2",
                                            "range": [
                                              4446,
                                              4454
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 72
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4438,
                                            4454
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 92,
                                              "column": 56
                                            },
                                            "end": {
                                              "line": 92,
                                              "column": 72
                                            }
                                          }
                                        },
                                        {
                                          "type": "Property",
                                          "key": {
                                            "type": "Identifier",
                                            "name": "windowTimeSpan",
                                            "range": [
                                              4456,
                                              4470
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 74
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 88
                                              }
                                            }
                                          },
                                          "value": {
                                            "type": "Identifier",
                                            "name": "windowTimeSpan",
                                            "range": [
                                              4472,
                                              4486
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 90
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 104
                                              }
                                            }
                                          },
                                          "kind": "init",
                                          "method": false,
                                          "shorthand": false,
                                          "computed": false,
                                          "range": [
                                            4456,
                                            4486
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 92,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 92,
                                              "column": 104
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4418,
                                        4488
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 92,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 92,
                                          "column": 106
                                        }
                                      }
                                    },
                                    "range": [
                                      4398,
                                      4488
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 92,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 106
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  4394,
                                  4489
                                ],
                                "loc": {
                                  "start": {
                                    "line": 92,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 107
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        4502,
                                        4506
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "add",
                                      "range": [
                                        4507,
                                        4510
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "range": [
                                      4502,
                                      4510
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 93,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 93,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "scheduler",
                                          "range": [
                                            4511,
                                            4520
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "schedule",
                                          "range": [
                                            4521,
                                            4529
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 39
                                            }
                                          }
                                        },
                                        "range": [
                                          4511,
                                          4529
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 93,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 93,
                                            "column": 39
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "dispatchWindowTimeSpanOnly",
                                          "range": [
                                            4530,
                                            4556
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 66
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "windowTimeSpan",
                                          "range": [
                                            4558,
                                            4572
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 82
                                            }
                                          }
                                        },
                                        {
                                          "type": "Identifier",
                                          "name": "timeSpanOnlyState",
                                          "range": [
                                            4574,
                                            4591
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 101
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4511,
                                        4592
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 93,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 93,
                                          "column": 102
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    4502,
                                    4593
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 93,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 93,
                                      "column": 103
                                    }
                                  }
                                },
                                "range": [
                                  4502,
                                  4594
                                ],
                                "loc": {
                                  "start": {
                                    "line": 93,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 93,
                                    "column": 104
                                  }
                                }
                              }
                            ],
                            "range": [
                              4334,
                              4604
                            ],
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 13
                              },
                              "end": {
                                "line": 94,
                                "column": 9
                              }
                            }
                          },
                          "range": [
                            3759,
                            4604
                          ],
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 9
                            }
                          }
                        }
                      ],
                      "range": [
                        3498,
                        4610
                      ],
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 98
                        },
                        "end": {
                          "line": 95,
                          "column": 5
                        }
                      }
                    },
                    "generator": false,
                    "expression": false,
                    "range": [
                      3404,
                      4610
                    ],
                    "loc": {
                      "start": {
                        "line": 76,
                        "column": 4
                      },
                      "end": {
                        "line": 95,
                        "column": 5
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeSubscriber",
                            "range": [
                              4615,
                              4635
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 4
                              },
                              "end": {
                                "line": 96,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              4636,
                              4645
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 25
                              },
                              "end": {
                                "line": 96,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            4615,
                            4645
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 4
                            },
                            "end": {
                              "line": 96,
                              "column": 34
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_next",
                          "range": [
                            4646,
                            4651
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 35
                            },
                            "end": {
                              "line": 96,
                              "column": 40
                            }
                          }
                        },
                        "range": [
                          4615,
                          4651
                        ],
                        "loc": {
                          "start": {
                            "line": 96,
                            "column": 4
                          },
                          "end": {
                            "line": 96,
                            "column": 40
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [
                          {
                            "type": "Identifier",
                            "name": "value",
                            "range": [
                              4664,
                              4669
                            ],
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 53
                              },
                              "end": {
                                "line": 96,
                                "column": 58
                              }
                            }
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      4685,
                                      4692
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        4695,
                                        4699
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 97,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 97,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        4700,
                                        4707
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 97,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 97,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      4695,
                                      4707
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    4685,
                                    4707
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 34
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                4681,
                                4708
                              ],
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 8
                                },
                                "end": {
                                  "line": 97,
                                  "column": 35
                                }
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "len",
                                    "range": [
                                      4721,
                                      4724
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 98,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 98,
                                        "column": 15
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        4727,
                                        4734
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 25
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "length",
                                      "range": [
                                        4735,
                                        4741
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "range": [
                                      4727,
                                      4741
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 98,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 98,
                                        "column": 32
                                      }
                                    }
                                  },
                                  "range": [
                                    4721,
                                    4741
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 98,
                                      "column": 32
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                4717,
                                4742
                              ],
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 8
                                },
                                "end": {
                                  "line": 98,
                                  "column": 33
                                }
                              }
                            },
                            {
                              "type": "ForStatement",
                              "init": {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "i",
                                      "range": [
                                        4760,
                                        4761
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "Literal",
                                      "value": 0,
                                      "raw": "0",
                                      "range": [
                                        4764,
                                        4765
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 22
                                        }
                                      }
                                    },
                                    "range": [
                                      4760,
                                      4765
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 22
                                      }
                                    }
                                  }
                                ],
                                "kind": "var",
                                "range": [
                                  4756,
                                  4765
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 22
                                  }
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "operator": "<",
                                "left": {
                                  "type": "Identifier",
                                  "name": "i",
                                  "range": [
                                    4767,
                                    4768
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 25
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Identifier",
                                  "name": "len",
                                  "range": [
                                    4771,
                                    4774
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 31
                                    }
                                  }
                                },
                                "range": [
                                  4767,
                                  4774
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 31
                                  }
                                }
                              },
                              "update": {
                                "type": "UpdateExpression",
                                "operator": "++",
                                "argument": {
                                  "type": "Identifier",
                                  "name": "i",
                                  "range": [
                                    4776,
                                    4777
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 34
                                    }
                                  }
                                },
                                "prefix": false,
                                "range": [
                                  4776,
                                  4779
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 36
                                  }
                                }
                              },
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "VariableDeclaration",
                                    "declarations": [
                                      {
                                        "type": "VariableDeclarator",
                                        "id": {
                                          "type": "Identifier",
                                          "name": "window_3",
                                          "range": [
                                            4799,
                                            4807
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 100,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 100,
                                              "column": 24
                                            }
                                          }
                                        },
                                        "init": {
                                          "type": "MemberExpression",
                                          "computed": true,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "windows",
                                            "range": [
                                              4810,
                                              4817
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 100,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 100,
                                                "column": 34
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "i",
                                            "range": [
                                              4818,
                                              4819
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 100,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 100,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            4810,
                                            4820
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 100,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 100,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "range": [
                                          4799,
                                          4820
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 100,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 100,
                                            "column": 37
                                          }
                                        }
                                      }
                                    ],
                                    "kind": "var",
                                    "range": [
                                      4795,
                                      4821
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 100,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 100,
                                        "column": 38
                                      }
                                    }
                                  },
                                  {
                                    "type": "IfStatement",
                                    "test": {
                                      "type": "UnaryExpression",
                                      "operator": "!",
                                      "argument": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "window_3",
                                          "range": [
                                            4839,
                                            4847
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 101,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 101,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "closed",
                                          "range": [
                                            4848,
                                            4854
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 101,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 101,
                                              "column": 32
                                            }
                                          }
                                        },
                                        "range": [
                                          4839,
                                          4854
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 101,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 101,
                                            "column": 32
                                          }
                                        }
                                      },
                                      "prefix": true,
                                      "range": [
                                        4838,
                                        4854
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 101,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 101,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "window_3",
                                                "range": [
                                                  4874,
                                                  4882
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 102,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 102,
                                                    "column": 24
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "next",
                                                "range": [
                                                  4883,
                                                  4887
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 102,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 102,
                                                    "column": 29
                                                  }
                                                }
                                              },
                                              "range": [
                                                4874,
                                                4887
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 102,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 102,
                                                  "column": 29
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "name": "value",
                                                "range": [
                                                  4888,
                                                  4893
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 102,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 102,
                                                    "column": 35
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              4874,
                                              4894
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 102,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 102,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            4874,
                                            4895
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 102,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 102,
                                              "column": 37
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4856,
                                        4909
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 101,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 13
                                        }
                                      }
                                    },
                                    "alternate": null,
                                    "range": [
                                      4834,
                                      4909
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 101,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 13
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  4781,
                                  4919
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 104,
                                    "column": 9
                                  }
                                }
                              },
                              "range": [
                                4751,
                                4919
                              ],
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 8
                                },
                                "end": {
                                  "line": 104,
                                  "column": 9
                                }
                              }
                            }
                          ],
                          "range": [
                            4671,
                            4925
                          ],
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 60
                            },
                            "end": {
                              "line": 105,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          4654,
                          4925
                        ],
                        "loc": {
                          "start": {
                            "line": 96,
                            "column": 43
                          },
                          "end": {
                            "line": 105,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        4615,
                        4925
                      ],
                      "loc": {
                        "start": {
                          "line": 96,
                          "column": 4
                        },
                        "end": {
                          "line": 105,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      4615,
                      4926
                    ],
                    "loc": {
                      "start": {
                        "line": 96,
                        "column": 4
                      },
                      "end": {
                        "line": 105,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeSubscriber",
                            "range": [
                              4931,
                              4951
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 4
                              },
                              "end": {
                                "line": 106,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              4952,
                              4961
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 25
                              },
                              "end": {
                                "line": 106,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            4931,
                            4961
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 4
                            },
                            "end": {
                              "line": 106,
                              "column": 34
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_error",
                          "range": [
                            4962,
                            4968
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 35
                            },
                            "end": {
                              "line": 106,
                              "column": 41
                            }
                          }
                        },
                        "range": [
                          4931,
                          4968
                        ],
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 4
                          },
                          "end": {
                            "line": 106,
                            "column": 41
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [
                          {
                            "type": "Identifier",
                            "name": "err",
                            "range": [
                              4981,
                              4984
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 54
                              },
                              "end": {
                                "line": 106,
                                "column": 57
                              }
                            }
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5000,
                                      5007
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 107,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 107,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5010,
                                        5014
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 107,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 107,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        5015,
                                        5022
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 107,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 107,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      5010,
                                      5022
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 107,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 107,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5000,
                                    5022
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 107,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 107,
                                      "column": 34
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                4996,
                                5023
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 8
                                },
                                "end": {
                                  "line": 107,
                                  "column": 35
                                }
                              }
                            },
                            {
                              "type": "WhileStatement",
                              "test": {
                                "type": "BinaryExpression",
                                "operator": ">",
                                "left": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5039,
                                      5046
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 108,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 108,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "length",
                                    "range": [
                                      5047,
                                      5053
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 108,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 108,
                                        "column": 29
                                      }
                                    }
                                  },
                                  "range": [
                                    5039,
                                    5053
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 108,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 108,
                                      "column": 29
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Literal",
                                  "value": 0,
                                  "raw": "0",
                                  "range": [
                                    5056,
                                    5057
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 108,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 108,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  5039,
                                  5057
                                ],
                                "loc": {
                                  "start": {
                                    "line": 108,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 108,
                                    "column": 33
                                  }
                                }
                              },
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "expression": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "windows",
                                              "range": [
                                                5073,
                                                5080
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 109,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 109,
                                                  "column": 19
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "shift",
                                              "range": [
                                                5081,
                                                5086
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 109,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 109,
                                                  "column": 25
                                                }
                                              }
                                            },
                                            "range": [
                                              5073,
                                              5086
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 109,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 109,
                                                "column": 25
                                              }
                                            }
                                          },
                                          "arguments": [],
                                          "range": [
                                            5073,
                                            5088
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 109,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 109,
                                              "column": 27
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "error",
                                          "range": [
                                            5089,
                                            5094
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 109,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 109,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "range": [
                                          5073,
                                          5094
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 109,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 109,
                                            "column": 33
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "err",
                                          "range": [
                                            5095,
                                            5098
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 109,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 109,
                                              "column": 37
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        5073,
                                        5099
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 109,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 109,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "range": [
                                      5073,
                                      5100
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 109,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 109,
                                        "column": 39
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5059,
                                  5110
                                ],
                                "loc": {
                                  "start": {
                                    "line": 108,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 9
                                  }
                                }
                              },
                              "range": [
                                5032,
                                5110
                              ],
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 8
                                },
                                "end": {
                                  "line": 110,
                                  "column": 9
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5119,
                                        5123
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 111,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 111,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "destination",
                                      "range": [
                                        5124,
                                        5135
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 111,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 111,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "range": [
                                      5119,
                                      5135
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 111,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 111,
                                        "column": 24
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "error",
                                    "range": [
                                      5136,
                                      5141
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 111,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 111,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "range": [
                                    5119,
                                    5141
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 111,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 111,
                                      "column": 30
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "err",
                                    "range": [
                                      5142,
                                      5145
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 111,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 111,
                                        "column": 34
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5119,
                                  5146
                                ],
                                "loc": {
                                  "start": {
                                    "line": 111,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 111,
                                    "column": 35
                                  }
                                }
                              },
                              "range": [
                                5119,
                                5147
                              ],
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 8
                                },
                                "end": {
                                  "line": 111,
                                  "column": 36
                                }
                              }
                            }
                          ],
                          "range": [
                            4986,
                            5153
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 59
                            },
                            "end": {
                              "line": 112,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          4971,
                          5153
                        ],
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 44
                          },
                          "end": {
                            "line": 112,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        4931,
                        5153
                      ],
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 4
                        },
                        "end": {
                          "line": 112,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      4931,
                      5154
                    ],
                    "loc": {
                      "start": {
                        "line": 106,
                        "column": 4
                      },
                      "end": {
                        "line": 112,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeSubscriber",
                            "range": [
                              5159,
                              5179
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 4
                              },
                              "end": {
                                "line": 113,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              5180,
                              5189
                            ],
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 25
                              },
                              "end": {
                                "line": 113,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            5159,
                            5189
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 4
                            },
                            "end": {
                              "line": 113,
                              "column": 34
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_complete",
                          "range": [
                            5190,
                            5199
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 35
                            },
                            "end": {
                              "line": 113,
                              "column": 44
                            }
                          }
                        },
                        "range": [
                          5159,
                          5199
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 4
                          },
                          "end": {
                            "line": 113,
                            "column": 44
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5228,
                                      5235
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 114,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 114,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5238,
                                        5242
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 114,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 114,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        5243,
                                        5250
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 114,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 114,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      5238,
                                      5250
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 114,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 114,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5228,
                                    5250
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 114,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 114,
                                      "column": 34
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                5224,
                                5251
                              ],
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 8
                                },
                                "end": {
                                  "line": 114,
                                  "column": 35
                                }
                              }
                            },
                            {
                              "type": "WhileStatement",
                              "test": {
                                "type": "BinaryExpression",
                                "operator": ">",
                                "left": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5267,
                                      5274
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 115,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 115,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "length",
                                    "range": [
                                      5275,
                                      5281
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 115,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 115,
                                        "column": 29
                                      }
                                    }
                                  },
                                  "range": [
                                    5267,
                                    5281
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 115,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 115,
                                      "column": 29
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Literal",
                                  "value": 0,
                                  "raw": "0",
                                  "range": [
                                    5284,
                                    5285
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 115,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 115,
                                      "column": 33
                                    }
                                  }
                                },
                                "range": [
                                  5267,
                                  5285
                                ],
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 33
                                  }
                                }
                              },
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "VariableDeclaration",
                                    "declarations": [
                                      {
                                        "type": "VariableDeclarator",
                                        "id": {
                                          "type": "Identifier",
                                          "name": "window_4",
                                          "range": [
                                            5305,
                                            5313
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 116,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 116,
                                              "column": 24
                                            }
                                          }
                                        },
                                        "init": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "windows",
                                              "range": [
                                                5316,
                                                5323
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 116,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 116,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "shift",
                                              "range": [
                                                5324,
                                                5329
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 116,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 116,
                                                  "column": 40
                                                }
                                              }
                                            },
                                            "range": [
                                              5316,
                                              5329
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 116,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 116,
                                                "column": 40
                                              }
                                            }
                                          },
                                          "arguments": [],
                                          "range": [
                                            5316,
                                            5331
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 116,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 116,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "range": [
                                          5305,
                                          5331
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 116,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 116,
                                            "column": 42
                                          }
                                        }
                                      }
                                    ],
                                    "kind": "var",
                                    "range": [
                                      5301,
                                      5332
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 43
                                      }
                                    }
                                  },
                                  {
                                    "type": "IfStatement",
                                    "test": {
                                      "type": "UnaryExpression",
                                      "operator": "!",
                                      "argument": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "window_4",
                                          "range": [
                                            5350,
                                            5358
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 117,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 117,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "closed",
                                          "range": [
                                            5359,
                                            5365
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 117,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 117,
                                              "column": 32
                                            }
                                          }
                                        },
                                        "range": [
                                          5350,
                                          5365
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 117,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 117,
                                            "column": 32
                                          }
                                        }
                                      },
                                      "prefix": true,
                                      "range": [
                                        5349,
                                        5365
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 117,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 117,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "window_4",
                                                "range": [
                                                  5385,
                                                  5393
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 118,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 118,
                                                    "column": 24
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "complete",
                                                "range": [
                                                  5394,
                                                  5402
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 118,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 118,
                                                    "column": 33
                                                  }
                                                }
                                              },
                                              "range": [
                                                5385,
                                                5402
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 118,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 118,
                                                  "column": 33
                                                }
                                              }
                                            },
                                            "arguments": [],
                                            "range": [
                                              5385,
                                              5404
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 118,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 118,
                                                "column": 35
                                              }
                                            }
                                          },
                                          "range": [
                                            5385,
                                            5405
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 118,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 118,
                                              "column": 36
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        5367,
                                        5419
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 117,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 13
                                        }
                                      }
                                    },
                                    "alternate": null,
                                    "range": [
                                      5345,
                                      5419
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 117,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 13
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5287,
                                  5429
                                ],
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 120,
                                    "column": 9
                                  }
                                }
                              },
                              "range": [
                                5260,
                                5429
                              ],
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 8
                                },
                                "end": {
                                  "line": 120,
                                  "column": 9
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5438,
                                        5442
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "destination",
                                      "range": [
                                        5443,
                                        5454
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "range": [
                                      5438,
                                      5454
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 24
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "complete",
                                    "range": [
                                      5455,
                                      5463
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 33
                                      }
                                    }
                                  },
                                  "range": [
                                    5438,
                                    5463
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 33
                                    }
                                  }
                                },
                                "arguments": [],
                                "range": [
                                  5438,
                                  5465
                                ],
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 35
                                  }
                                }
                              },
                              "range": [
                                5438,
                                5466
                              ],
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 8
                                },
                                "end": {
                                  "line": 121,
                                  "column": 36
                                }
                              }
                            }
                          ],
                          "range": [
                            5214,
                            5472
                          ],
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 59
                            },
                            "end": {
                              "line": 122,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          5202,
                          5472
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 47
                          },
                          "end": {
                            "line": 122,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        5159,
                        5472
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 4
                        },
                        "end": {
                          "line": 122,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      5159,
                      5473
                    ],
                    "loc": {
                      "start": {
                        "line": 113,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeSubscriber",
                            "range": [
                              5478,
                              5498
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 4
                              },
                              "end": {
                                "line": 123,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              5499,
                              5508
                            ],
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 25
                              },
                              "end": {
                                "line": 123,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            5478,
                            5508
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 4
                            },
                            "end": {
                              "line": 123,
                              "column": 34
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "openWindow",
                          "range": [
                            5509,
                            5519
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 35
                            },
                            "end": {
                              "line": 123,
                              "column": 45
                            }
                          }
                        },
                        "range": [
                          5478,
                          5519
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 4
                          },
                          "end": {
                            "line": 123,
                            "column": 45
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "window",
                                    "range": [
                                      5548,
                                      5554
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 124,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 124,
                                        "column": 18
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "NewExpression",
                                    "callee": {
                                      "type": "Identifier",
                                      "name": "Subject",
                                      "range": [
                                        5561,
                                        5568
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 124,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 124,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "arguments": [],
                                    "range": [
                                      5557,
                                      5570
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 124,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 124,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5548,
                                    5570
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 124,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 124,
                                      "column": 34
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                5544,
                                5571
                              ],
                              "loc": {
                                "start": {
                                  "line": 124,
                                  "column": 8
                                },
                                "end": {
                                  "line": 124,
                                  "column": 35
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5580,
                                        5584
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        5585,
                                        5592
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 125,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 125,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "range": [
                                      5580,
                                      5592
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "push",
                                    "range": [
                                      5593,
                                      5597
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "range": [
                                    5580,
                                    5597
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 25
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "window",
                                    "range": [
                                      5598,
                                      5604
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 32
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5580,
                                  5605
                                ],
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 33
                                  }
                                }
                              },
                              "range": [
                                5580,
                                5606
                              ],
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 8
                                },
                                "end": {
                                  "line": 125,
                                  "column": 34
                                }
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "destination",
                                    "range": [
                                      5619,
                                      5630
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 126,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 126,
                                        "column": 23
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5633,
                                        5637
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 126,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 126,
                                          "column": 30
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "destination",
                                      "range": [
                                        5638,
                                        5649
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 126,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 126,
                                          "column": 42
                                        }
                                      }
                                    },
                                    "range": [
                                      5633,
                                      5649
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 126,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 126,
                                        "column": 42
                                      }
                                    }
                                  },
                                  "range": [
                                    5619,
                                    5649
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 126,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 126,
                                      "column": 42
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                5615,
                                5650
                              ],
                              "loc": {
                                "start": {
                                  "line": 126,
                                  "column": 8
                                },
                                "end": {
                                  "line": 126,
                                  "column": 43
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "destination",
                                    "range": [
                                      5659,
                                      5670
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "next",
                                    "range": [
                                      5671,
                                      5675
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 24
                                      }
                                    }
                                  },
                                  "range": [
                                    5659,
                                    5675
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 24
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "window",
                                    "range": [
                                      5676,
                                      5682
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 31
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5659,
                                  5683
                                ],
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 32
                                  }
                                }
                              },
                              "range": [
                                5659,
                                5684
                              ],
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 8
                                },
                                "end": {
                                  "line": 127,
                                  "column": 33
                                }
                              }
                            },
                            {
                              "type": "ReturnStatement",
                              "argument": {
                                "type": "Identifier",
                                "name": "window",
                                "range": [
                                  5700,
                                  5706
                                ],
                                "loc": {
                                  "start": {
                                    "line": 128,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 128,
                                    "column": 21
                                  }
                                }
                              },
                              "range": [
                                5693,
                                5707
                              ],
                              "loc": {
                                "start": {
                                  "line": 128,
                                  "column": 8
                                },
                                "end": {
                                  "line": 128,
                                  "column": 22
                                }
                              }
                            }
                          ],
                          "range": [
                            5534,
                            5713
                          ],
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 60
                            },
                            "end": {
                              "line": 129,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          5522,
                          5713
                        ],
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 48
                          },
                          "end": {
                            "line": 129,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        5478,
                        5713
                      ],
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 4
                        },
                        "end": {
                          "line": 129,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      5478,
                      5714
                    ],
                    "loc": {
                      "start": {
                        "line": 123,
                        "column": 4
                      },
                      "end": {
                        "line": 129,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "WindowTimeSubscriber",
                            "range": [
                              5719,
                              5739
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 4
                              },
                              "end": {
                                "line": 130,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "prototype",
                            "range": [
                              5740,
                              5749
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 25
                              },
                              "end": {
                                "line": 130,
                                "column": 34
                              }
                            }
                          },
                          "range": [
                            5719,
                            5749
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 4
                            },
                            "end": {
                              "line": 130,
                              "column": 34
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "closeWindow",
                          "range": [
                            5750,
                            5761
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 35
                            },
                            "end": {
                              "line": 130,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          5719,
                          5761
                        ],
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 4
                          },
                          "end": {
                            "line": 130,
                            "column": 46
                          }
                        }
                      },
                      "right": {
                        "type": "FunctionExpression",
                        "id": null,
                        "params": [
                          {
                            "type": "Identifier",
                            "name": "window",
                            "range": [
                              5774,
                              5780
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 59
                              },
                              "end": {
                                "line": 130,
                                "column": 65
                              }
                            }
                          }
                        ],
                        "body": {
                          "type": "BlockStatement",
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "window",
                                    "range": [
                                      5792,
                                      5798
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 14
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "complete",
                                    "range": [
                                      5799,
                                      5807
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 23
                                      }
                                    }
                                  },
                                  "range": [
                                    5792,
                                    5807
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 131,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 131,
                                      "column": 23
                                    }
                                  }
                                },
                                "arguments": [],
                                "range": [
                                  5792,
                                  5809
                                ],
                                "loc": {
                                  "start": {
                                    "line": 131,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 131,
                                    "column": 25
                                  }
                                }
                              },
                              "range": [
                                5792,
                                5810
                              ],
                              "loc": {
                                "start": {
                                  "line": 131,
                                  "column": 8
                                },
                                "end": {
                                  "line": 131,
                                  "column": 26
                                }
                              }
                            },
                            {
                              "type": "VariableDeclaration",
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "id": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5823,
                                      5830
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 132,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "init": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        5833,
                                        5837
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 132,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 132,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "windows",
                                      "range": [
                                        5838,
                                        5845
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 132,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 132,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      5833,
                                      5845
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 132,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 132,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5823,
                                    5845
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 132,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 132,
                                      "column": 34
                                    }
                                  }
                                }
                              ],
                              "kind": "var",
                              "range": [
                                5819,
                                5846
                              ],
                              "loc": {
                                "start": {
                                  "line": 132,
                                  "column": 8
                                },
                                "end": {
                                  "line": 132,
                                  "column": 35
                                }
                              }
                            },
                            {
                              "type": "ExpressionStatement",
                              "expression": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "windows",
                                    "range": [
                                      5855,
                                      5862
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 15
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "splice",
                                    "range": [
                                      5863,
                                      5869
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "range": [
                                    5855,
                                    5869
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 133,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 133,
                                      "column": 22
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "windows",
                                        "range": [
                                          5870,
                                          5877
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 133,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 133,
                                            "column": 30
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "indexOf",
                                        "range": [
                                          5878,
                                          5885
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 133,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 133,
                                            "column": 38
                                          }
                                        }
                                      },
                                      "range": [
                                        5870,
                                        5885
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 133,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 133,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "name": "window",
                                        "range": [
                                          5886,
                                          5892
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 133,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 133,
                                            "column": 45
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      5870,
                                      5893
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 46
                                      }
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "value": 1,
                                    "raw": "1",
                                    "range": [
                                      5895,
                                      5896
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 133,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 133,
                                        "column": 49
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5855,
                                  5897
                                ],
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 50
                                  }
                                }
                              },
                              "range": [
                                5855,
                                5898
                              ],
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 8
                                },
                                "end": {
                                  "line": 133,
                                  "column": 51
                                }
                              }
                            }
                          ],
                          "range": [
                            5782,
                            5904
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 67
                            },
                            "end": {
                              "line": 134,
                              "column": 5
                            }
                          }
                        },
                        "generator": false,
                        "expression": false,
                        "range": [
                          5764,
                          5904
                        ],
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 49
                          },
                          "end": {
                            "line": 134,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        5719,
                        5904
                      ],
                      "loc": {
                        "start": {
                          "line": 130,
                          "column": 4
                        },
                        "end": {
                          "line": 134,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      5719,
                      5905
                    ],
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 4
                      },
                      "end": {
                        "line": 134,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "WindowTimeSubscriber",
                      "range": [
                        5917,
                        5937
                      ],
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 11
                        },
                        "end": {
                          "line": 135,
                          "column": 31
                        }
                      }
                    },
                    "range": [
                      5910,
                      5938
                    ],
                    "loc": {
                      "start": {
                        "line": 135,
                        "column": 4
                      },
                      "end": {
                        "line": 135,
                        "column": 32
                      }
                    }
                  }
                ],
                "range": [
                  3353,
                  5940
                ],
                "loc": {
                  "start": {
                    "line": 74,
                    "column": 46
                  },
                  "end": {
                    "line": 136,
                    "column": 1
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                3335,
                5940
              ],
              "loc": {
                "start": {
                  "line": 74,
                  "column": 28
                },
                "end": {
                  "line": 136,
                  "column": 1
                }
              }
            },
            "arguments": [
              {
                "type": "Identifier",
                "name": "Subscriber",
                "range": [
                  5941,
                  5951
                ],
                "loc": {
                  "start": {
                    "line": 136,
                    "column": 2
                  },
                  "end": {
                    "line": 136,
                    "column": 12
                  }
                }
              }
            ],
            "range": [
              3335,
              5952
            ],
            "loc": {
              "start": {
                "line": 74,
                "column": 28
              },
              "end": {
                "line": 136,
                "column": 13
              }
            }
          },
          "range": [
            3311,
            5953
          ],
          "loc": {
            "start": {
              "line": 74,
              "column": 4
            },
            "end": {
              "line": 136,
              "column": 14
            }
          }
        }
      ],
      "kind": "var",
      "range": [
        3307,
        5954
      ],
      "loc": {
        "start": {
          "line": 74,
          "column": 0
        },
        "end": {
          "line": 136,
          "column": 15
        }
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
          "range": [
            3215,
            3306
          ],
          "loc": {
            "start": {
              "line": 69,
              "column": 0
            },
            "end": {
              "line": 73,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "id": {
        "type": "Identifier",
        "name": "dispatchWindowTimeSpanOnly",
        "range": [
          5964,
          5990
        ],
        "loc": {
          "start": {
            "line": 137,
            "column": 9
          },
          "end": {
            "line": 137,
            "column": 35
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "state",
          "range": [
            5991,
            5996
          ],
          "loc": {
            "start": {
              "line": 137,
              "column": 36
            },
            "end": {
              "line": 137,
              "column": 41
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    6008,
                    6018
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 8
                    },
                    "end": {
                      "line": 138,
                      "column": 18
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6021,
                      6026
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 21
                      },
                      "end": {
                        "line": 138,
                        "column": 26
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      6027,
                      6037
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 27
                      },
                      "end": {
                        "line": 138,
                        "column": 37
                      }
                    }
                  },
                  "range": [
                    6021,
                    6037
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 21
                    },
                    "end": {
                      "line": 138,
                      "column": 37
                    }
                  }
                },
                "range": [
                  6008,
                  6037
                ],
                "loc": {
                  "start": {
                    "line": 138,
                    "column": 8
                  },
                  "end": {
                    "line": 138,
                    "column": 37
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "windowTimeSpan",
                  "range": [
                    6039,
                    6053
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 39
                    },
                    "end": {
                      "line": 138,
                      "column": 53
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6056,
                      6061
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 56
                      },
                      "end": {
                        "line": 138,
                        "column": 61
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "windowTimeSpan",
                    "range": [
                      6062,
                      6076
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 62
                      },
                      "end": {
                        "line": 138,
                        "column": 76
                      }
                    }
                  },
                  "range": [
                    6056,
                    6076
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 56
                    },
                    "end": {
                      "line": 138,
                      "column": 76
                    }
                  }
                },
                "range": [
                  6039,
                  6076
                ],
                "loc": {
                  "start": {
                    "line": 138,
                    "column": 39
                  },
                  "end": {
                    "line": 138,
                    "column": 76
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "window",
                  "range": [
                    6078,
                    6084
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 78
                    },
                    "end": {
                      "line": 138,
                      "column": 84
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6087,
                      6092
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 87
                      },
                      "end": {
                        "line": 138,
                        "column": 92
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "window",
                    "range": [
                      6093,
                      6099
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 93
                      },
                      "end": {
                        "line": 138,
                        "column": 99
                      }
                    }
                  },
                  "range": [
                    6087,
                    6099
                  ],
                  "loc": {
                    "start": {
                      "line": 138,
                      "column": 87
                    },
                    "end": {
                      "line": 138,
                      "column": 99
                    }
                  }
                },
                "range": [
                  6078,
                  6099
                ],
                "loc": {
                  "start": {
                    "line": 138,
                    "column": 78
                  },
                  "end": {
                    "line": 138,
                    "column": 99
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6004,
              6100
            ],
            "loc": {
              "start": {
                "line": 138,
                "column": 4
              },
              "end": {
                "line": 138,
                "column": 100
              }
            }
          },
          {
            "type": "IfStatement",
            "test": {
              "type": "Identifier",
              "name": "window",
              "range": [
                6109,
                6115
              ],
              "loc": {
                "start": {
                  "line": 139,
                  "column": 8
                },
                "end": {
                  "line": 139,
                  "column": 14
                }
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "body": [
                {
                  "type": "ExpressionStatement",
                  "expression": {
                    "type": "CallExpression",
                    "callee": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "Identifier",
                        "name": "window",
                        "range": [
                          6127,
                          6133
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 8
                          },
                          "end": {
                            "line": 140,
                            "column": 14
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "complete",
                        "range": [
                          6134,
                          6142
                        ],
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 15
                          },
                          "end": {
                            "line": 140,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        6127,
                        6142
                      ],
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 8
                        },
                        "end": {
                          "line": 140,
                          "column": 23
                        }
                      }
                    },
                    "arguments": [],
                    "range": [
                      6127,
                      6144
                    ],
                    "loc": {
                      "start": {
                        "line": 140,
                        "column": 8
                      },
                      "end": {
                        "line": 140,
                        "column": 25
                      }
                    }
                  },
                  "range": [
                    6127,
                    6145
                  ],
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 8
                    },
                    "end": {
                      "line": 140,
                      "column": 26
                    }
                  }
                }
              ],
              "range": [
                6117,
                6151
              ],
              "loc": {
                "start": {
                  "line": 139,
                  "column": 16
                },
                "end": {
                  "line": 141,
                  "column": 5
                }
              }
            },
            "alternate": null,
            "range": [
              6105,
              6151
            ],
            "loc": {
              "start": {
                "line": 139,
                "column": 4
              },
              "end": {
                "line": 141,
                "column": 5
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "AssignmentExpression",
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "state",
                  "range": [
                    6156,
                    6161
                  ],
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 4
                    },
                    "end": {
                      "line": 142,
                      "column": 9
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "window",
                  "range": [
                    6162,
                    6168
                  ],
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 10
                    },
                    "end": {
                      "line": 142,
                      "column": 16
                    }
                  }
                },
                "range": [
                  6156,
                  6168
                ],
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 4
                  },
                  "end": {
                    "line": 142,
                    "column": 16
                  }
                }
              },
              "right": {
                "type": "CallExpression",
                "callee": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      6171,
                      6181
                    ],
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 19
                      },
                      "end": {
                        "line": 142,
                        "column": 29
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "openWindow",
                    "range": [
                      6182,
                      6192
                    ],
                    "loc": {
                      "start": {
                        "line": 142,
                        "column": 30
                      },
                      "end": {
                        "line": 142,
                        "column": 40
                      }
                    }
                  },
                  "range": [
                    6171,
                    6192
                  ],
                  "loc": {
                    "start": {
                      "line": 142,
                      "column": 19
                    },
                    "end": {
                      "line": 142,
                      "column": 40
                    }
                  }
                },
                "arguments": [],
                "range": [
                  6171,
                  6194
                ],
                "loc": {
                  "start": {
                    "line": 142,
                    "column": 19
                  },
                  "end": {
                    "line": 142,
                    "column": 42
                  }
                }
              },
              "range": [
                6156,
                6194
              ],
              "loc": {
                "start": {
                  "line": 142,
                  "column": 4
                },
                "end": {
                  "line": 142,
                  "column": 42
                }
              }
            },
            "range": [
              6156,
              6195
            ],
            "loc": {
              "start": {
                "line": 142,
                "column": 4
              },
              "end": {
                "line": 142,
                "column": 43
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "CallExpression",
              "callee": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "ThisExpression",
                  "range": [
                    6200,
                    6204
                  ],
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 4
                    },
                    "end": {
                      "line": 143,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "schedule",
                  "range": [
                    6205,
                    6213
                  ],
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 9
                    },
                    "end": {
                      "line": 143,
                      "column": 17
                    }
                  }
                },
                "range": [
                  6200,
                  6213
                ],
                "loc": {
                  "start": {
                    "line": 143,
                    "column": 4
                  },
                  "end": {
                    "line": 143,
                    "column": 17
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "state",
                  "range": [
                    6214,
                    6219
                  ],
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 18
                    },
                    "end": {
                      "line": 143,
                      "column": 23
                    }
                  }
                },
                {
                  "type": "Identifier",
                  "name": "windowTimeSpan",
                  "range": [
                    6221,
                    6235
                  ],
                  "loc": {
                    "start": {
                      "line": 143,
                      "column": 25
                    },
                    "end": {
                      "line": 143,
                      "column": 39
                    }
                  }
                }
              ],
              "range": [
                6200,
                6236
              ],
              "loc": {
                "start": {
                  "line": 143,
                  "column": 4
                },
                "end": {
                  "line": 143,
                  "column": 40
                }
              }
            },
            "range": [
              6200,
              6237
            ],
            "loc": {
              "start": {
                "line": 143,
                "column": 4
              },
              "end": {
                "line": 143,
                "column": 41
              }
            }
          }
        ],
        "range": [
          5998,
          6239
        ],
        "loc": {
          "start": {
            "line": 137,
            "column": 43
          },
          "end": {
            "line": 144,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        5955,
        6239
      ],
      "loc": {
        "start": {
          "line": 137,
          "column": 0
        },
        "end": {
          "line": 144,
          "column": 1
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "id": {
        "type": "Identifier",
        "name": "dispatchWindowCreation",
        "range": [
          6249,
          6271
        ],
        "loc": {
          "start": {
            "line": 145,
            "column": 9
          },
          "end": {
            "line": 145,
            "column": 31
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "state",
          "range": [
            6272,
            6277
          ],
          "loc": {
            "start": {
              "line": 145,
              "column": 32
            },
            "end": {
              "line": 145,
              "column": 37
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "windowTimeSpan",
                  "range": [
                    6289,
                    6303
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 8
                    },
                    "end": {
                      "line": 146,
                      "column": 22
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6306,
                      6311
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 25
                      },
                      "end": {
                        "line": 146,
                        "column": 30
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "windowTimeSpan",
                    "range": [
                      6312,
                      6326
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 31
                      },
                      "end": {
                        "line": 146,
                        "column": 45
                      }
                    }
                  },
                  "range": [
                    6306,
                    6326
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 25
                    },
                    "end": {
                      "line": 146,
                      "column": 45
                    }
                  }
                },
                "range": [
                  6289,
                  6326
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 8
                  },
                  "end": {
                    "line": 146,
                    "column": 45
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    6328,
                    6338
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 47
                    },
                    "end": {
                      "line": 146,
                      "column": 57
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6341,
                      6346
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 60
                      },
                      "end": {
                        "line": 146,
                        "column": 65
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      6347,
                      6357
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 66
                      },
                      "end": {
                        "line": 146,
                        "column": 76
                      }
                    }
                  },
                  "range": [
                    6341,
                    6357
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 60
                    },
                    "end": {
                      "line": 146,
                      "column": 76
                    }
                  }
                },
                "range": [
                  6328,
                  6357
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 47
                  },
                  "end": {
                    "line": 146,
                    "column": 76
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "scheduler",
                  "range": [
                    6359,
                    6368
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 78
                    },
                    "end": {
                      "line": 146,
                      "column": 87
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6371,
                      6376
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 90
                      },
                      "end": {
                        "line": 146,
                        "column": 95
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "scheduler",
                    "range": [
                      6377,
                      6386
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 96
                      },
                      "end": {
                        "line": 146,
                        "column": 105
                      }
                    }
                  },
                  "range": [
                    6371,
                    6386
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 90
                    },
                    "end": {
                      "line": 146,
                      "column": 105
                    }
                  }
                },
                "range": [
                  6359,
                  6386
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 78
                  },
                  "end": {
                    "line": 146,
                    "column": 105
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "windowCreationInterval",
                  "range": [
                    6388,
                    6410
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 107
                    },
                    "end": {
                      "line": 146,
                      "column": 129
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "state",
                    "range": [
                      6413,
                      6418
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 132
                      },
                      "end": {
                        "line": 146,
                        "column": 137
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "windowCreationInterval",
                    "range": [
                      6419,
                      6441
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 138
                      },
                      "end": {
                        "line": 146,
                        "column": 160
                      }
                    }
                  },
                  "range": [
                    6413,
                    6441
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 132
                    },
                    "end": {
                      "line": 146,
                      "column": 160
                    }
                  }
                },
                "range": [
                  6388,
                  6441
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 107
                  },
                  "end": {
                    "line": 146,
                    "column": 160
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6285,
              6442
            ],
            "loc": {
              "start": {
                "line": 146,
                "column": 4
              },
              "end": {
                "line": 146,
                "column": 161
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "window",
                  "range": [
                    6451,
                    6457
                  ],
                  "loc": {
                    "start": {
                      "line": 147,
                      "column": 8
                    },
                    "end": {
                      "line": 147,
                      "column": 14
                    }
                  }
                },
                "init": {
                  "type": "CallExpression",
                  "callee": {
                    "type": "MemberExpression",
                    "computed": false,
                    "object": {
                      "type": "Identifier",
                      "name": "subscriber",
                      "range": [
                        6460,
                        6470
                      ],
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 17
                        },
                        "end": {
                          "line": 147,
                          "column": 27
                        }
                      }
                    },
                    "property": {
                      "type": "Identifier",
                      "name": "openWindow",
                      "range": [
                        6471,
                        6481
                      ],
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 28
                        },
                        "end": {
                          "line": 147,
                          "column": 38
                        }
                      }
                    },
                    "range": [
                      6460,
                      6481
                    ],
                    "loc": {
                      "start": {
                        "line": 147,
                        "column": 17
                      },
                      "end": {
                        "line": 147,
                        "column": 38
                      }
                    }
                  },
                  "arguments": [],
                  "range": [
                    6460,
                    6483
                  ],
                  "loc": {
                    "start": {
                      "line": 147,
                      "column": 17
                    },
                    "end": {
                      "line": 147,
                      "column": 40
                    }
                  }
                },
                "range": [
                  6451,
                  6483
                ],
                "loc": {
                  "start": {
                    "line": 147,
                    "column": 8
                  },
                  "end": {
                    "line": 147,
                    "column": 40
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6447,
              6484
            ],
            "loc": {
              "start": {
                "line": 147,
                "column": 4
              },
              "end": {
                "line": 147,
                "column": 41
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "action",
                  "range": [
                    6493,
                    6499
                  ],
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 8
                    },
                    "end": {
                      "line": 148,
                      "column": 14
                    }
                  }
                },
                "init": {
                  "type": "ThisExpression",
                  "range": [
                    6502,
                    6506
                  ],
                  "loc": {
                    "start": {
                      "line": 148,
                      "column": 17
                    },
                    "end": {
                      "line": 148,
                      "column": 21
                    }
                  }
                },
                "range": [
                  6493,
                  6506
                ],
                "loc": {
                  "start": {
                    "line": 148,
                    "column": 8
                  },
                  "end": {
                    "line": 148,
                    "column": 21
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6489,
              6507
            ],
            "loc": {
              "start": {
                "line": 148,
                "column": 4
              },
              "end": {
                "line": 148,
                "column": 22
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "context",
                  "range": [
                    6516,
                    6523
                  ],
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 8
                    },
                    "end": {
                      "line": 149,
                      "column": 15
                    }
                  }
                },
                "init": {
                  "type": "ObjectExpression",
                  "properties": [
                    {
                      "type": "Property",
                      "key": {
                        "type": "Identifier",
                        "name": "action",
                        "range": [
                          6528,
                          6534
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 20
                          },
                          "end": {
                            "line": 149,
                            "column": 26
                          }
                        }
                      },
                      "value": {
                        "type": "Identifier",
                        "name": "action",
                        "range": [
                          6536,
                          6542
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 28
                          },
                          "end": {
                            "line": 149,
                            "column": 34
                          }
                        }
                      },
                      "kind": "init",
                      "method": false,
                      "shorthand": false,
                      "computed": false,
                      "range": [
                        6528,
                        6542
                      ],
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 20
                        },
                        "end": {
                          "line": 149,
                          "column": 34
                        }
                      }
                    },
                    {
                      "type": "Property",
                      "key": {
                        "type": "Identifier",
                        "name": "subscription",
                        "range": [
                          6544,
                          6556
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 36
                          },
                          "end": {
                            "line": 149,
                            "column": 48
                          }
                        }
                      },
                      "value": {
                        "type": "Literal",
                        "value": null,
                        "raw": "null",
                        "range": [
                          6558,
                          6562
                        ],
                        "loc": {
                          "start": {
                            "line": 149,
                            "column": 50
                          },
                          "end": {
                            "line": 149,
                            "column": 54
                          }
                        }
                      },
                      "kind": "init",
                      "method": false,
                      "shorthand": false,
                      "computed": false,
                      "range": [
                        6544,
                        6562
                      ],
                      "loc": {
                        "start": {
                          "line": 149,
                          "column": 36
                        },
                        "end": {
                          "line": 149,
                          "column": 54
                        }
                      }
                    }
                  ],
                  "range": [
                    6526,
                    6564
                  ],
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 18
                    },
                    "end": {
                      "line": 149,
                      "column": 56
                    }
                  }
                },
                "range": [
                  6516,
                  6564
                ],
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 8
                  },
                  "end": {
                    "line": 149,
                    "column": 56
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6512,
              6565
            ],
            "loc": {
              "start": {
                "line": 149,
                "column": 4
              },
              "end": {
                "line": 149,
                "column": 57
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "timeSpanState",
                  "range": [
                    6574,
                    6587
                  ],
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 8
                    },
                    "end": {
                      "line": 150,
                      "column": 21
                    }
                  }
                },
                "init": {
                  "type": "ObjectExpression",
                  "properties": [
                    {
                      "type": "Property",
                      "key": {
                        "type": "Identifier",
                        "name": "subscriber",
                        "range": [
                          6592,
                          6602
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 26
                          },
                          "end": {
                            "line": 150,
                            "column": 36
                          }
                        }
                      },
                      "value": {
                        "type": "Identifier",
                        "name": "subscriber",
                        "range": [
                          6604,
                          6614
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 38
                          },
                          "end": {
                            "line": 150,
                            "column": 48
                          }
                        }
                      },
                      "kind": "init",
                      "method": false,
                      "shorthand": false,
                      "computed": false,
                      "range": [
                        6592,
                        6614
                      ],
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 26
                        },
                        "end": {
                          "line": 150,
                          "column": 48
                        }
                      }
                    },
                    {
                      "type": "Property",
                      "key": {
                        "type": "Identifier",
                        "name": "window",
                        "range": [
                          6616,
                          6622
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 50
                          },
                          "end": {
                            "line": 150,
                            "column": 56
                          }
                        }
                      },
                      "value": {
                        "type": "Identifier",
                        "name": "window",
                        "range": [
                          6624,
                          6630
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 58
                          },
                          "end": {
                            "line": 150,
                            "column": 64
                          }
                        }
                      },
                      "kind": "init",
                      "method": false,
                      "shorthand": false,
                      "computed": false,
                      "range": [
                        6616,
                        6630
                      ],
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 50
                        },
                        "end": {
                          "line": 150,
                          "column": 64
                        }
                      }
                    },
                    {
                      "type": "Property",
                      "key": {
                        "type": "Identifier",
                        "name": "context",
                        "range": [
                          6632,
                          6639
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 66
                          },
                          "end": {
                            "line": 150,
                            "column": 73
                          }
                        }
                      },
                      "value": {
                        "type": "Identifier",
                        "name": "context",
                        "range": [
                          6641,
                          6648
                        ],
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 75
                          },
                          "end": {
                            "line": 150,
                            "column": 82
                          }
                        }
                      },
                      "kind": "init",
                      "method": false,
                      "shorthand": false,
                      "computed": false,
                      "range": [
                        6632,
                        6648
                      ],
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 66
                        },
                        "end": {
                          "line": 150,
                          "column": 82
                        }
                      }
                    }
                  ],
                  "range": [
                    6590,
                    6650
                  ],
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 24
                    },
                    "end": {
                      "line": 150,
                      "column": 84
                    }
                  }
                },
                "range": [
                  6574,
                  6650
                ],
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 8
                  },
                  "end": {
                    "line": 150,
                    "column": 84
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6570,
              6651
            ],
            "loc": {
              "start": {
                "line": 150,
                "column": 4
              },
              "end": {
                "line": 150,
                "column": 85
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "AssignmentExpression",
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "context",
                  "range": [
                    6656,
                    6663
                  ],
                  "loc": {
                    "start": {
                      "line": 151,
                      "column": 4
                    },
                    "end": {
                      "line": 151,
                      "column": 11
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "subscription",
                  "range": [
                    6664,
                    6676
                  ],
                  "loc": {
                    "start": {
                      "line": 151,
                      "column": 12
                    },
                    "end": {
                      "line": 151,
                      "column": 24
                    }
                  }
                },
                "range": [
                  6656,
                  6676
                ],
                "loc": {
                  "start": {
                    "line": 151,
                    "column": 4
                  },
                  "end": {
                    "line": 151,
                    "column": 24
                  }
                }
              },
              "right": {
                "type": "CallExpression",
                "callee": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "scheduler",
                    "range": [
                      6679,
                      6688
                    ],
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 27
                      },
                      "end": {
                        "line": 151,
                        "column": 36
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "schedule",
                    "range": [
                      6689,
                      6697
                    ],
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 37
                      },
                      "end": {
                        "line": 151,
                        "column": 45
                      }
                    }
                  },
                  "range": [
                    6679,
                    6697
                  ],
                  "loc": {
                    "start": {
                      "line": 151,
                      "column": 27
                    },
                    "end": {
                      "line": 151,
                      "column": 45
                    }
                  }
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "name": "dispatchWindowClose",
                    "range": [
                      6698,
                      6717
                    ],
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 46
                      },
                      "end": {
                        "line": 151,
                        "column": 65
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "windowTimeSpan",
                    "range": [
                      6719,
                      6733
                    ],
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 67
                      },
                      "end": {
                        "line": 151,
                        "column": 81
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "timeSpanState",
                    "range": [
                      6735,
                      6748
                    ],
                    "loc": {
                      "start": {
                        "line": 151,
                        "column": 83
                      },
                      "end": {
                        "line": 151,
                        "column": 96
                      }
                    }
                  }
                ],
                "range": [
                  6679,
                  6749
                ],
                "loc": {
                  "start": {
                    "line": 151,
                    "column": 27
                  },
                  "end": {
                    "line": 151,
                    "column": 97
                  }
                }
              },
              "range": [
                6656,
                6749
              ],
              "loc": {
                "start": {
                  "line": 151,
                  "column": 4
                },
                "end": {
                  "line": 151,
                  "column": 97
                }
              }
            },
            "range": [
              6656,
              6750
            ],
            "loc": {
              "start": {
                "line": 151,
                "column": 4
              },
              "end": {
                "line": 151,
                "column": 98
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "CallExpression",
              "callee": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "action",
                  "range": [
                    6755,
                    6761
                  ],
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 4
                    },
                    "end": {
                      "line": 152,
                      "column": 10
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "add",
                  "range": [
                    6762,
                    6765
                  ],
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 11
                    },
                    "end": {
                      "line": 152,
                      "column": 14
                    }
                  }
                },
                "range": [
                  6755,
                  6765
                ],
                "loc": {
                  "start": {
                    "line": 152,
                    "column": 4
                  },
                  "end": {
                    "line": 152,
                    "column": 14
                  }
                }
              },
              "arguments": [
                {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "context",
                    "range": [
                      6766,
                      6773
                    ],
                    "loc": {
                      "start": {
                        "line": 152,
                        "column": 15
                      },
                      "end": {
                        "line": 152,
                        "column": 22
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscription",
                    "range": [
                      6774,
                      6786
                    ],
                    "loc": {
                      "start": {
                        "line": 152,
                        "column": 23
                      },
                      "end": {
                        "line": 152,
                        "column": 35
                      }
                    }
                  },
                  "range": [
                    6766,
                    6786
                  ],
                  "loc": {
                    "start": {
                      "line": 152,
                      "column": 15
                    },
                    "end": {
                      "line": 152,
                      "column": 35
                    }
                  }
                }
              ],
              "range": [
                6755,
                6787
              ],
              "loc": {
                "start": {
                  "line": 152,
                  "column": 4
                },
                "end": {
                  "line": 152,
                  "column": 36
                }
              }
            },
            "range": [
              6755,
              6788
            ],
            "loc": {
              "start": {
                "line": 152,
                "column": 4
              },
              "end": {
                "line": 152,
                "column": 37
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "CallExpression",
              "callee": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "action",
                  "range": [
                    6793,
                    6799
                  ],
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 4
                    },
                    "end": {
                      "line": 153,
                      "column": 10
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "schedule",
                  "range": [
                    6800,
                    6808
                  ],
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 11
                    },
                    "end": {
                      "line": 153,
                      "column": 19
                    }
                  }
                },
                "range": [
                  6793,
                  6808
                ],
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 153,
                    "column": 19
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "state",
                  "range": [
                    6809,
                    6814
                  ],
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 20
                    },
                    "end": {
                      "line": 153,
                      "column": 25
                    }
                  }
                },
                {
                  "type": "Identifier",
                  "name": "windowCreationInterval",
                  "range": [
                    6816,
                    6838
                  ],
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 27
                    },
                    "end": {
                      "line": 153,
                      "column": 49
                    }
                  }
                }
              ],
              "range": [
                6793,
                6839
              ],
              "loc": {
                "start": {
                  "line": 153,
                  "column": 4
                },
                "end": {
                  "line": 153,
                  "column": 50
                }
              }
            },
            "range": [
              6793,
              6840
            ],
            "loc": {
              "start": {
                "line": 153,
                "column": 4
              },
              "end": {
                "line": 153,
                "column": 51
              }
            }
          }
        ],
        "range": [
          6279,
          6842
        ],
        "loc": {
          "start": {
            "line": 145,
            "column": 39
          },
          "end": {
            "line": 154,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        6240,
        6842
      ],
      "loc": {
        "start": {
          "line": 145,
          "column": 0
        },
        "end": {
          "line": 154,
          "column": 1
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "id": {
        "type": "Identifier",
        "name": "dispatchWindowClose",
        "range": [
          6852,
          6871
        ],
        "loc": {
          "start": {
            "line": 155,
            "column": 9
          },
          "end": {
            "line": 155,
            "column": 28
          }
        }
      },
      "params": [
        {
          "type": "Identifier",
          "name": "arg",
          "range": [
            6872,
            6875
          ],
          "loc": {
            "start": {
              "line": 155,
              "column": 29
            },
            "end": {
              "line": 155,
              "column": 32
            }
          }
        }
      ],
      "body": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "VariableDeclaration",
            "declarations": [
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    6887,
                    6897
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 8
                    },
                    "end": {
                      "line": 156,
                      "column": 18
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      6900,
                      6903
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 21
                      },
                      "end": {
                        "line": 156,
                        "column": 24
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "subscriber",
                    "range": [
                      6904,
                      6914
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 25
                      },
                      "end": {
                        "line": 156,
                        "column": 35
                      }
                    }
                  },
                  "range": [
                    6900,
                    6914
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 21
                    },
                    "end": {
                      "line": 156,
                      "column": 35
                    }
                  }
                },
                "range": [
                  6887,
                  6914
                ],
                "loc": {
                  "start": {
                    "line": 156,
                    "column": 8
                  },
                  "end": {
                    "line": 156,
                    "column": 35
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "window",
                  "range": [
                    6916,
                    6922
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 37
                    },
                    "end": {
                      "line": 156,
                      "column": 43
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      6925,
                      6928
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 46
                      },
                      "end": {
                        "line": 156,
                        "column": 49
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "window",
                    "range": [
                      6929,
                      6935
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 50
                      },
                      "end": {
                        "line": 156,
                        "column": 56
                      }
                    }
                  },
                  "range": [
                    6925,
                    6935
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 46
                    },
                    "end": {
                      "line": 156,
                      "column": 56
                    }
                  }
                },
                "range": [
                  6916,
                  6935
                ],
                "loc": {
                  "start": {
                    "line": 156,
                    "column": 37
                  },
                  "end": {
                    "line": 156,
                    "column": 56
                  }
                }
              },
              {
                "type": "VariableDeclarator",
                "id": {
                  "type": "Identifier",
                  "name": "context",
                  "range": [
                    6937,
                    6944
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 58
                    },
                    "end": {
                      "line": 156,
                      "column": 65
                    }
                  }
                },
                "init": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "arg",
                    "range": [
                      6947,
                      6950
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 68
                      },
                      "end": {
                        "line": 156,
                        "column": 71
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "context",
                    "range": [
                      6951,
                      6958
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 72
                      },
                      "end": {
                        "line": 156,
                        "column": 79
                      }
                    }
                  },
                  "range": [
                    6947,
                    6958
                  ],
                  "loc": {
                    "start": {
                      "line": 156,
                      "column": 68
                    },
                    "end": {
                      "line": 156,
                      "column": 79
                    }
                  }
                },
                "range": [
                  6937,
                  6958
                ],
                "loc": {
                  "start": {
                    "line": 156,
                    "column": 58
                  },
                  "end": {
                    "line": 156,
                    "column": 79
                  }
                }
              }
            ],
            "kind": "var",
            "range": [
              6883,
              6959
            ],
            "loc": {
              "start": {
                "line": 156,
                "column": 4
              },
              "end": {
                "line": 156,
                "column": 80
              }
            }
          },
          {
            "type": "IfStatement",
            "test": {
              "type": "LogicalExpression",
              "operator": "&&",
              "left": {
                "type": "LogicalExpression",
                "operator": "&&",
                "left": {
                  "type": "Identifier",
                  "name": "context",
                  "range": [
                    6968,
                    6975
                  ],
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 8
                    },
                    "end": {
                      "line": 157,
                      "column": 15
                    }
                  }
                },
                "right": {
                  "type": "MemberExpression",
                  "computed": false,
                  "object": {
                    "type": "Identifier",
                    "name": "context",
                    "range": [
                      6979,
                      6986
                    ],
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 19
                      },
                      "end": {
                        "line": 157,
                        "column": 26
                      }
                    }
                  },
                  "property": {
                    "type": "Identifier",
                    "name": "action",
                    "range": [
                      6987,
                      6993
                    ],
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 27
                      },
                      "end": {
                        "line": 157,
                        "column": 33
                      }
                    }
                  },
                  "range": [
                    6979,
                    6993
                  ],
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 19
                    },
                    "end": {
                      "line": 157,
                      "column": 33
                    }
                  }
                },
                "range": [
                  6968,
                  6993
                ],
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 8
                  },
                  "end": {
                    "line": 157,
                    "column": 33
                  }
                }
              },
              "right": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "context",
                  "range": [
                    6997,
                    7004
                  ],
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 37
                    },
                    "end": {
                      "line": 157,
                      "column": 44
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "subscription",
                  "range": [
                    7005,
                    7017
                  ],
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 45
                    },
                    "end": {
                      "line": 157,
                      "column": 57
                    }
                  }
                },
                "range": [
                  6997,
                  7017
                ],
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 37
                  },
                  "end": {
                    "line": 157,
                    "column": 57
                  }
                }
              },
              "range": [
                6968,
                7017
              ],
              "loc": {
                "start": {
                  "line": 157,
                  "column": 8
                },
                "end": {
                  "line": 157,
                  "column": 57
                }
              }
            },
            "consequent": {
              "type": "BlockStatement",
              "body": [
                {
                  "type": "ExpressionStatement",
                  "expression": {
                    "type": "CallExpression",
                    "callee": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "context",
                          "range": [
                            7029,
                            7036
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 8
                            },
                            "end": {
                              "line": 158,
                              "column": 15
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "action",
                          "range": [
                            7037,
                            7043
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 16
                            },
                            "end": {
                              "line": 158,
                              "column": 22
                            }
                          }
                        },
                        "range": [
                          7029,
                          7043
                        ],
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 22
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "remove",
                        "range": [
                          7044,
                          7050
                        ],
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 23
                          },
                          "end": {
                            "line": 158,
                            "column": 29
                          }
                        }
                      },
                      "range": [
                        7029,
                        7050
                      ],
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 29
                        }
                      }
                    },
                    "arguments": [
                      {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "context",
                          "range": [
                            7051,
                            7058
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 30
                            },
                            "end": {
                              "line": 158,
                              "column": 37
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "subscription",
                          "range": [
                            7059,
                            7071
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 38
                            },
                            "end": {
                              "line": 158,
                              "column": 50
                            }
                          }
                        },
                        "range": [
                          7051,
                          7071
                        ],
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 30
                          },
                          "end": {
                            "line": 158,
                            "column": 50
                          }
                        }
                      }
                    ],
                    "range": [
                      7029,
                      7072
                    ],
                    "loc": {
                      "start": {
                        "line": 158,
                        "column": 8
                      },
                      "end": {
                        "line": 158,
                        "column": 51
                      }
                    }
                  },
                  "range": [
                    7029,
                    7073
                  ],
                  "loc": {
                    "start": {
                      "line": 158,
                      "column": 8
                    },
                    "end": {
                      "line": 158,
                      "column": 52
                    }
                  }
                }
              ],
              "range": [
                7019,
                7079
              ],
              "loc": {
                "start": {
                  "line": 157,
                  "column": 59
                },
                "end": {
                  "line": 159,
                  "column": 5
                }
              }
            },
            "alternate": null,
            "range": [
              6964,
              7079
            ],
            "loc": {
              "start": {
                "line": 157,
                "column": 4
              },
              "end": {
                "line": 159,
                "column": 5
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "expression": {
              "type": "CallExpression",
              "callee": {
                "type": "MemberExpression",
                "computed": false,
                "object": {
                  "type": "Identifier",
                  "name": "subscriber",
                  "range": [
                    7084,
                    7094
                  ],
                  "loc": {
                    "start": {
                      "line": 160,
                      "column": 4
                    },
                    "end": {
                      "line": 160,
                      "column": 14
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "name": "closeWindow",
                  "range": [
                    7095,
                    7106
                  ],
                  "loc": {
                    "start": {
                      "line": 160,
                      "column": 15
                    },
                    "end": {
                      "line": 160,
                      "column": 26
                    }
                  }
                },
                "range": [
                  7084,
                  7106
                ],
                "loc": {
                  "start": {
                    "line": 160,
                    "column": 4
                  },
                  "end": {
                    "line": 160,
                    "column": 26
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "window",
                  "range": [
                    7107,
                    7113
                  ],
                  "loc": {
                    "start": {
                      "line": 160,
                      "column": 27
                    },
                    "end": {
                      "line": 160,
                      "column": 33
                    }
                  }
                }
              ],
              "range": [
                7084,
                7114
              ],
              "loc": {
                "start": {
                  "line": 160,
                  "column": 4
                },
                "end": {
                  "line": 160,
                  "column": 34
                }
              }
            },
            "range": [
              7084,
              7115
            ],
            "loc": {
              "start": {
                "line": 160,
                "column": 4
              },
              "end": {
                "line": 160,
                "column": 35
              }
            }
          }
        ],
        "range": [
          6877,
          7117
        ],
        "loc": {
          "start": {
            "line": 155,
            "column": 34
          },
          "end": {
            "line": 161,
            "column": 1
          }
        }
      },
      "generator": false,
      "expression": false,
      "range": [
        6843,
        7117
      ],
      "loc": {
        "start": {
          "line": 155,
          "column": 0
        },
        "end": {
          "line": 161,
          "column": 1
        }
      },
      "trailingComments": [
        {
          "type": "Line",
          "value": "# sourceMappingURL=windowTime.js.map",
          "range": [
            7118,
            7156
          ],
          "loc": {
            "start": {
              "line": 162,
              "column": 0
            },
            "end": {
              "line": 162,
              "column": 38
            }
          }
        }
      ]
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    7117
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 161,
      "column": 1
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * Branch out the source Observable values as a nested Observable periodically\n * in time.\n *\n * <span class=\"informal\">It's like {@link bufferTime}, but emits a nested\n * Observable instead of an array.</span>\n *\n * <img src=\"./img/windowTime.png\" width=\"100%\">\n *\n * Returns an Observable that emits windows of items it collects from the source\n * Observable. The output Observable starts a new window periodically, as\n * determined by the `windowCreationInterval` argument. It emits each window\n * after a fixed timespan, specified by the `windowTimeSpan` argument. When the\n * source Observable completes or encounters an error, the output Observable\n * emits the current window and propagates the notification from the source\n * Observable. If `windowCreationInterval` is not provided, the output\n * Observable starts a new window when the previous window of duration\n * `windowTimeSpan` completes.\n *\n * @example <caption>In every window of 1 second each, emit at most 2 click events</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @example <caption>Every 5 seconds start a window 1 second long, and emit at most 2 click events per window</caption>\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var result = clicks.windowTime(1000, 5000)\n *   .map(win => win.take(2)) // each window has at most 2 emissions\n *   .mergeAll(); // flatten the Observable-of-Observables\n * result.subscribe(x => console.log(x));\n *\n * @see {@link window}\n * @see {@link windowCount}\n * @see {@link windowToggle}\n * @see {@link windowWhen}\n * @see {@link bufferTime}\n *\n * @param {number} windowTimeSpan The amount of time to fill each window.\n * @param {number} [windowCreationInterval] The interval at which to start new\n * windows.\n * @param {Scheduler} [scheduler=async] The scheduler on which to schedule the\n * intervals that determine window boundaries.\n * @return {Observable<Observable<T>>} An observable of windows, which in turn\n * are Observables.\n * @method windowTime\n * @owner Observable\n ",
      "range": [
        126,
        2375
      ],
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 52,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
      "range": [
        3215,
        3306
      ],
      "loc": {
        "start": {
          "line": 69,
          "column": 0
        },
        "end": {
          "line": 73,
          "column": 3
        }
      }
    },
    {
      "type": "Line",
      "value": "# sourceMappingURL=windowTime.js.map",
      "range": [
        7118,
        7156
      ],
      "loc": {
        "start": {
          "line": 162,
          "column": 0
        },
        "end": {
          "line": 162,
          "column": 38
        }
      }
    }
  ]
}