{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "local": {
            "type": "Identifier",
            "name": "root",
            "range": [
              9,
              13
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 13
              }
            }
          },
          "imported": {
            "type": "Identifier",
            "name": "root",
            "range": [
              9,
              13
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 13
              }
            }
          },
          "range": [
            9,
            13
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 9
            },
            "end": {
              "line": 1,
              "column": 13
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./root",
        "raw": "'./root'",
        "range": [
          21,
          29
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 21
          },
          "end": {
            "line": 1,
            "column": 29
          }
        }
      },
      "range": [
        0,
        30
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 30
        }
      }
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "VariableDeclaration",
        "declarations": [
          {
            "type": "VariableDeclarator",
            "id": {
              "type": "Identifier",
              "name": "RequestAnimationFrameDefinition",
              "range": [
                42,
                73
              ],
              "loc": {
                "start": {
                  "line": 2,
                  "column": 11
                },
                "end": {
                  "line": 2,
                  "column": 42
                }
              }
            },
            "init": {
              "type": "CallExpression",
              "callee": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "FunctionDeclaration",
                      "id": {
                        "type": "Identifier",
                        "name": "RequestAnimationFrameDefinition",
                        "range": [
                          104,
                          135
                        ],
                        "loc": {
                          "start": {
                            "line": 3,
                            "column": 13
                          },
                          "end": {
                            "line": 3,
                            "column": 44
                          }
                        }
                      },
                      "params": [
                        {
                          "type": "Identifier",
                          "name": "root",
                          "range": [
                            136,
                            140
                          ],
                          "loc": {
                            "start": {
                              "line": 3,
                              "column": 45
                            },
                            "end": {
                              "line": 3,
                              "column": 49
                            }
                          }
                        }
                      ],
                      "body": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "IfStatement",
                            "test": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "root",
                                "range": [
                                  156,
                                  160
                                ],
                                "loc": {
                                  "start": {
                                    "line": 4,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 4,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "requestAnimationFrame",
                                "range": [
                                  161,
                                  182
                                ],
                                "loc": {
                                  "start": {
                                    "line": 4,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 4,
                                    "column": 38
                                  }
                                }
                              },
                              "range": [
                                156,
                                182
                              ],
                              "loc": {
                                "start": {
                                  "line": 4,
                                  "column": 12
                                },
                                "end": {
                                  "line": 4,
                                  "column": 38
                                }
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          198,
                                          202
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 5,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 5,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "cancelAnimationFrame",
                                        "range": [
                                          203,
                                          223
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 5,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 5,
                                            "column": 37
                                          }
                                        }
                                      },
                                      "range": [
                                        198,
                                        223
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 5,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 5,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "root",
                                            "range": [
                                              226,
                                              230
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 5,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 5,
                                                "column": 44
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "cancelAnimationFrame",
                                            "range": [
                                              231,
                                              251
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 5,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 5,
                                                "column": 65
                                              }
                                            }
                                          },
                                          "range": [
                                            226,
                                            251
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 5,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 5,
                                              "column": 65
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "bind",
                                          "range": [
                                            252,
                                            256
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 5,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 5,
                                              "column": 70
                                            }
                                          }
                                        },
                                        "range": [
                                          226,
                                          256
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 5,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 5,
                                            "column": 70
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "root",
                                          "range": [
                                            257,
                                            261
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 5,
                                              "column": 71
                                            },
                                            "end": {
                                              "line": 5,
                                              "column": 75
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        226,
                                        262
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 5,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 5,
                                          "column": 76
                                        }
                                      }
                                    },
                                    "range": [
                                      198,
                                      262
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 5,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 5,
                                        "column": 76
                                      }
                                    }
                                  },
                                  "range": [
                                    198,
                                    263
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 5,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 5,
                                      "column": 77
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          276,
                                          280
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 6,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 6,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "requestAnimationFrame",
                                        "range": [
                                          281,
                                          302
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 6,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 6,
                                            "column": 38
                                          }
                                        }
                                      },
                                      "range": [
                                        276,
                                        302
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 6,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 6,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "root",
                                            "range": [
                                              305,
                                              309
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 6,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 6,
                                                "column": 45
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "requestAnimationFrame",
                                            "range": [
                                              310,
                                              331
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 6,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 6,
                                                "column": 67
                                              }
                                            }
                                          },
                                          "range": [
                                            305,
                                            331
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 6,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 6,
                                              "column": 67
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "bind",
                                          "range": [
                                            332,
                                            336
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 6,
                                              "column": 68
                                            },
                                            "end": {
                                              "line": 6,
                                              "column": 72
                                            }
                                          }
                                        },
                                        "range": [
                                          305,
                                          336
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 6,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 6,
                                            "column": 72
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "root",
                                          "range": [
                                            337,
                                            341
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 6,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 6,
                                              "column": 77
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        305,
                                        342
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 6,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 6,
                                          "column": 78
                                        }
                                      }
                                    },
                                    "range": [
                                      276,
                                      342
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 6,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 6,
                                        "column": 78
                                      }
                                    }
                                  },
                                  "range": [
                                    276,
                                    343
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 6,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 6,
                                      "column": 79
                                    }
                                  }
                                }
                              ],
                              "range": [
                                184,
                                353
                              ],
                              "loc": {
                                "start": {
                                  "line": 4,
                                  "column": 40
                                },
                                "end": {
                                  "line": 7,
                                  "column": 9
                                }
                              }
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "test": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "root",
                                  "range": [
                                    371,
                                    375
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 8,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 8,
                                      "column": 21
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "mozRequestAnimationFrame",
                                  "range": [
                                    376,
                                    400
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 8,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 8,
                                      "column": 46
                                    }
                                  }
                                },
                                "range": [
                                  371,
                                  400
                                ],
                                "loc": {
                                  "start": {
                                    "line": 8,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 8,
                                    "column": 46
                                  }
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "operator": "=",
                                      "left": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            416,
                                            420
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 9,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 9,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "cancelAnimationFrame",
                                          "range": [
                                            421,
                                            441
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 9,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 9,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "range": [
                                          416,
                                          441
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 9,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 9,
                                            "column": 37
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "root",
                                              "range": [
                                                444,
                                                448
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 9,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 9,
                                                  "column": 44
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "mozCancelAnimationFrame",
                                              "range": [
                                                449,
                                                472
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 9,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 9,
                                                  "column": 68
                                                }
                                              }
                                            },
                                            "range": [
                                              444,
                                              472
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 9,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 9,
                                                "column": 68
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "bind",
                                            "range": [
                                              473,
                                              477
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 9,
                                                "column": 69
                                              },
                                              "end": {
                                                "line": 9,
                                                "column": 73
                                              }
                                            }
                                          },
                                          "range": [
                                            444,
                                            477
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 9,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 9,
                                              "column": 73
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "root",
                                            "range": [
                                              478,
                                              482
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 9,
                                                "column": 74
                                              },
                                              "end": {
                                                "line": 9,
                                                "column": 78
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          444,
                                          483
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 9,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 9,
                                            "column": 79
                                          }
                                        }
                                      },
                                      "range": [
                                        416,
                                        483
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 9,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 9,
                                          "column": 79
                                        }
                                      }
                                    },
                                    "range": [
                                      416,
                                      484
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 9,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 9,
                                        "column": 80
                                      }
                                    }
                                  },
                                  {
                                    "type": "ExpressionStatement",
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "operator": "=",
                                      "left": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            497,
                                            501
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "requestAnimationFrame",
                                          "range": [
                                            502,
                                            523
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 38
                                            }
                                          }
                                        },
                                        "range": [
                                          497,
                                          523
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 38
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "root",
                                              "range": [
                                                526,
                                                530
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 10,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 10,
                                                  "column": 45
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "mozRequestAnimationFrame",
                                              "range": [
                                                531,
                                                555
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 10,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 10,
                                                  "column": 70
                                                }
                                              }
                                            },
                                            "range": [
                                              526,
                                              555
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 10,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 10,
                                                "column": 70
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "bind",
                                            "range": [
                                              556,
                                              560
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 10,
                                                "column": 71
                                              },
                                              "end": {
                                                "line": 10,
                                                "column": 75
                                              }
                                            }
                                          },
                                          "range": [
                                            526,
                                            560
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 10,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 10,
                                              "column": 75
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "root",
                                            "range": [
                                              561,
                                              565
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 10,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 10,
                                                "column": 80
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          526,
                                          566
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 10,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 10,
                                            "column": 81
                                          }
                                        }
                                      },
                                      "range": [
                                        497,
                                        566
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 10,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 10,
                                          "column": 81
                                        }
                                      }
                                    },
                                    "range": [
                                      497,
                                      567
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 10,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 10,
                                        "column": 82
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  402,
                                  577
                                ],
                                "loc": {
                                  "start": {
                                    "line": 8,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 11,
                                    "column": 9
                                  }
                                }
                              },
                              "alternate": {
                                "type": "IfStatement",
                                "test": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "Identifier",
                                    "name": "root",
                                    "range": [
                                      595,
                                      599
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 12,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 12,
                                        "column": 21
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "webkitRequestAnimationFrame",
                                    "range": [
                                      600,
                                      627
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 12,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 12,
                                        "column": 49
                                      }
                                    }
                                  },
                                  "range": [
                                    595,
                                    627
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 12,
                                      "column": 49
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "ThisExpression",
                                            "range": [
                                              643,
                                              647
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 13,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 13,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "cancelAnimationFrame",
                                            "range": [
                                              648,
                                              668
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 13,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 13,
                                                "column": 37
                                              }
                                            }
                                          },
                                          "range": [
                                            643,
                                            668
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 13,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 13,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "root",
                                                "range": [
                                                  671,
                                                  675
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 13,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 13,
                                                    "column": 44
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "webkitCancelAnimationFrame",
                                                "range": [
                                                  676,
                                                  702
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 13,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 13,
                                                    "column": 71
                                                  }
                                                }
                                              },
                                              "range": [
                                                671,
                                                702
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 13,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 13,
                                                  "column": 71
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "bind",
                                              "range": [
                                                703,
                                                707
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 13,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 13,
                                                  "column": 76
                                                }
                                              }
                                            },
                                            "range": [
                                              671,
                                              707
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 13,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 13,
                                                "column": 76
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "name": "root",
                                              "range": [
                                                708,
                                                712
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 13,
                                                  "column": 77
                                                },
                                                "end": {
                                                  "line": 13,
                                                  "column": 81
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            671,
                                            713
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 13,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 13,
                                              "column": 82
                                            }
                                          }
                                        },
                                        "range": [
                                          643,
                                          713
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 13,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 13,
                                            "column": 82
                                          }
                                        }
                                      },
                                      "range": [
                                        643,
                                        714
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 13,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 13,
                                          "column": 83
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "ThisExpression",
                                            "range": [
                                              727,
                                              731
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 14,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 14,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "requestAnimationFrame",
                                            "range": [
                                              732,
                                              753
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 14,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 14,
                                                "column": 38
                                              }
                                            }
                                          },
                                          "range": [
                                            727,
                                            753
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 14,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 14,
                                              "column": 38
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "callee": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "root",
                                                "range": [
                                                  756,
                                                  760
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 14,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 14,
                                                    "column": 45
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "webkitRequestAnimationFrame",
                                                "range": [
                                                  761,
                                                  788
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 14,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 14,
                                                    "column": 73
                                                  }
                                                }
                                              },
                                              "range": [
                                                756,
                                                788
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 14,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 14,
                                                  "column": 73
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "bind",
                                              "range": [
                                                789,
                                                793
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 14,
                                                  "column": 74
                                                },
                                                "end": {
                                                  "line": 14,
                                                  "column": 78
                                                }
                                              }
                                            },
                                            "range": [
                                              756,
                                              793
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 14,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 14,
                                                "column": 78
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "name": "root",
                                              "range": [
                                                794,
                                                798
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 14,
                                                  "column": 79
                                                },
                                                "end": {
                                                  "line": 14,
                                                  "column": 83
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            756,
                                            799
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 14,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 14,
                                              "column": 84
                                            }
                                          }
                                        },
                                        "range": [
                                          727,
                                          799
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 14,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 14,
                                            "column": 84
                                          }
                                        }
                                      },
                                      "range": [
                                        727,
                                        800
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 14,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 14,
                                          "column": 85
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    629,
                                    810
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 12,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 15,
                                      "column": 9
                                    }
                                  }
                                },
                                "alternate": {
                                  "type": "IfStatement",
                                  "test": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "root",
                                      "range": [
                                        828,
                                        832
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 21
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "msRequestAnimationFrame",
                                      "range": [
                                        833,
                                        856
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 16,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 16,
                                          "column": 45
                                        }
                                      }
                                    },
                                    "range": [
                                      828,
                                      856
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 16,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "ThisExpression",
                                              "range": [
                                                872,
                                                876
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 17,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 17,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "cancelAnimationFrame",
                                              "range": [
                                                877,
                                                897
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 17,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 17,
                                                  "column": 37
                                                }
                                              }
                                            },
                                            "range": [
                                              872,
                                              897
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 17,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 17,
                                                "column": 37
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "Identifier",
                                                  "name": "root",
                                                  "range": [
                                                    900,
                                                    904
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 17,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 17,
                                                      "column": 44
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "msCancelAnimationFrame",
                                                  "range": [
                                                    905,
                                                    927
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 17,
                                                      "column": 45
                                                    },
                                                    "end": {
                                                      "line": 17,
                                                      "column": 67
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  900,
                                                  927
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 17,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 17,
                                                    "column": 67
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "bind",
                                                "range": [
                                                  928,
                                                  932
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 17,
                                                    "column": 68
                                                  },
                                                  "end": {
                                                    "line": 17,
                                                    "column": 72
                                                  }
                                                }
                                              },
                                              "range": [
                                                900,
                                                932
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 17,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 17,
                                                  "column": 72
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "name": "root",
                                                "range": [
                                                  933,
                                                  937
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 17,
                                                    "column": 73
                                                  },
                                                  "end": {
                                                    "line": 17,
                                                    "column": 77
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              900,
                                              938
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 17,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 17,
                                                "column": 78
                                              }
                                            }
                                          },
                                          "range": [
                                            872,
                                            938
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 17,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 17,
                                              "column": 78
                                            }
                                          }
                                        },
                                        "range": [
                                          872,
                                          939
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 17,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 17,
                                            "column": 79
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "ThisExpression",
                                              "range": [
                                                952,
                                                956
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 18,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 18,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "requestAnimationFrame",
                                              "range": [
                                                957,
                                                978
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 18,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 18,
                                                  "column": 38
                                                }
                                              }
                                            },
                                            "range": [
                                              952,
                                              978
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 18,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 18,
                                                "column": 38
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "callee": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "Identifier",
                                                  "name": "root",
                                                  "range": [
                                                    981,
                                                    985
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 18,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 18,
                                                      "column": 45
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "msRequestAnimationFrame",
                                                  "range": [
                                                    986,
                                                    1009
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 18,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 18,
                                                      "column": 69
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  981,
                                                  1009
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 18,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 18,
                                                    "column": 69
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "bind",
                                                "range": [
                                                  1010,
                                                  1014
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 18,
                                                    "column": 70
                                                  },
                                                  "end": {
                                                    "line": 18,
                                                    "column": 74
                                                  }
                                                }
                                              },
                                              "range": [
                                                981,
                                                1014
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 18,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 18,
                                                  "column": 74
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "name": "root",
                                                "range": [
                                                  1015,
                                                  1019
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 18,
                                                    "column": 75
                                                  },
                                                  "end": {
                                                    "line": 18,
                                                    "column": 79
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              981,
                                              1020
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 18,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 18,
                                                "column": 80
                                              }
                                            }
                                          },
                                          "range": [
                                            952,
                                            1020
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 18,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 18,
                                              "column": 80
                                            }
                                          }
                                        },
                                        "range": [
                                          952,
                                          1021
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 18,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 18,
                                            "column": 81
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      858,
                                      1031
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 16,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 19,
                                        "column": 9
                                      }
                                    }
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "test": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "root",
                                        "range": [
                                          1049,
                                          1053
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 20,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 20,
                                            "column": 21
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "oRequestAnimationFrame",
                                        "range": [
                                          1054,
                                          1076
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 20,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 20,
                                            "column": 44
                                          }
                                        }
                                      },
                                      "range": [
                                        1049,
                                        1076
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 20,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 20,
                                          "column": 44
                                        }
                                      }
                                    },
                                    "consequent": {
                                      "type": "BlockStatement",
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  1092,
                                                  1096
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 21,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 21,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "cancelAnimationFrame",
                                                "range": [
                                                  1097,
                                                  1117
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 21,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 21,
                                                    "column": 37
                                                  }
                                                }
                                              },
                                              "range": [
                                                1092,
                                                1117
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 21,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 21,
                                                  "column": 37
                                                }
                                              }
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "callee": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "computed": false,
                                                  "object": {
                                                    "type": "Identifier",
                                                    "name": "root",
                                                    "range": [
                                                      1120,
                                                      1124
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 21,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 21,
                                                        "column": 44
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "name": "oCancelAnimationFrame",
                                                    "range": [
                                                      1125,
                                                      1146
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 21,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 21,
                                                        "column": 66
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    1120,
                                                    1146
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 21,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 21,
                                                      "column": 66
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "bind",
                                                  "range": [
                                                    1147,
                                                    1151
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 21,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 21,
                                                      "column": 71
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1120,
                                                  1151
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 21,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 21,
                                                    "column": 71
                                                  }
                                                }
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "name": "root",
                                                  "range": [
                                                    1152,
                                                    1156
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 21,
                                                      "column": 72
                                                    },
                                                    "end": {
                                                      "line": 21,
                                                      "column": 76
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                1120,
                                                1157
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 21,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 21,
                                                  "column": 77
                                                }
                                              }
                                            },
                                            "range": [
                                              1092,
                                              1157
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 21,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 21,
                                                "column": 77
                                              }
                                            }
                                          },
                                          "range": [
                                            1092,
                                            1158
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 21,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 21,
                                              "column": 78
                                            }
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  1171,
                                                  1175
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 22,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 22,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "requestAnimationFrame",
                                                "range": [
                                                  1176,
                                                  1197
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 22,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 22,
                                                    "column": 38
                                                  }
                                                }
                                              },
                                              "range": [
                                                1171,
                                                1197
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 22,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 22,
                                                  "column": 38
                                                }
                                              }
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "callee": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "computed": false,
                                                  "object": {
                                                    "type": "Identifier",
                                                    "name": "root",
                                                    "range": [
                                                      1200,
                                                      1204
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 22,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 22,
                                                        "column": 45
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "name": "oRequestAnimationFrame",
                                                    "range": [
                                                      1205,
                                                      1227
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 22,
                                                        "column": 46
                                                      },
                                                      "end": {
                                                        "line": 22,
                                                        "column": 68
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    1200,
                                                    1227
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 22,
                                                      "column": 41
                                                    },
                                                    "end": {
                                                      "line": 22,
                                                      "column": 68
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "bind",
                                                  "range": [
                                                    1228,
                                                    1232
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 22,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 22,
                                                      "column": 73
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1200,
                                                  1232
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 22,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 22,
                                                    "column": 73
                                                  }
                                                }
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "name": "root",
                                                  "range": [
                                                    1233,
                                                    1237
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 22,
                                                      "column": 74
                                                    },
                                                    "end": {
                                                      "line": 22,
                                                      "column": 78
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                1200,
                                                1238
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 22,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 22,
                                                  "column": 79
                                                }
                                              }
                                            },
                                            "range": [
                                              1171,
                                              1238
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 22,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 22,
                                                "column": 79
                                              }
                                            }
                                          },
                                          "range": [
                                            1171,
                                            1239
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 22,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 22,
                                              "column": 80
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        1078,
                                        1249
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 20,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 23,
                                          "column": 9
                                        }
                                      }
                                    },
                                    "alternate": {
                                      "type": "BlockStatement",
                                      "body": [
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  1277,
                                                  1281
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 25,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 25,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "cancelAnimationFrame",
                                                "range": [
                                                  1282,
                                                  1302
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 25,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 25,
                                                    "column": 37
                                                  }
                                                }
                                              },
                                              "range": [
                                                1277,
                                                1302
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 25,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 25,
                                                  "column": 37
                                                }
                                              }
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "callee": {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "computed": false,
                                                  "object": {
                                                    "type": "Identifier",
                                                    "name": "root",
                                                    "range": [
                                                      1305,
                                                      1309
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 25,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 25,
                                                        "column": 44
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "name": "clearTimeout",
                                                    "range": [
                                                      1310,
                                                      1322
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 25,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 25,
                                                        "column": 57
                                                      }
                                                    }
                                                  },
                                                  "range": [
                                                    1305,
                                                    1322
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 25,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 25,
                                                      "column": 57
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "bind",
                                                  "range": [
                                                    1323,
                                                    1327
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 25,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 25,
                                                      "column": 62
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  1305,
                                                  1327
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 25,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 25,
                                                    "column": 62
                                                  }
                                                }
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "name": "root",
                                                  "range": [
                                                    1328,
                                                    1332
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 25,
                                                      "column": 63
                                                    },
                                                    "end": {
                                                      "line": 25,
                                                      "column": 67
                                                    }
                                                  }
                                                }
                                              ],
                                              "range": [
                                                1305,
                                                1333
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 25,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 25,
                                                  "column": 68
                                                }
                                              }
                                            },
                                            "range": [
                                              1277,
                                              1333
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 25,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 25,
                                                "column": 68
                                              }
                                            }
                                          },
                                          "range": [
                                            1277,
                                            1334
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 25,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 25,
                                              "column": 69
                                            }
                                          }
                                        },
                                        {
                                          "type": "ExpressionStatement",
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "operator": "=",
                                            "left": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "ThisExpression",
                                                "range": [
                                                  1347,
                                                  1351
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 26,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 26,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "requestAnimationFrame",
                                                "range": [
                                                  1352,
                                                  1373
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 26,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 26,
                                                    "column": 38
                                                  }
                                                }
                                              },
                                              "range": [
                                                1347,
                                                1373
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 38
                                                }
                                              }
                                            },
                                            "right": {
                                              "type": "FunctionExpression",
                                              "id": null,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "name": "cb",
                                                  "range": [
                                                    1386,
                                                    1388
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 26,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 26,
                                                      "column": 53
                                                    }
                                                  }
                                                }
                                              ],
                                              "body": {
                                                "type": "BlockStatement",
                                                "body": [
                                                  {
                                                    "type": "ReturnStatement",
                                                    "argument": {
                                                      "type": "CallExpression",
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "computed": false,
                                                        "object": {
                                                          "type": "Identifier",
                                                          "name": "root",
                                                          "range": [
                                                            1399,
                                                            1403
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 26,
                                                              "column": 64
                                                            },
                                                            "end": {
                                                              "line": 26,
                                                              "column": 68
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "name": "setTimeout",
                                                          "range": [
                                                            1404,
                                                            1414
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 26,
                                                              "column": 69
                                                            },
                                                            "end": {
                                                              "line": 26,
                                                              "column": 79
                                                            }
                                                          }
                                                        },
                                                        "range": [
                                                          1399,
                                                          1414
                                                        ],
                                                        "loc": {
                                                          "start": {
                                                            "line": 26,
                                                            "column": 64
                                                          },
                                                          "end": {
                                                            "line": 26,
                                                            "column": 79
                                                          }
                                                        }
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "name": "cb",
                                                          "range": [
                                                            1415,
                                                            1417
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 26,
                                                              "column": 80
                                                            },
                                                            "end": {
                                                              "line": 26,
                                                              "column": 82
                                                            }
                                                          }
                                                        },
                                                        {
                                                          "type": "BinaryExpression",
                                                          "operator": "/",
                                                          "left": {
                                                            "type": "Literal",
                                                            "value": 1000,
                                                            "raw": "1000",
                                                            "range": [
                                                              1419,
                                                              1423
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 26,
                                                                "column": 84
                                                              },
                                                              "end": {
                                                                "line": 26,
                                                                "column": 88
                                                              }
                                                            }
                                                          },
                                                          "right": {
                                                            "type": "Literal",
                                                            "value": 60,
                                                            "raw": "60",
                                                            "range": [
                                                              1426,
                                                              1428
                                                            ],
                                                            "loc": {
                                                              "start": {
                                                                "line": 26,
                                                                "column": 91
                                                              },
                                                              "end": {
                                                                "line": 26,
                                                                "column": 93
                                                              }
                                                            }
                                                          },
                                                          "range": [
                                                            1419,
                                                            1428
                                                          ],
                                                          "loc": {
                                                            "start": {
                                                              "line": 26,
                                                              "column": 84
                                                            },
                                                            "end": {
                                                              "line": 26,
                                                              "column": 93
                                                            }
                                                          }
                                                        }
                                                      ],
                                                      "range": [
                                                        1399,
                                                        1429
                                                      ],
                                                      "loc": {
                                                        "start": {
                                                          "line": 26,
                                                          "column": 64
                                                        },
                                                        "end": {
                                                          "line": 26,
                                                          "column": 94
                                                        }
                                                      }
                                                    },
                                                    "range": [
                                                      1392,
                                                      1430
                                                    ],
                                                    "loc": {
                                                      "start": {
                                                        "line": 26,
                                                        "column": 57
                                                      },
                                                      "end": {
                                                        "line": 26,
                                                        "column": 95
                                                      }
                                                    }
                                                  }
                                                ],
                                                "range": [
                                                  1390,
                                                  1432
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 26,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 26,
                                                    "column": 97
                                                  }
                                                }
                                              },
                                              "generator": false,
                                              "expression": false,
                                              "range": [
                                                1376,
                                                1432
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 26,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 26,
                                                  "column": 97
                                                }
                                              }
                                            },
                                            "range": [
                                              1347,
                                              1432
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 26,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 26,
                                                "column": 97
                                              }
                                            }
                                          },
                                          "range": [
                                            1347,
                                            1433
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 26,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 26,
                                              "column": 98
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        1263,
                                        1443
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 24,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 27,
                                          "column": 9
                                        }
                                      }
                                    },
                                    "range": [
                                      1045,
                                      1443
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 20,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 27,
                                        "column": 9
                                      }
                                    }
                                  },
                                  "range": [
                                    824,
                                    1443
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 16,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 9
                                    }
                                  }
                                },
                                "range": [
                                  591,
                                  1443
                                ],
                                "loc": {
                                  "start": {
                                    "line": 12,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 9
                                  }
                                }
                              },
                              "range": [
                                367,
                                1443
                              ],
                              "loc": {
                                "start": {
                                  "line": 8,
                                  "column": 13
                                },
                                "end": {
                                  "line": 27,
                                  "column": 9
                                }
                              }
                            },
                            "range": [
                              152,
                              1443
                            ],
                            "loc": {
                              "start": {
                                "line": 4,
                                "column": 8
                              },
                              "end": {
                                "line": 27,
                                "column": 9
                              }
                            }
                          }
                        ],
                        "range": [
                          142,
                          1449
                        ],
                        "loc": {
                          "start": {
                            "line": 3,
                            "column": 51
                          },
                          "end": {
                            "line": 28,
                            "column": 5
                          }
                        }
                      },
                      "generator": false,
                      "expression": false,
                      "range": [
                        95,
                        1449
                      ],
                      "loc": {
                        "start": {
                          "line": 3,
                          "column": 4
                        },
                        "end": {
                          "line": 28,
                          "column": 5
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "RequestAnimationFrameDefinition",
                        "range": [
                          1461,
                          1492
                        ],
                        "loc": {
                          "start": {
                            "line": 29,
                            "column": 11
                          },
                          "end": {
                            "line": 29,
                            "column": 42
                          }
                        }
                      },
                      "range": [
                        1454,
                        1493
                      ],
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 4
                        },
                        "end": {
                          "line": 29,
                          "column": 43
                        }
                      }
                    }
                  ],
                  "range": [
                    89,
                    1495
                  ],
                  "loc": {
                    "start": {
                      "line": 2,
                      "column": 58
                    },
                    "end": {
                      "line": 30,
                      "column": 1
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  77,
                  1495
                ],
                "loc": {
                  "start": {
                    "line": 2,
                    "column": 46
                  },
                  "end": {
                    "line": 30,
                    "column": 1
                  }
                }
              },
              "arguments": [],
              "range": [
                77,
                1497
              ],
              "loc": {
                "start": {
                  "line": 2,
                  "column": 46
                },
                "end": {
                  "line": 30,
                  "column": 3
                }
              }
            },
            "range": [
              42,
              1498
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 11
              },
              "end": {
                "line": 30,
                "column": 4
              }
            }
          }
        ],
        "kind": "var",
        "range": [
          38,
          1499
        ],
        "loc": {
          "start": {
            "line": 2,
            "column": 7
          },
          "end": {
            "line": 30,
            "column": 5
          }
        },
        "leadingComments": [],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "range": [
        31,
        1499
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 30,
          "column": 5
        }
      }
    },
    {
      "type": "ExportNamedDeclaration",
      "declaration": {
        "type": "VariableDeclaration",
        "declarations": [
          {
            "type": "VariableDeclarator",
            "id": {
              "type": "Identifier",
              "name": "AnimationFrame",
              "range": [
                1511,
                1525
              ],
              "loc": {
                "start": {
                  "line": 31,
                  "column": 11
                },
                "end": {
                  "line": 31,
                  "column": 25
                }
              }
            },
            "init": {
              "type": "NewExpression",
              "callee": {
                "type": "Identifier",
                "name": "RequestAnimationFrameDefinition",
                "range": [
                  1532,
                  1563
                ],
                "loc": {
                  "start": {
                    "line": 31,
                    "column": 32
                  },
                  "end": {
                    "line": 31,
                    "column": 63
                  }
                }
              },
              "arguments": [
                {
                  "type": "Identifier",
                  "name": "root",
                  "range": [
                    1564,
                    1568
                  ],
                  "loc": {
                    "start": {
                      "line": 31,
                      "column": 64
                    },
                    "end": {
                      "line": 31,
                      "column": 68
                    }
                  }
                }
              ],
              "range": [
                1528,
                1569
              ],
              "loc": {
                "start": {
                  "line": 31,
                  "column": 28
                },
                "end": {
                  "line": 31,
                  "column": 69
                }
              }
            },
            "range": [
              1511,
              1569
            ],
            "loc": {
              "start": {
                "line": 31,
                "column": 11
              },
              "end": {
                "line": 31,
                "column": 69
              }
            }
          }
        ],
        "kind": "var",
        "range": [
          1507,
          1570
        ],
        "loc": {
          "start": {
            "line": 31,
            "column": 7
          },
          "end": {
            "line": 31,
            "column": 70
          }
        },
        "leadingComments": [],
        "trailingComments": [
          {
            "type": "Line",
            "value": "# sourceMappingURL=AnimationFrame.js.map",
            "range": [
              1571,
              1613
            ],
            "loc": {
              "start": {
                "line": 32,
                "column": 0
              },
              "end": {
                "line": 32,
                "column": 42
              }
            }
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "range": [
        1500,
        1570
      ],
      "loc": {
        "start": {
          "line": 31,
          "column": 0
        },
        "end": {
          "line": 31,
          "column": 70
        }
      },
      "trailingComments": [
        {
          "type": "Line",
          "value": "# sourceMappingURL=AnimationFrame.js.map",
          "range": [
            1571,
            1613
          ],
          "loc": {
            "start": {
              "line": 32,
              "column": 0
            },
            "end": {
              "line": 32,
              "column": 42
            }
          }
        }
      ]
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    1570
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 31,
      "column": 70
    }
  },
  "comments": [
    {
      "type": "Line",
      "value": "# sourceMappingURL=AnimationFrame.js.map",
      "range": [
        1571,
        1613
      ],
      "loc": {
        "start": {
          "line": 32,
          "column": 0
        },
        "end": {
          "line": 32,
          "column": 42
        }
      }
    }
  ]
}