{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Immediate",
            "range": [
              9,
              18
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 18
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "Immediate",
            "range": [
              9,
              18
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 18
              }
            }
          },
          "range": [
            9,
            18
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 9
            },
            "end": {
              "line": 1,
              "column": 18
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "../util/Immediate",
        "raw": "'../util/Immediate'",
        "range": [
          26,
          45
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 26
          },
          "end": {
            "line": 1,
            "column": 45
          }
        }
      },
      "range": [
        0,
        46
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 46
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "AsyncAction",
            "range": [
              56,
              67
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 20
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "AsyncAction",
            "range": [
              56,
              67
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 9
              },
              "end": {
                "line": 2,
                "column": 20
              }
            }
          },
          "range": [
            56,
            67
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 9
            },
            "end": {
              "line": 2,
              "column": 20
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./AsyncAction",
        "raw": "'./AsyncAction'",
        "range": [
          75,
          90
        ],
        "loc": {
          "start": {
            "line": 2,
            "column": 28
          },
          "end": {
            "line": 2,
            "column": 43
          }
        }
      },
      "range": [
        47,
        91
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 44
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
          "range": [
            92,
            183
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 0
            },
            "end": {
              "line": 7,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "VariableDeclaration",
        "declarations": [
          {
            "type": "VariableDeclarator",
            "id": {
              "type": "Identifier",
              "name": "AsapAction",
              "range": [
                195,
                205
              ],
              "loc": {
                "start": {
                  "line": 8,
                  "column": 11
                },
                "end": {
                  "line": 8,
                  "column": 21
                }
              }
            },
            "init": {
              "type": "CallExpression",
              "callee": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "_super",
                    "range": [
                      219,
                      225
                    ],
                    "loc": {
                      "start": {
                        "line": 8,
                        "column": 35
                      },
                      "end": {
                        "line": 8,
                        "column": 41
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "Identifier",
                          "name": "__extends",
                          "range": [
                            233,
                            242
                          ],
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 4
                            },
                            "end": {
                              "line": 9,
                              "column": 13
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "AsapAction",
                            "range": [
                              243,
                              253
                            ],
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 14
                              },
                              "end": {
                                "line": 9,
                                "column": 24
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "name": "_super",
                            "range": [
                              255,
                              261
                            ],
                            "loc": {
                              "start": {
                                "line": 9,
                                "column": 26
                              },
                              "end": {
                                "line": 9,
                                "column": 32
                              }
                            }
                          }
                        ],
                        "range": [
                          233,
                          262
                        ],
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 4
                          },
                          "end": {
                            "line": 9,
                            "column": 33
                          }
                        }
                      },
                      "range": [
                        233,
                        263
                      ],
                      "loc": {
                        "start": {
                          "line": 9,
                          "column": 4
                        },
                        "end": {
                          "line": 9,
                          "column": 34
                        }
                      }
                    },
                    {
                      "type": "FunctionDeclaration",
                      "id": {
                        "type": "Identifier",
                        "name": "AsapAction",
                        "range": [
                          277,
                          287
                        ],
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 13
                          },
                          "end": {
                            "line": 10,
                            "column": 23
                          }
                        }
                      },
                      "params": [
                        {
                          "type": "Identifier",
                          "name": "scheduler",
                          "range": [
                            288,
                            297
                          ],
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 24
                            },
                            "end": {
                              "line": 10,
                              "column": 33
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "name": "work",
                          "range": [
                            299,
                            303
                          ],
                          "loc": {
                            "start": {
                              "line": 10,
                              "column": 35
                            },
                            "end": {
                              "line": 10,
                              "column": 39
                            }
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "_super",
                                  "range": [
                                    315,
                                    321
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 14
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "call",
                                  "range": [
                                    322,
                                    326
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 19
                                    }
                                  }
                                },
                                "range": [
                                  315,
                                  326
                                ],
                                "loc": {
                                  "start": {
                                    "line": 11,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 19
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "range": [
                                    327,
                                    331
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 24
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "name": "scheduler",
                                  "range": [
                                    333,
                                    342
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 35
                                    }
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "name": "work",
                                  "range": [
                                    344,
                                    348
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 11,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 11,
                                      "column": 41
                                    }
                                  }
                                }
                              ],
                              "range": [
                                315,
                                349
                              ],
                              "loc": {
                                "start": {
                                  "line": 11,
                                  "column": 8
                                },
                                "end": {
                                  "line": 11,
                                  "column": 42
                                }
                              }
                            },
                            "range": [
                              315,
                              350
                            ],
                            "loc": {
                              "start": {
                                "line": 11,
                                "column": 8
                              },
                              "end": {
                                "line": 11,
                                "column": 43
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    359,
                                    363
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "scheduler",
                                  "range": [
                                    364,
                                    373
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 22
                                    }
                                  }
                                },
                                "range": [
                                  359,
                                  373
                                ],
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 22
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "scheduler",
                                "range": [
                                  376,
                                  385
                                ],
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 12,
                                    "column": 34
                                  }
                                }
                              },
                              "range": [
                                359,
                                385
                              ],
                              "loc": {
                                "start": {
                                  "line": 12,
                                  "column": 8
                                },
                                "end": {
                                  "line": 12,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              359,
                              386
                            ],
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 8
                              },
                              "end": {
                                "line": 12,
                                "column": 35
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    395,
                                    399
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "work",
                                  "range": [
                                    400,
                                    404
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 13,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 13,
                                      "column": 17
                                    }
                                  }
                                },
                                "range": [
                                  395,
                                  404
                                ],
                                "loc": {
                                  "start": {
                                    "line": 13,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 13,
                                    "column": 17
                                  }
                                }
                              },
                              "right": {
                                "type": "Identifier",
                                "name": "work",
                                "range": [
                                  407,
                                  411
                                ],
                                "loc": {
                                  "start": {
                                    "line": 13,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 13,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                395,
                                411
                              ],
                              "loc": {
                                "start": {
                                  "line": 13,
                                  "column": 8
                                },
                                "end": {
                                  "line": 13,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              395,
                              412
                            ],
                            "loc": {
                              "start": {
                                "line": 13,
                                "column": 8
                              },
                              "end": {
                                "line": 13,
                                "column": 25
                              }
                            }
                          }
                        ],
                        "range": [
                          305,
                          418
                        ],
                        "loc": {
                          "start": {
                            "line": 10,
                            "column": 41
                          },
                          "end": {
                            "line": 14,
                            "column": 5
                          }
                        }
                      },
                      "generator": false,
                      "expression": false,
                      "range": [
                        268,
                        418
                      ],
                      "loc": {
                        "start": {
                          "line": 10,
                          "column": 4
                        },
                        "end": {
                          "line": 14,
                          "column": 5
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "AsapAction",
                              "range": [
                                423,
                                433
                              ],
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 4
                                },
                                "end": {
                                  "line": 15,
                                  "column": 14
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                434,
                                443
                              ],
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 15
                                },
                                "end": {
                                  "line": 15,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              423,
                              443
                            ],
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 4
                              },
                              "end": {
                                "line": 15,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "requestAsyncId",
                            "range": [
                              444,
                              458
                            ],
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 25
                              },
                              "end": {
                                "line": 15,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            423,
                            458
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 4
                            },
                            "end": {
                              "line": 15,
                              "column": 39
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "scheduler",
                              "range": [
                                471,
                                480
                              ],
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 52
                                },
                                "end": {
                                  "line": 15,
                                  "column": 61
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "id",
                              "range": [
                                482,
                                484
                              ],
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 63
                                },
                                "end": {
                                  "line": 15,
                                  "column": 65
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "delay",
                              "range": [
                                486,
                                491
                              ],
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 67
                                },
                                "end": {
                                  "line": 15,
                                  "column": 72
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "BinaryExpression",
                                  "operator": "===",
                                  "left": {
                                    "type": "Identifier",
                                    "name": "delay",
                                    "range": [
                                      507,
                                      512
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 17
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "UnaryExpression",
                                    "operator": "void",
                                    "argument": {
                                      "type": "Literal",
                                      "value": 0,
                                      "raw": "0",
                                      "range": [
                                        522,
                                        523
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "prefix": true,
                                    "range": [
                                      517,
                                      523
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "range": [
                                    507,
                                    523
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 16,
                                      "column": 28
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "name": "delay",
                                          "range": [
                                            527,
                                            532
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 16,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 16,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Literal",
                                          "value": 0,
                                          "raw": "0",
                                          "range": [
                                            535,
                                            536
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 16,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 16,
                                              "column": 41
                                            }
                                          }
                                        },
                                        "range": [
                                          527,
                                          536
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 16,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 16,
                                            "column": 41
                                          }
                                        }
                                      },
                                      "range": [
                                        527,
                                        537
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 42
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    525,
                                    539
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 16,
                                      "column": 44
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  503,
                                  539
                                ],
                                "loc": {
                                  "start": {
                                    "line": 16,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 16,
                                    "column": 44
                                  }
                                },
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If delay is greater than 0, request as an async action.",
                                    "range": [
                                      548,
                                      606
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 66
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "LogicalExpression",
                                  "operator": "&&",
                                  "left": {
                                    "type": "BinaryExpression",
                                    "operator": "!==",
                                    "left": {
                                      "type": "Identifier",
                                      "name": "delay",
                                      "range": [
                                        619,
                                        624
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 17
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": null,
                                      "raw": "null",
                                      "range": [
                                        629,
                                        633
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "range": [
                                      619,
                                      633
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 18,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 18,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "BinaryExpression",
                                    "operator": ">",
                                    "left": {
                                      "type": "Identifier",
                                      "name": "delay",
                                      "range": [
                                        637,
                                        642
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": 0,
                                      "raw": "0",
                                      "range": [
                                        645,
                                        646
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 18,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 18,
                                          "column": 39
                                        }
                                      }
                                    },
                                    "range": [
                                      637,
                                      646
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 18,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 18,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "range": [
                                    619,
                                    646
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 18,
                                      "column": 39
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "_super",
                                                "range": [
                                                  669,
                                                  675
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 19,
                                                    "column": 19
                                                  },
                                                  "end": {
                                                    "line": 19,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "prototype",
                                                "range": [
                                                  676,
                                                  685
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 19,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 19,
                                                    "column": 35
                                                  }
                                                }
                                              },
                                              "range": [
                                                669,
                                                685
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 19,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 19,
                                                  "column": 35
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "requestAsyncId",
                                              "range": [
                                                686,
                                                700
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 19,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 19,
                                                  "column": 50
                                                }
                                              }
                                            },
                                            "range": [
                                              669,
                                              700
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 50
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "call",
                                            "range": [
                                              701,
                                              705
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 55
                                              }
                                            }
                                          },
                                          "range": [
                                            669,
                                            705
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 19,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 19,
                                              "column": 55
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "range": [
                                              706,
                                              710
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 60
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "scheduler",
                                            "range": [
                                              712,
                                              721
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 71
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "id",
                                            "range": [
                                              723,
                                              725
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 73
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 75
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "delay",
                                            "range": [
                                              727,
                                              732
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 19,
                                                "column": 77
                                              },
                                              "end": {
                                                "line": 19,
                                                "column": 82
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          669,
                                          733
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 19,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 19,
                                            "column": 83
                                          }
                                        }
                                      },
                                      "range": [
                                        662,
                                        734
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 19,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 19,
                                          "column": 84
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    648,
                                    744
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 18,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 20,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  615,
                                  744
                                ],
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 20,
                                    "column": 9
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If delay is greater than 0, request as an async action.",
                                    "range": [
                                      548,
                                      606
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 66
                                      }
                                    }
                                  }
                                ],
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " Push the action to the end of the scheduler queue.",
                                    "range": [
                                      753,
                                      806
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 61
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "scheduler",
                                        "range": [
                                          815,
                                          824
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 22,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 22,
                                            "column": 17
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "actions",
                                        "range": [
                                          825,
                                          832
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 22,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 22,
                                            "column": 25
                                          }
                                        }
                                      },
                                      "range": [
                                        815,
                                        832
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 25
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "push",
                                      "range": [
                                        833,
                                        837
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 30
                                        }
                                      }
                                    },
                                    "range": [
                                      815,
                                      837
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 22,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 22,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "ThisExpression",
                                      "range": [
                                        838,
                                        842
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 35
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    815,
                                    843
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 22,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 22,
                                      "column": 36
                                    }
                                  }
                                },
                                "range": [
                                  815,
                                  844
                                ],
                                "loc": {
                                  "start": {
                                    "line": 22,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 22,
                                    "column": 37
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " Push the action to the end of the scheduler queue.",
                                    "range": [
                                      753,
                                      806
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 61
                                      }
                                    }
                                  }
                                ],
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If a microtask has already been scheduled, don't schedule another",
                                    "range": [
                                      853,
                                      921
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 23,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 23,
                                        "column": 76
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " one. If a microtask hasn't been scheduled yet, schedule one now. Return",
                                    "range": [
                                      930,
                                      1004
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 24,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 24,
                                        "column": 82
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " the current scheduled microtask id.",
                                    "range": [
                                      1013,
                                      1051
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 25,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 25,
                                        "column": 46
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "LogicalExpression",
                                  "operator": "||",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "scheduler",
                                      "range": [
                                        1067,
                                        1076
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 26,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 26,
                                          "column": 24
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "scheduled",
                                      "range": [
                                        1077,
                                        1086
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 26,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 26,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      1067,
                                      1086
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 26,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 26,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "scheduler",
                                        "range": [
                                          1091,
                                          1100
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 48
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "scheduled",
                                        "range": [
                                          1101,
                                          1110
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 58
                                          }
                                        }
                                      },
                                      "range": [
                                        1091,
                                        1110
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 26,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 26,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "Immediate",
                                          "range": [
                                            1113,
                                            1122
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 70
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "setImmediate",
                                          "range": [
                                            1123,
                                            1135
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 71
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 83
                                            }
                                          }
                                        },
                                        "range": [
                                          1113,
                                          1135
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 26,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 26,
                                            "column": 83
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "scheduler",
                                                "range": [
                                                  1136,
                                                  1145
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 26,
                                                    "column": 84
                                                  },
                                                  "end": {
                                                    "line": 26,
                                                    "column": 93
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "flush",
                                                "range": [
                                                  1146,
                                                  1151
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 26,
                                                    "column": 94
                                                  },
                                                  "end": {
                                                    "line": 26,
                                                    "column": 99
                                                  }
                                                }
                                              },
                                              "range": [
                                                1136,
                                                1151
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 84
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 99
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "bind",
                                              "range": [
                                                1152,
                                                1156
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 100
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 104
                                                }
                                              }
                                            },
                                            "range": [
                                              1136,
                                              1156
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 26,
                                                "column": 84
                                              },
                                              "end": {
                                                "line": 26,
                                                "column": 104
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "name": "scheduler",
                                              "range": [
                                                1157,
                                                1166
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 105
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 114
                                                }
                                              }
                                            },
                                            {
                                              "type": "Literal",
                                              "value": null,
                                              "raw": "null",
                                              "range": [
                                                1168,
                                                1172
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 116
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 120
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            1136,
                                            1173
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 121
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        1113,
                                        1174
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 26,
                                          "column": 61
                                        },
                                        "end": {
                                          "line": 26,
                                          "column": 122
                                        }
                                      }
                                    },
                                    "range": [
                                      1091,
                                      1174
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 26,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 26,
                                        "column": 122
                                      }
                                    }
                                  },
                                  "range": [
                                    1067,
                                    1175
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 26,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 26,
                                      "column": 123
                                    }
                                  }
                                },
                                "range": [
                                  1060,
                                  1176
                                ],
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 124
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If a microtask has already been scheduled, don't schedule another",
                                    "range": [
                                      853,
                                      921
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 23,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 23,
                                        "column": 76
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " one. If a microtask hasn't been scheduled yet, schedule one now. Return",
                                    "range": [
                                      930,
                                      1004
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 24,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 24,
                                        "column": 82
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " the current scheduled microtask id.",
                                    "range": [
                                      1013,
                                      1051
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 25,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 25,
                                        "column": 46
                                      }
                                    }
                                  }
                                ]
                              }
                            ],
                            "range": [
                              493,
                              1182
                            ],
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 74
                              },
                              "end": {
                                "line": 27,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            461,
                            1182
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 42
                            },
                            "end": {
                              "line": 27,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          423,
                          1182
                        ],
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 4
                          },
                          "end": {
                            "line": 27,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        423,
                        1183
                      ],
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 4
                        },
                        "end": {
                          "line": 27,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "AsapAction",
                              "range": [
                                1188,
                                1198
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 4
                                },
                                "end": {
                                  "line": 28,
                                  "column": 14
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "prototype",
                              "range": [
                                1199,
                                1208
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 15
                                },
                                "end": {
                                  "line": 28,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              1188,
                              1208
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 4
                              },
                              "end": {
                                "line": 28,
                                "column": 24
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "recycleAsyncId",
                            "range": [
                              1209,
                              1223
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 25
                              },
                              "end": {
                                "line": 28,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            1188,
                            1223
                          ],
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 4
                            },
                            "end": {
                              "line": 28,
                              "column": 39
                            }
                          }
                        },
                        "right": {
                          "type": "FunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "scheduler",
                              "range": [
                                1236,
                                1245
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 52
                                },
                                "end": {
                                  "line": 28,
                                  "column": 61
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "id",
                              "range": [
                                1247,
                                1249
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 63
                                },
                                "end": {
                                  "line": 28,
                                  "column": 65
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "delay",
                              "range": [
                                1251,
                                1256
                              ],
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 67
                                },
                                "end": {
                                  "line": 28,
                                  "column": 72
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "BinaryExpression",
                                  "operator": "===",
                                  "left": {
                                    "type": "Identifier",
                                    "name": "delay",
                                    "range": [
                                      1272,
                                      1277
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 17
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "UnaryExpression",
                                    "operator": "void",
                                    "argument": {
                                      "type": "Literal",
                                      "value": 0,
                                      "raw": "0",
                                      "range": [
                                        1287,
                                        1288
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "prefix": true,
                                    "range": [
                                      1282,
                                      1288
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 29,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 29,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "range": [
                                    1272,
                                    1288
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 28
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "name": "delay",
                                          "range": [
                                            1292,
                                            1297
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 29,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 29,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Literal",
                                          "value": 0,
                                          "raw": "0",
                                          "range": [
                                            1300,
                                            1301
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 29,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 29,
                                              "column": 41
                                            }
                                          }
                                        },
                                        "range": [
                                          1292,
                                          1301
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 29,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 29,
                                            "column": 41
                                          }
                                        }
                                      },
                                      "range": [
                                        1292,
                                        1302
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 29,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 29,
                                          "column": 42
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1290,
                                    1304
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 44
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  1268,
                                  1304
                                ],
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 44
                                  }
                                },
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If delay exists and is greater than 0, or if the delay is null (the",
                                    "range": [
                                      1313,
                                      1383
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 30,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 30,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " action wasn't rescheduled) but was originally scheduled as an async",
                                    "range": [
                                      1392,
                                      1462
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " action, then recycle as an async action.",
                                    "range": [
                                      1471,
                                      1514
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 32,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 32,
                                        "column": 51
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "LogicalExpression",
                                  "operator": "||",
                                  "left": {
                                    "type": "LogicalExpression",
                                    "operator": "&&",
                                    "left": {
                                      "type": "BinaryExpression",
                                      "operator": "!==",
                                      "left": {
                                        "type": "Identifier",
                                        "name": "delay",
                                        "range": [
                                          1528,
                                          1533
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 18
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Literal",
                                        "value": null,
                                        "raw": "null",
                                        "range": [
                                          1538,
                                          1542
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 27
                                          }
                                        }
                                      },
                                      "range": [
                                        1528,
                                        1542
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 33,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 33,
                                          "column": 27
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "operator": ">",
                                      "left": {
                                        "type": "Identifier",
                                        "name": "delay",
                                        "range": [
                                          1546,
                                          1551
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Literal",
                                        "value": 0,
                                        "raw": "0",
                                        "range": [
                                          1554,
                                          1555
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 40
                                          }
                                        }
                                      },
                                      "range": [
                                        1546,
                                        1555
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 33,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 33,
                                          "column": 40
                                        }
                                      }
                                    },
                                    "range": [
                                      1528,
                                      1555
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 33,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 33,
                                        "column": 40
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "LogicalExpression",
                                    "operator": "&&",
                                    "left": {
                                      "type": "BinaryExpression",
                                      "operator": "===",
                                      "left": {
                                        "type": "Identifier",
                                        "name": "delay",
                                        "range": [
                                          1561,
                                          1566
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 51
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Literal",
                                        "value": null,
                                        "raw": "null",
                                        "range": [
                                          1571,
                                          1575
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 60
                                          }
                                        }
                                      },
                                      "range": [
                                        1561,
                                        1575
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 33,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 33,
                                          "column": 60
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "operator": ">",
                                      "left": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            1579,
                                            1583
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 33,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 33,
                                              "column": 68
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "delay",
                                          "range": [
                                            1584,
                                            1589
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 33,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 33,
                                              "column": 74
                                            }
                                          }
                                        },
                                        "range": [
                                          1579,
                                          1589
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 74
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Literal",
                                        "value": 0,
                                        "raw": "0",
                                        "range": [
                                          1592,
                                          1593
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 33,
                                            "column": 77
                                          },
                                          "end": {
                                            "line": 33,
                                            "column": 78
                                          }
                                        }
                                      },
                                      "range": [
                                        1579,
                                        1593
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 33,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 33,
                                          "column": 78
                                        }
                                      }
                                    },
                                    "range": [
                                      1561,
                                      1593
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 33,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 33,
                                        "column": 78
                                      }
                                    }
                                  },
                                  "range": [
                                    1527,
                                    1594
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 79
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "_super",
                                                "range": [
                                                  1617,
                                                  1623
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 34,
                                                    "column": 19
                                                  },
                                                  "end": {
                                                    "line": 34,
                                                    "column": 25
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "prototype",
                                                "range": [
                                                  1624,
                                                  1633
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 34,
                                                    "column": 26
                                                  },
                                                  "end": {
                                                    "line": 34,
                                                    "column": 35
                                                  }
                                                }
                                              },
                                              "range": [
                                                1617,
                                                1633
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 34,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 34,
                                                  "column": 35
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "recycleAsyncId",
                                              "range": [
                                                1634,
                                                1648
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 34,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 34,
                                                  "column": 50
                                                }
                                              }
                                            },
                                            "range": [
                                              1617,
                                              1648
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 50
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "call",
                                            "range": [
                                              1649,
                                              1653
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 55
                                              }
                                            }
                                          },
                                          "range": [
                                            1617,
                                            1653
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 34,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 34,
                                              "column": 55
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "range": [
                                              1654,
                                              1658
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 60
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "scheduler",
                                            "range": [
                                              1660,
                                              1669
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 62
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 71
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "id",
                                            "range": [
                                              1671,
                                              1673
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 73
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 75
                                              }
                                            }
                                          },
                                          {
                                            "type": "Identifier",
                                            "name": "delay",
                                            "range": [
                                              1675,
                                              1680
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 77
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 82
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          1617,
                                          1681
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 34,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 34,
                                            "column": 83
                                          }
                                        }
                                      },
                                      "range": [
                                        1610,
                                        1682
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 84
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1596,
                                    1692
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 33,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  1523,
                                  1692
                                ],
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 9
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If delay exists and is greater than 0, or if the delay is null (the",
                                    "range": [
                                      1313,
                                      1383
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 30,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 30,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " action wasn't rescheduled) but was originally scheduled as an async",
                                    "range": [
                                      1392,
                                      1462
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " action, then recycle as an async action.",
                                    "range": [
                                      1471,
                                      1514
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 32,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 32,
                                        "column": 51
                                      }
                                    }
                                  }
                                ],
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If the scheduler queue is empty, cancel the requested microtask and",
                                    "range": [
                                      1701,
                                      1771
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 36,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 36,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " set the scheduled flag to undefined so the next AsapAction will schedule",
                                    "range": [
                                      1780,
                                      1855
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 37,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 37,
                                        "column": 83
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " its own.",
                                    "range": [
                                      1864,
                                      1875
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 19
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "IfStatement",
                                "test": {
                                  "type": "BinaryExpression",
                                  "operator": "===",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "scheduler",
                                        "range": [
                                          1888,
                                          1897
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 39,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 21
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "actions",
                                        "range": [
                                          1898,
                                          1905
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 39,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 39,
                                            "column": 29
                                          }
                                        }
                                      },
                                      "range": [
                                        1888,
                                        1905
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 39,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 39,
                                          "column": 29
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "length",
                                      "range": [
                                        1906,
                                        1912
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 39,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 39,
                                          "column": 36
                                        }
                                      }
                                    },
                                    "range": [
                                      1888,
                                      1912
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 36
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": 0,
                                    "raw": "0",
                                    "range": [
                                      1917,
                                      1918
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 42
                                      }
                                    }
                                  },
                                  "range": [
                                    1888,
                                    1918
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 42
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "Immediate",
                                            "range": [
                                              1934,
                                              1943
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 40,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 40,
                                                "column": 21
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "clearImmediate",
                                            "range": [
                                              1944,
                                              1958
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 40,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 40,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            1934,
                                            1958
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 40,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 40,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "id",
                                            "range": [
                                              1959,
                                              1961
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 40,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 40,
                                                "column": 39
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          1934,
                                          1962
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 40,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 40,
                                            "column": 40
                                          }
                                        }
                                      },
                                      "range": [
                                        1934,
                                        1963
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 40,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 40,
                                          "column": 41
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "scheduler",
                                            "range": [
                                              1976,
                                              1985
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 21
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "scheduled",
                                            "range": [
                                              1986,
                                              1995
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 41,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 41,
                                                "column": 31
                                              }
                                            }
                                          },
                                          "range": [
                                            1976,
                                            1995
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 31
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "name": "undefined",
                                          "range": [
                                            1998,
                                            2007
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 41,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 41,
                                              "column": 43
                                            }
                                          }
                                        },
                                        "range": [
                                          1976,
                                          2007
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 41,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 41,
                                            "column": 43
                                          }
                                        }
                                      },
                                      "range": [
                                        1976,
                                        2008
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 41,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 41,
                                          "column": 44
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1920,
                                    2018
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": null,
                                "range": [
                                  1884,
                                  2018
                                ],
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 9
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " If the scheduler queue is empty, cancel the requested microtask and",
                                    "range": [
                                      1701,
                                      1771
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 36,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 36,
                                        "column": 78
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " set the scheduled flag to undefined so the next AsapAction will schedule",
                                    "range": [
                                      1780,
                                      1855
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 37,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 37,
                                        "column": 83
                                      }
                                    }
                                  },
                                  {
                                    "type": "Line",
                                    "value": " its own.",
                                    "range": [
                                      1864,
                                      1875
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 19
                                      }
                                    }
                                  }
                                ],
                                "trailingComments": [
                                  {
                                    "type": "Line",
                                    "value": " Return undefined so the action knows to request a new async id if it's rescheduled.",
                                    "range": [
                                      2027,
                                      2113
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 43,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 43,
                                        "column": 94
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "Identifier",
                                  "name": "undefined",
                                  "range": [
                                    2129,
                                    2138
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 44,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 44,
                                      "column": 24
                                    }
                                  }
                                },
                                "range": [
                                  2122,
                                  2139
                                ],
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 25
                                  }
                                },
                                "leadingComments": [
                                  {
                                    "type": "Line",
                                    "value": " Return undefined so the action knows to request a new async id if it's rescheduled.",
                                    "range": [
                                      2027,
                                      2113
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 43,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 43,
                                        "column": 94
                                      }
                                    }
                                  }
                                ]
                              }
                            ],
                            "range": [
                              1258,
                              2145
                            ],
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 74
                              },
                              "end": {
                                "line": 45,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            1226,
                            2145
                          ],
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 42
                            },
                            "end": {
                              "line": 45,
                              "column": 5
                            }
                          }
                        },
                        "range": [
                          1188,
                          2145
                        ],
                        "loc": {
                          "start": {
                            "line": 28,
                            "column": 4
                          },
                          "end": {
                            "line": 45,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        1188,
                        2146
                      ],
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 4
                        },
                        "end": {
                          "line": 45,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "AsapAction",
                        "range": [
                          2158,
                          2168
                        ],
                        "loc": {
                          "start": {
                            "line": 46,
                            "column": 11
                          },
                          "end": {
                            "line": 46,
                            "column": 21
                          }
                        }
                      },
                      "range": [
                        2151,
                        2169
                      ],
                      "loc": {
                        "start": {
                          "line": 46,
                          "column": 4
                        },
                        "end": {
                          "line": 46,
                          "column": 22
                        }
                      }
                    }
                  ],
                  "range": [
                    227,
                    2171
                  ],
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 43
                    },
                    "end": {
                      "line": 47,
                      "column": 1
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  209,
                  2171
                ],
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 25
                  },
                  "end": {
                    "line": 47,
                    "column": 1
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "AsyncAction",
                  "range": [
                    2172,
                    2183
                  ],
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 2
                    },
                    "end": {
                      "line": 47,
                      "column": 13
                    }
                  }
                }
              ],
              "range": [
                209,
                2184
              ],
              "loc": {
                "start": {
                  "line": 8,
                  "column": 25
                },
                "end": {
                  "line": 47,
                  "column": 14
                }
              }
            },
            "range": [
              195,
              2185
            ],
            "loc": {
              "start": {
                "line": 8,
                "column": 11
              },
              "end": {
                "line": 47,
                "column": 15
              }
            }
          }
        ],
        "kind": "var",
        "range": [
          191,
          2186
        ],
        "loc": {
          "start": {
            "line": 8,
            "column": 7
          },
          "end": {
            "line": 47,
            "column": 16
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
            "range": [
              92,
              183
            ],
            "loc": {
              "start": {
                "line": 3,
                "column": 0
              },
              "end": {
                "line": 7,
                "column": 3
              }
            }
          }
        ],
        "trailingComments": [
          {
            "type": "Line",
            "value": "# sourceMappingURL=AsapAction.js.map",
            "range": [
              2187,
              2225
            ],
            "loc": {
              "start": {
                "line": 48,
                "column": 0
              },
              "end": {
                "line": 48,
                "column": 38
              }
            }
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "range": [
        184,
        2186
      ],
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 47,
          "column": 16
        }
      },
      "leadingComments": [
        {
          "type": "Block",
          "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
          "range": [
            92,
            183
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 0
            },
            "end": {
              "line": 7,
              "column": 3
            }
          }
        }
      ],
      "trailingComments": [
        {
          "type": "Line",
          "value": "# sourceMappingURL=AsapAction.js.map",
          "range": [
            2187,
            2225
          ],
          "loc": {
            "start": {
              "line": 48,
              "column": 0
            },
            "end": {
              "line": 48,
              "column": 38
            }
          }
        }
      ]
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    2186
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 47,
      "column": 16
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * We need this JSDoc comment for affecting ESDoc.\n * @ignore\n * @extends {Ignored}\n ",
      "range": [
        92,
        183
      ],
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 3
        }
      }
    },
    {
      "type": "Line",
      "value": " If delay is greater than 0, request as an async action.",
      "range": [
        548,
        606
      ],
      "loc": {
        "start": {
          "line": 17,
          "column": 8
        },
        "end": {
          "line": 17,
          "column": 66
        }
      }
    },
    {
      "type": "Line",
      "value": " Push the action to the end of the scheduler queue.",
      "range": [
        753,
        806
      ],
      "loc": {
        "start": {
          "line": 21,
          "column": 8
        },
        "end": {
          "line": 21,
          "column": 61
        }
      }
    },
    {
      "type": "Line",
      "value": " If a microtask has already been scheduled, don't schedule another",
      "range": [
        853,
        921
      ],
      "loc": {
        "start": {
          "line": 23,
          "column": 8
        },
        "end": {
          "line": 23,
          "column": 76
        }
      }
    },
    {
      "type": "Line",
      "value": " one. If a microtask hasn't been scheduled yet, schedule one now. Return",
      "range": [
        930,
        1004
      ],
      "loc": {
        "start": {
          "line": 24,
          "column": 8
        },
        "end": {
          "line": 24,
          "column": 82
        }
      }
    },
    {
      "type": "Line",
      "value": " the current scheduled microtask id.",
      "range": [
        1013,
        1051
      ],
      "loc": {
        "start": {
          "line": 25,
          "column": 8
        },
        "end": {
          "line": 25,
          "column": 46
        }
      }
    },
    {
      "type": "Line",
      "value": " If delay exists and is greater than 0, or if the delay is null (the",
      "range": [
        1313,
        1383
      ],
      "loc": {
        "start": {
          "line": 30,
          "column": 8
        },
        "end": {
          "line": 30,
          "column": 78
        }
      }
    },
    {
      "type": "Line",
      "value": " action wasn't rescheduled) but was originally scheduled as an async",
      "range": [
        1392,
        1462
      ],
      "loc": {
        "start": {
          "line": 31,
          "column": 8
        },
        "end": {
          "line": 31,
          "column": 78
        }
      }
    },
    {
      "type": "Line",
      "value": " action, then recycle as an async action.",
      "range": [
        1471,
        1514
      ],
      "loc": {
        "start": {
          "line": 32,
          "column": 8
        },
        "end": {
          "line": 32,
          "column": 51
        }
      }
    },
    {
      "type": "Line",
      "value": " If the scheduler queue is empty, cancel the requested microtask and",
      "range": [
        1701,
        1771
      ],
      "loc": {
        "start": {
          "line": 36,
          "column": 8
        },
        "end": {
          "line": 36,
          "column": 78
        }
      }
    },
    {
      "type": "Line",
      "value": " set the scheduled flag to undefined so the next AsapAction will schedule",
      "range": [
        1780,
        1855
      ],
      "loc": {
        "start": {
          "line": 37,
          "column": 8
        },
        "end": {
          "line": 37,
          "column": 83
        }
      }
    },
    {
      "type": "Line",
      "value": " its own.",
      "range": [
        1864,
        1875
      ],
      "loc": {
        "start": {
          "line": 38,
          "column": 8
        },
        "end": {
          "line": 38,
          "column": 19
        }
      }
    },
    {
      "type": "Line",
      "value": " Return undefined so the action knows to request a new async id if it's rescheduled.",
      "range": [
        2027,
        2113
      ],
      "loc": {
        "start": {
          "line": 43,
          "column": 8
        },
        "end": {
          "line": 43,
          "column": 94
        }
      }
    },
    {
      "type": "Line",
      "value": "# sourceMappingURL=AsapAction.js.map",
      "range": [
        2187,
        2225
      ],
      "loc": {
        "start": {
          "line": 48,
          "column": 0
        },
        "end": {
          "line": 48,
          "column": 38
        }
      }
    }
  ]
}