{
  "type": "File",
  "start": 0,
  "end": 11700,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 374,
      "column": 25
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 11700,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 374,
        "column": 25
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "Identifier",
        "start": 30,
        "end": 11671,
        "loc": {
          "start": {
            "line": 4,
            "column": 0
          },
          "end": {
            "line": 372,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 36,
          "end": 45,
          "loc": {
            "start": {
              "line": 4,
              "column": 6
            },
            "end": {
              "line": 4,
              "column": 15
            },
            "identifierName": "Utilities"
          },
          "name": "Utilities",
          "leadingComments": null
        },
        "superClass": null,
        "body": {
          "type": "ClassBody",
          "start": 46,
          "end": 11671,
          "loc": {
            "start": {
              "line": 4,
              "column": 16
            },
            "end": {
              "line": 372,
              "column": 1
            }
          },
          "body": [
            {
              "type": "ClassMethod",
              "start": 114,
              "end": 811,
              "loc": {
                "start": {
                  "line": 8,
                  "column": 2
                },
                "end": {
                  "line": 25,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 114,
                "end": 125,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 2
                  },
                  "end": {
                    "line": 8,
                    "column": 13
                  },
                  "identifierName": "constructor"
                },
                "name": "constructor",
                "leadingComments": null
              },
              "kind": "constructor",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 126,
                  "end": 148,
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 14
                    },
                    "end": {
                      "line": 8,
                      "column": 36
                    },
                    "identifierName": "simpleKeyboardInstance"
                  },
                  "name": "simpleKeyboardInstance"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 149,
                "end": 811,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 37
                  },
                  "end": {
                    "line": 25,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 224,
                    "end": 277,
                    "loc": {
                      "start": {
                        "line": 12,
                        "column": 4
                      },
                      "end": {
                        "line": 12,
                        "column": 57
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 224,
                      "end": 276,
                      "loc": {
                        "start": {
                          "line": 12,
                          "column": 4
                        },
                        "end": {
                          "line": 12,
                          "column": 56
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 224,
                        "end": 251,
                        "loc": {
                          "start": {
                            "line": 12,
                            "column": 4
                          },
                          "end": {
                            "line": 12,
                            "column": 31
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 224,
                          "end": 228,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 4
                            },
                            "end": {
                              "line": 12,
                              "column": 8
                            }
                          },
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 229,
                          "end": 251,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 9
                            },
                            "end": {
                              "line": 12,
                              "column": 31
                            },
                            "identifierName": "simpleKeyboardInstance"
                          },
                          "name": "simpleKeyboardInstance"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 254,
                        "end": 276,
                        "loc": {
                          "start": {
                            "line": 12,
                            "column": 34
                          },
                          "end": {
                            "line": 12,
                            "column": 56
                          },
                          "identifierName": "simpleKeyboardInstance"
                        },
                        "name": "simpleKeyboardInstance"
                      },
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "*\r\n     * @type {object} A simple-keyboard instance\r\n     ",
                        "start": 156,
                        "end": 218,
                        "loc": {
                          "start": {
                            "line": 9,
                            "column": 4
                          },
                          "end": {
                            "line": 11,
                            "column": 7
                          }
                        }
                      }
                    ],
                    "trailingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "*\r\n     * Bindings\r\n     ",
                        "start": 285,
                        "end": 314,
                        "loc": {
                          "start": {
                            "line": 14,
                            "column": 4
                          },
                          "end": {
                            "line": 16,
                            "column": 7
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 320,
                    "end": 373,
                    "loc": {
                      "start": {
                        "line": 17,
                        "column": 4
                      },
                      "end": {
                        "line": 17,
                        "column": 57
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 320,
                      "end": 372,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 4
                        },
                        "end": {
                          "line": 17,
                          "column": 56
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 320,
                        "end": 339,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 4
                          },
                          "end": {
                            "line": 17,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 320,
                          "end": 324,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 4
                            },
                            "end": {
                              "line": 17,
                              "column": 8
                            }
                          },
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 325,
                          "end": 339,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 9
                            },
                            "end": {
                              "line": 17,
                              "column": 23
                            },
                            "identifierName": "getButtonClass"
                          },
                          "name": "getButtonClass"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 342,
                        "end": 372,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 26
                          },
                          "end": {
                            "line": 17,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 342,
                          "end": 366,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 26
                            },
                            "end": {
                              "line": 17,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 342,
                            "end": 361,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 26
                              },
                              "end": {
                                "line": 17,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 342,
                              "end": 346,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 26
                                },
                                "end": {
                                  "line": 17,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 347,
                              "end": 361,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 31
                                },
                                "end": {
                                  "line": 17,
                                  "column": 45
                                },
                                "identifierName": "getButtonClass"
                              },
                              "name": "getButtonClass"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 362,
                            "end": 366,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 46
                              },
                              "end": {
                                "line": 17,
                                "column": 50
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 367,
                            "end": 371,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 51
                              },
                              "end": {
                                "line": 17,
                                "column": 55
                              }
                            }
                          }
                        ]
                      },
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "*\r\n     * Bindings\r\n     ",
                        "start": 285,
                        "end": 314,
                        "loc": {
                          "start": {
                            "line": 14,
                            "column": 4
                          },
                          "end": {
                            "line": 16,
                            "column": 7
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 379,
                    "end": 444,
                    "loc": {
                      "start": {
                        "line": 18,
                        "column": 4
                      },
                      "end": {
                        "line": 18,
                        "column": 69
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 379,
                      "end": 443,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 4
                        },
                        "end": {
                          "line": 18,
                          "column": 68
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 379,
                        "end": 404,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 4
                          },
                          "end": {
                            "line": 18,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 379,
                          "end": 383,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 4
                            },
                            "end": {
                              "line": 18,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 384,
                          "end": 404,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 9
                            },
                            "end": {
                              "line": 18,
                              "column": 29
                            },
                            "identifierName": "getButtonDisplayName"
                          },
                          "name": "getButtonDisplayName"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 407,
                        "end": 443,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 32
                          },
                          "end": {
                            "line": 18,
                            "column": 68
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 407,
                          "end": 437,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 32
                            },
                            "end": {
                              "line": 18,
                              "column": 62
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 407,
                            "end": 432,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 32
                              },
                              "end": {
                                "line": 18,
                                "column": 57
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 407,
                              "end": 411,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 32
                                },
                                "end": {
                                  "line": 18,
                                  "column": 36
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 412,
                              "end": 432,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 37
                                },
                                "end": {
                                  "line": 18,
                                  "column": 57
                                },
                                "identifierName": "getButtonDisplayName"
                              },
                              "name": "getButtonDisplayName"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 433,
                            "end": 437,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 58
                              },
                              "end": {
                                "line": 18,
                                "column": 62
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 438,
                            "end": 442,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 63
                              },
                              "end": {
                                "line": 18,
                                "column": 67
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 450,
                    "end": 505,
                    "loc": {
                      "start": {
                        "line": 19,
                        "column": 4
                      },
                      "end": {
                        "line": 19,
                        "column": 59
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 450,
                      "end": 504,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 4
                        },
                        "end": {
                          "line": 19,
                          "column": 58
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 450,
                        "end": 470,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 4
                          },
                          "end": {
                            "line": 19,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 450,
                          "end": 454,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 4
                            },
                            "end": {
                              "line": 19,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 455,
                          "end": 470,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 9
                            },
                            "end": {
                              "line": 19,
                              "column": 24
                            },
                            "identifierName": "getUpdatedInput"
                          },
                          "name": "getUpdatedInput"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 473,
                        "end": 504,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 27
                          },
                          "end": {
                            "line": 19,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 473,
                          "end": 498,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 27
                            },
                            "end": {
                              "line": 19,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 473,
                            "end": 493,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 27
                              },
                              "end": {
                                "line": 19,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 473,
                              "end": 477,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 27
                                },
                                "end": {
                                  "line": 19,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 478,
                              "end": 493,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 32
                                },
                                "end": {
                                  "line": 19,
                                  "column": 47
                                },
                                "identifierName": "getUpdatedInput"
                              },
                              "name": "getUpdatedInput"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 494,
                            "end": 498,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 48
                              },
                              "end": {
                                "line": 19,
                                "column": 52
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 499,
                            "end": 503,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 53
                              },
                              "end": {
                                "line": 19,
                                "column": 57
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 511,
                    "end": 564,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 4
                      },
                      "end": {
                        "line": 20,
                        "column": 57
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 511,
                      "end": 563,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 4
                        },
                        "end": {
                          "line": 20,
                          "column": 56
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 511,
                        "end": 530,
                        "loc": {
                          "start": {
                            "line": 20,
                            "column": 4
                          },
                          "end": {
                            "line": 20,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 511,
                          "end": 515,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 4
                            },
                            "end": {
                              "line": 20,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 516,
                          "end": 530,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 9
                            },
                            "end": {
                              "line": 20,
                              "column": 23
                            },
                            "identifierName": "updateCaretPos"
                          },
                          "name": "updateCaretPos"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 533,
                        "end": 563,
                        "loc": {
                          "start": {
                            "line": 20,
                            "column": 26
                          },
                          "end": {
                            "line": 20,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 533,
                          "end": 557,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 26
                            },
                            "end": {
                              "line": 20,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 533,
                            "end": 552,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 26
                              },
                              "end": {
                                "line": 20,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 533,
                              "end": 537,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 26
                                },
                                "end": {
                                  "line": 20,
                                  "column": 30
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 538,
                              "end": 552,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 31
                                },
                                "end": {
                                  "line": 20,
                                  "column": 45
                                },
                                "identifierName": "updateCaretPos"
                              },
                              "name": "updateCaretPos"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 553,
                            "end": 557,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 46
                              },
                              "end": {
                                "line": 20,
                                "column": 50
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 558,
                            "end": 562,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 51
                              },
                              "end": {
                                "line": 20,
                                "column": 55
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 570,
                    "end": 635,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 4
                      },
                      "end": {
                        "line": 21,
                        "column": 69
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 570,
                      "end": 634,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 4
                        },
                        "end": {
                          "line": 21,
                          "column": 68
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 570,
                        "end": 595,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 4
                          },
                          "end": {
                            "line": 21,
                            "column": 29
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 570,
                          "end": 574,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 4
                            },
                            "end": {
                              "line": 21,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 575,
                          "end": 595,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 9
                            },
                            "end": {
                              "line": 21,
                              "column": 29
                            },
                            "identifierName": "updateCaretPosAction"
                          },
                          "name": "updateCaretPosAction"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 598,
                        "end": 634,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 32
                          },
                          "end": {
                            "line": 21,
                            "column": 68
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 598,
                          "end": 628,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 32
                            },
                            "end": {
                              "line": 21,
                              "column": 62
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 598,
                            "end": 623,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 32
                              },
                              "end": {
                                "line": 21,
                                "column": 57
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 598,
                              "end": 602,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 32
                                },
                                "end": {
                                  "line": 21,
                                  "column": 36
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 603,
                              "end": 623,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 37
                                },
                                "end": {
                                  "line": 21,
                                  "column": 57
                                },
                                "identifierName": "updateCaretPosAction"
                              },
                              "name": "updateCaretPosAction"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 624,
                            "end": 628,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 58
                              },
                              "end": {
                                "line": 21,
                                "column": 62
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 629,
                            "end": 633,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 63
                              },
                              "end": {
                                "line": 21,
                                "column": 67
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 641,
                    "end": 702,
                    "loc": {
                      "start": {
                        "line": 22,
                        "column": 4
                      },
                      "end": {
                        "line": 22,
                        "column": 65
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 641,
                      "end": 701,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 4
                        },
                        "end": {
                          "line": 22,
                          "column": 64
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 641,
                        "end": 664,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 4
                          },
                          "end": {
                            "line": 22,
                            "column": 27
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 641,
                          "end": 645,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 4
                            },
                            "end": {
                              "line": 22,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 646,
                          "end": 664,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 9
                            },
                            "end": {
                              "line": 22,
                              "column": 27
                            },
                            "identifierName": "isMaxLengthReached"
                          },
                          "name": "isMaxLengthReached"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 667,
                        "end": 701,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 30
                          },
                          "end": {
                            "line": 22,
                            "column": 64
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 667,
                          "end": 695,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 30
                            },
                            "end": {
                              "line": 22,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 667,
                            "end": 690,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 30
                              },
                              "end": {
                                "line": 22,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 667,
                              "end": 671,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 30
                                },
                                "end": {
                                  "line": 22,
                                  "column": 34
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 672,
                              "end": 690,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 35
                                },
                                "end": {
                                  "line": 22,
                                  "column": 53
                                },
                                "identifierName": "isMaxLengthReached"
                              },
                              "name": "isMaxLengthReached"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 691,
                            "end": 695,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 54
                              },
                              "end": {
                                "line": 22,
                                "column": 58
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 696,
                            "end": 700,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 59
                              },
                              "end": {
                                "line": 22,
                                "column": 63
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 708,
                    "end": 751,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 4
                      },
                      "end": {
                        "line": 23,
                        "column": 47
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 708,
                      "end": 750,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 4
                        },
                        "end": {
                          "line": 23,
                          "column": 46
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 708,
                        "end": 722,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 4
                          },
                          "end": {
                            "line": 23,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 708,
                          "end": 712,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 4
                            },
                            "end": {
                              "line": 23,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 713,
                          "end": 722,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 9
                            },
                            "end": {
                              "line": 23,
                              "column": 18
                            },
                            "identifierName": "camelCase"
                          },
                          "name": "camelCase"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 725,
                        "end": 750,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 21
                          },
                          "end": {
                            "line": 23,
                            "column": 46
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 725,
                          "end": 744,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 21
                            },
                            "end": {
                              "line": 23,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 725,
                            "end": 739,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 21
                              },
                              "end": {
                                "line": 23,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 725,
                              "end": 729,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 21
                                },
                                "end": {
                                  "line": 23,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 730,
                              "end": 739,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 26
                                },
                                "end": {
                                  "line": 23,
                                  "column": 35
                                },
                                "identifierName": "camelCase"
                              },
                              "name": "camelCase"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 740,
                            "end": 744,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 36
                              },
                              "end": {
                                "line": 23,
                                "column": 40
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 745,
                            "end": 749,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 41
                              },
                              "end": {
                                "line": 23,
                                "column": 45
                              }
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 757,
                    "end": 806,
                    "loc": {
                      "start": {
                        "line": 24,
                        "column": 4
                      },
                      "end": {
                        "line": 24,
                        "column": 53
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 757,
                      "end": 805,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 4
                        },
                        "end": {
                          "line": 24,
                          "column": 52
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 757,
                        "end": 774,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 4
                          },
                          "end": {
                            "line": 24,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 757,
                          "end": 761,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 4
                            },
                            "end": {
                              "line": 24,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 762,
                          "end": 774,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 9
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            },
                            "identifierName": "countInArray"
                          },
                          "name": "countInArray"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 777,
                        "end": 805,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 24
                          },
                          "end": {
                            "line": 24,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 777,
                          "end": 799,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 777,
                            "end": 794,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 24
                              },
                              "end": {
                                "line": 24,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 777,
                              "end": 781,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 24
                                },
                                "end": {
                                  "line": 24,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 782,
                              "end": 794,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 29
                                },
                                "end": {
                                  "line": 24,
                                  "column": 41
                                },
                                "identifierName": "countInArray"
                              },
                              "name": "countInArray"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 795,
                            "end": 799,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 42
                              },
                              "end": {
                                "line": 24,
                                "column": 46
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 800,
                            "end": 804,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 47
                              },
                              "end": {
                                "line": 24,
                                "column": 51
                              }
                            }
                          }
                        ]
                      }
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Creates an instance of the Utility service\r\n   ",
                  "start": 51,
                  "end": 110,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 2
                    },
                    "end": {
                      "line": 7,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
                  "start": 817,
                  "end": 995,
                  "loc": {
                    "start": {
                      "line": 27,
                      "column": 2
                    },
                    "end": {
                      "line": 32,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 999,
              "end": 1426,
              "loc": {
                "start": {
                  "line": 33,
                  "column": 2
                },
                "end": {
                  "line": 42,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 999,
                "end": 1013,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 2
                  },
                  "end": {
                    "line": 33,
                    "column": 16
                  },
                  "identifierName": "getButtonClass"
                },
                "name": "getButtonClass",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 1014,
                  "end": 1020,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 17
                    },
                    "end": {
                      "line": 33,
                      "column": 23
                    },
                    "identifierName": "button"
                  },
                  "name": "button"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 1021,
                "end": 1426,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 24
                  },
                  "end": {
                    "line": 42,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 1028,
                    "end": 1150,
                    "loc": {
                      "start": {
                        "line": 34,
                        "column": 4
                      },
                      "end": {
                        "line": 34,
                        "column": 126
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 1032,
                        "end": 1149,
                        "loc": {
                          "start": {
                            "line": 34,
                            "column": 8
                          },
                          "end": {
                            "line": 34,
                            "column": 125
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 1032,
                          "end": 1047,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 8
                            },
                            "end": {
                              "line": 34,
                              "column": 23
                            },
                            "identifierName": "buttonTypeClass"
                          },
                          "name": "buttonTypeClass"
                        },
                        "init": {
                          "type": "ConditionalExpression",
                          "start": 1050,
                          "end": 1149,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 26
                            },
                            "end": {
                              "line": 34,
                              "column": 125
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 1051,
                            "end": 1116,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 27
                              },
                              "end": {
                                "line": 34,
                                "column": 92
                              }
                            },
                            "left": {
                              "type": "LogicalExpression",
                              "start": 1051,
                              "end": 1095,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 27
                                },
                                "end": {
                                  "line": 34,
                                  "column": 71
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 1051,
                                "end": 1071,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1051,
                                  "end": 1066,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1051,
                                    "end": 1057,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 33
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1058,
                                    "end": 1066,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 42
                                      },
                                      "identifierName": "includes"
                                    },
                                    "name": "includes"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 1067,
                                    "end": 1070,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 46
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{",
                                      "raw": "\"{\""
                                    },
                                    "value": "{"
                                  }
                                ]
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 1075,
                                "end": 1095,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 71
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1075,
                                  "end": 1090,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1075,
                                    "end": 1081,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 57
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1082,
                                    "end": 1090,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 66
                                      },
                                      "identifierName": "includes"
                                    },
                                    "name": "includes"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 1091,
                                    "end": 1094,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 70
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "}",
                                      "raw": "\"}\""
                                    },
                                    "value": "}"
                                  }
                                ]
                              }
                            },
                            "operator": "&&",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 1099,
                              "end": 1116,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 75
                                },
                                "end": {
                                  "line": 34,
                                  "column": 92
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 1099,
                                "end": 1105,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 75
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 81
                                  },
                                  "identifierName": "button"
                                },
                                "name": "button"
                              },
                              "operator": "!==",
                              "right": {
                                "type": "StringLiteral",
                                "start": 1110,
                                "end": 1116,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 86
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 92
                                  }
                                },
                                "extra": {
                                  "rawValue": "{//}",
                                  "raw": "'{//}'"
                                },
                                "value": "{//}"
                              }
                            },
                            "extra": {
                              "parenthesized": true,
                              "parenStart": 1050
                            }
                          },
                          "consequent": {
                            "type": "StringLiteral",
                            "start": 1120,
                            "end": 1133,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 96
                              },
                              "end": {
                                "line": 34,
                                "column": 109
                              }
                            },
                            "extra": {
                              "rawValue": "functionBtn",
                              "raw": "\"functionBtn\""
                            },
                            "value": "functionBtn"
                          },
                          "alternate": {
                            "type": "StringLiteral",
                            "start": 1136,
                            "end": 1149,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 112
                              },
                              "end": {
                                "line": 34,
                                "column": 125
                              }
                            },
                            "extra": {
                              "rawValue": "standardBtn",
                              "raw": "\"standardBtn\""
                            },
                            "value": "standardBtn"
                          }
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 1156,
                    "end": 1223,
                    "loc": {
                      "start": {
                        "line": 35,
                        "column": 4
                      },
                      "end": {
                        "line": 35,
                        "column": 71
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 1160,
                        "end": 1222,
                        "loc": {
                          "start": {
                            "line": 35,
                            "column": 8
                          },
                          "end": {
                            "line": 35,
                            "column": 70
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 1160,
                          "end": 1179,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 8
                            },
                            "end": {
                              "line": 35,
                              "column": 27
                            },
                            "identifierName": "buttonWithoutBraces"
                          },
                          "name": "buttonWithoutBraces"
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 1182,
                          "end": 1222,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 30
                            },
                            "end": {
                              "line": 35,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1182,
                            "end": 1213,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 30
                              },
                              "end": {
                                "line": 35,
                                "column": 61
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 1182,
                              "end": 1205,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 30
                                },
                                "end": {
                                  "line": 35,
                                  "column": 53
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1182,
                                "end": 1196,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1182,
                                  "end": 1188,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 36
                                    },
                                    "identifierName": "button"
                                  },
                                  "name": "button"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1189,
                                  "end": 1196,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 44
                                    },
                                    "identifierName": "replace"
                                  },
                                  "name": "replace"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "StringLiteral",
                                  "start": 1197,
                                  "end": 1200,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 48
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "{",
                                    "raw": "\"{\""
                                  },
                                  "value": "{"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 1202,
                                  "end": 1204,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 52
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "",
                                    "raw": "\"\""
                                  },
                                  "value": ""
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1206,
                              "end": 1213,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 54
                                },
                                "end": {
                                  "line": 35,
                                  "column": 61
                                },
                                "identifierName": "replace"
                              },
                              "name": "replace"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "StringLiteral",
                              "start": 1214,
                              "end": 1217,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 62
                                },
                                "end": {
                                  "line": 35,
                                  "column": 65
                                }
                              },
                              "extra": {
                                "rawValue": "}",
                                "raw": "\"}\""
                              },
                              "value": "}"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 1219,
                              "end": 1221,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 67
                                },
                                "end": {
                                  "line": 35,
                                  "column": 69
                                }
                              },
                              "extra": {
                                "rawValue": "",
                                "raw": "\"\""
                              },
                              "value": ""
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 1229,
                    "end": 1255,
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 4
                      },
                      "end": {
                        "line": 36,
                        "column": 30
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 1233,
                        "end": 1254,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 8
                          },
                          "end": {
                            "line": 36,
                            "column": 29
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 1233,
                          "end": 1249,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 8
                            },
                            "end": {
                              "line": 36,
                              "column": 24
                            },
                            "identifierName": "buttonNormalized"
                          },
                          "name": "buttonNormalized"
                        },
                        "init": {
                          "type": "StringLiteral",
                          "start": 1252,
                          "end": 1254,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 27
                            },
                            "end": {
                              "line": 36,
                              "column": 29
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "''"
                          },
                          "value": ""
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 1263,
                    "end": 1363,
                    "loc": {
                      "start": {
                        "line": 38,
                        "column": 4
                      },
                      "end": {
                        "line": 39,
                        "column": 61
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 1266,
                      "end": 1299,
                      "loc": {
                        "start": {
                          "line": 38,
                          "column": 7
                        },
                        "end": {
                          "line": 38,
                          "column": 40
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 1266,
                        "end": 1281,
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 7
                          },
                          "end": {
                            "line": 38,
                            "column": 22
                          },
                          "identifierName": "buttonTypeClass"
                        },
                        "name": "buttonTypeClass"
                      },
                      "operator": "!==",
                      "right": {
                        "type": "StringLiteral",
                        "start": 1286,
                        "end": 1299,
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 27
                          },
                          "end": {
                            "line": 38,
                            "column": 40
                          }
                        },
                        "extra": {
                          "rawValue": "standardBtn",
                          "raw": "\"standardBtn\""
                        },
                        "value": "standardBtn"
                      }
                    },
                    "consequent": {
                      "type": "ExpressionStatement",
                      "start": 1308,
                      "end": 1363,
                      "loc": {
                        "start": {
                          "line": 39,
                          "column": 6
                        },
                        "end": {
                          "line": 39,
                          "column": 61
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1308,
                        "end": 1362,
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 6
                          },
                          "end": {
                            "line": 39,
                            "column": 60
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 1308,
                          "end": 1324,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 6
                            },
                            "end": {
                              "line": 39,
                              "column": 22
                            },
                            "identifierName": "buttonNormalized"
                          },
                          "name": "buttonNormalized"
                        },
                        "right": {
                          "type": "TemplateLiteral",
                          "start": 1327,
                          "end": 1362,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 25
                            },
                            "end": {
                              "line": 39,
                              "column": 60
                            }
                          },
                          "expressions": [
                            {
                              "type": "Identifier",
                              "start": 1341,
                              "end": 1360,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 39
                                },
                                "end": {
                                  "line": 39,
                                  "column": 58
                                },
                                "identifierName": "buttonWithoutBraces"
                              },
                              "name": "buttonWithoutBraces"
                            }
                          ],
                          "quasis": [
                            {
                              "type": "TemplateElement",
                              "start": 1328,
                              "end": 1339,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 26
                                },
                                "end": {
                                  "line": 39,
                                  "column": 37
                                }
                              },
                              "value": {
                                "raw": " hg-button-",
                                "cooked": " hg-button-"
                              },
                              "tail": false
                            },
                            {
                              "type": "TemplateElement",
                              "start": 1361,
                              "end": 1361,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 59
                                },
                                "end": {
                                  "line": 39,
                                  "column": 59
                                }
                              },
                              "value": {
                                "raw": "",
                                "cooked": ""
                              },
                              "tail": true
                            }
                          ]
                        }
                      }
                    },
                    "alternate": null
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 1371,
                    "end": 1421,
                    "loc": {
                      "start": {
                        "line": 41,
                        "column": 4
                      },
                      "end": {
                        "line": 41,
                        "column": 54
                      }
                    },
                    "argument": {
                      "type": "TemplateLiteral",
                      "start": 1378,
                      "end": 1420,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 11
                        },
                        "end": {
                          "line": 41,
                          "column": 53
                        }
                      },
                      "expressions": [
                        {
                          "type": "Identifier",
                          "start": 1384,
                          "end": 1399,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 17
                            },
                            "end": {
                              "line": 41,
                              "column": 32
                            },
                            "identifierName": "buttonTypeClass"
                          },
                          "name": "buttonTypeClass"
                        },
                        {
                          "type": "Identifier",
                          "start": 1402,
                          "end": 1418,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 35
                            },
                            "end": {
                              "line": 41,
                              "column": 51
                            },
                            "identifierName": "buttonNormalized"
                          },
                          "name": "buttonNormalized"
                        }
                      ],
                      "quasis": [
                        {
                          "type": "TemplateElement",
                          "start": 1379,
                          "end": 1382,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 12
                            },
                            "end": {
                              "line": 41,
                              "column": 15
                            }
                          },
                          "value": {
                            "raw": "hg-",
                            "cooked": "hg-"
                          },
                          "tail": false
                        },
                        {
                          "type": "TemplateElement",
                          "start": 1400,
                          "end": 1400,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 33
                            },
                            "end": {
                              "line": 41,
                              "column": 33
                            }
                          },
                          "value": {
                            "raw": "",
                            "cooked": ""
                          },
                          "tail": false
                        },
                        {
                          "type": "TemplateElement",
                          "start": 1419,
                          "end": 1419,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 52
                            },
                            "end": {
                              "line": 41,
                              "column": 52
                            }
                          },
                          "value": {
                            "raw": "",
                            "cooked": ""
                          },
                          "tail": true
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
                  "start": 817,
                  "end": 995,
                  "loc": {
                    "start": {
                      "line": 27,
                      "column": 2
                    },
                    "end": {
                      "line": 32,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Default button display labels\r\n   ",
                  "start": 1432,
                  "end": 1478,
                  "loc": {
                    "start": {
                      "line": 44,
                      "column": 2
                    },
                    "end": {
                      "line": 46,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 1482,
              "end": 3050,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 2
                },
                "end": {
                  "line": 109,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 1482,
                "end": 1498,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 2
                  },
                  "end": {
                    "line": 47,
                    "column": 18
                  },
                  "identifierName": "getDefaultDiplay"
                },
                "name": "getDefaultDiplay",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 1500,
                "end": 3050,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 20
                  },
                  "end": {
                    "line": 109,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 1507,
                    "end": 3045,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 4
                      },
                      "end": {
                        "line": 108,
                        "column": 6
                      }
                    },
                    "argument": {
                      "type": "ObjectExpression",
                      "start": 1514,
                      "end": 3044,
                      "loc": {
                        "start": {
                          "line": 48,
                          "column": 11
                        },
                        "end": {
                          "line": 108,
                          "column": 5
                        }
                      },
                      "properties": [
                        {
                          "type": "ObjectProperty",
                          "start": 1523,
                          "end": 1544,
                          "loc": {
                            "start": {
                              "line": 49,
                              "column": 6
                            },
                            "end": {
                              "line": 49,
                              "column": 27
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1523,
                            "end": 1531,
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 6
                              },
                              "end": {
                                "line": 49,
                                "column": 14
                              }
                            },
                            "extra": {
                              "rawValue": "{bksp}",
                              "raw": "'{bksp}'"
                            },
                            "value": "{bksp}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1533,
                            "end": 1544,
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 16
                              },
                              "end": {
                                "line": 49,
                                "column": 27
                              }
                            },
                            "extra": {
                              "rawValue": "backspace",
                              "raw": "'backspace'"
                            },
                            "value": "backspace"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1553,
                          "end": 1579,
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 6
                            },
                            "end": {
                              "line": 50,
                              "column": 32
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1553,
                            "end": 1566,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 6
                              },
                              "end": {
                                "line": 50,
                                "column": 19
                              }
                            },
                            "extra": {
                              "rawValue": "{backspace}",
                              "raw": "'{backspace}'"
                            },
                            "value": "{backspace}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1568,
                            "end": 1579,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 21
                              },
                              "end": {
                                "line": 50,
                                "column": 32
                              }
                            },
                            "extra": {
                              "rawValue": "backspace",
                              "raw": "'backspace'"
                            },
                            "value": "backspace"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1588,
                          "end": 1608,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 6
                            },
                            "end": {
                              "line": 51,
                              "column": 26
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1588,
                            "end": 1597,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 6
                              },
                              "end": {
                                "line": 51,
                                "column": 15
                              }
                            },
                            "extra": {
                              "rawValue": "{enter}",
                              "raw": "'{enter}'"
                            },
                            "value": "{enter}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1599,
                            "end": 1608,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 17
                              },
                              "end": {
                                "line": 51,
                                "column": 26
                              }
                            },
                            "extra": {
                              "rawValue": "< enter",
                              "raw": "'< enter'"
                            },
                            "value": "< enter"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1617,
                          "end": 1635,
                          "loc": {
                            "start": {
                              "line": 52,
                              "column": 6
                            },
                            "end": {
                              "line": 52,
                              "column": 24
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1617,
                            "end": 1626,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 6
                              },
                              "end": {
                                "line": 52,
                                "column": 15
                              }
                            },
                            "extra": {
                              "rawValue": "{shift}",
                              "raw": "'{shift}'"
                            },
                            "value": "{shift}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1628,
                            "end": 1635,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 17
                              },
                              "end": {
                                "line": 52,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "shift",
                              "raw": "'shift'"
                            },
                            "value": "shift"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1644,
                          "end": 1666,
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 6
                            },
                            "end": {
                              "line": 53,
                              "column": 28
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1644,
                            "end": 1657,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 6
                              },
                              "end": {
                                "line": 53,
                                "column": 19
                              }
                            },
                            "extra": {
                              "rawValue": "{shiftleft}",
                              "raw": "'{shiftleft}'"
                            },
                            "value": "{shiftleft}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1659,
                            "end": 1666,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 21
                              },
                              "end": {
                                "line": 53,
                                "column": 28
                              }
                            },
                            "extra": {
                              "rawValue": "shift",
                              "raw": "'shift'"
                            },
                            "value": "shift"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1675,
                          "end": 1698,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 6
                            },
                            "end": {
                              "line": 54,
                              "column": 29
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1675,
                            "end": 1689,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 6
                              },
                              "end": {
                                "line": 54,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "{shiftright}",
                              "raw": "'{shiftright}'"
                            },
                            "value": "{shiftright}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1691,
                            "end": 1698,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 22
                              },
                              "end": {
                                "line": 54,
                                "column": 29
                              }
                            },
                            "extra": {
                              "rawValue": "shift",
                              "raw": "'shift'"
                            },
                            "value": "shift"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1707,
                          "end": 1721,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 6
                            },
                            "end": {
                              "line": 55,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1707,
                            "end": 1714,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 6
                              },
                              "end": {
                                "line": 55,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{alt}",
                              "raw": "'{alt}'"
                            },
                            "value": "{alt}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1716,
                            "end": 1721,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 15
                              },
                              "end": {
                                "line": 55,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "alt",
                              "raw": "'alt'"
                            },
                            "value": "alt"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1730,
                          "end": 1744,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 6
                            },
                            "end": {
                              "line": 56,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1730,
                            "end": 1735,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 6
                              },
                              "end": {
                                "line": 56,
                                "column": 11
                              }
                            },
                            "extra": {
                              "rawValue": "{s}",
                              "raw": "'{s}'"
                            },
                            "value": "{s}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1737,
                            "end": 1744,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 13
                              },
                              "end": {
                                "line": 56,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "shift",
                              "raw": "'shift'"
                            },
                            "value": "shift"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1753,
                          "end": 1767,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 6
                            },
                            "end": {
                              "line": 57,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1753,
                            "end": 1760,
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 6
                              },
                              "end": {
                                "line": 57,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{tab}",
                              "raw": "'{tab}'"
                            },
                            "value": "{tab}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1762,
                            "end": 1767,
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 15
                              },
                              "end": {
                                "line": 57,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "tab",
                              "raw": "'tab'"
                            },
                            "value": "tab"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1776,
                          "end": 1792,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 6
                            },
                            "end": {
                              "line": 58,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1776,
                            "end": 1784,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 6
                              },
                              "end": {
                                "line": 58,
                                "column": 14
                              }
                            },
                            "extra": {
                              "rawValue": "{lock}",
                              "raw": "'{lock}'"
                            },
                            "value": "{lock}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1786,
                            "end": 1792,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 16
                              },
                              "end": {
                                "line": 58,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "caps",
                              "raw": "'caps'"
                            },
                            "value": "caps"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1801,
                          "end": 1821,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 6
                            },
                            "end": {
                              "line": 59,
                              "column": 26
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1801,
                            "end": 1813,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 6
                              },
                              "end": {
                                "line": 59,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "{capslock}",
                              "raw": "'{capslock}'"
                            },
                            "value": "{capslock}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1815,
                            "end": 1821,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 20
                              },
                              "end": {
                                "line": 59,
                                "column": 26
                              }
                            },
                            "extra": {
                              "rawValue": "caps",
                              "raw": "'caps'"
                            },
                            "value": "caps"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1830,
                          "end": 1850,
                          "loc": {
                            "start": {
                              "line": 60,
                              "column": 6
                            },
                            "end": {
                              "line": 60,
                              "column": 26
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1830,
                            "end": 1840,
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 6
                              },
                              "end": {
                                "line": 60,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{accept}",
                              "raw": "'{accept}'"
                            },
                            "value": "{accept}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1842,
                            "end": 1850,
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 18
                              },
                              "end": {
                                "line": 60,
                                "column": 26
                              }
                            },
                            "extra": {
                              "rawValue": "Submit",
                              "raw": "'Submit'"
                            },
                            "value": "Submit"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1859,
                          "end": 1873,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 6
                            },
                            "end": {
                              "line": 61,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1859,
                            "end": 1868,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 6
                              },
                              "end": {
                                "line": 61,
                                "column": 15
                              }
                            },
                            "extra": {
                              "rawValue": "{space}",
                              "raw": "'{space}'"
                            },
                            "value": "{space}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1870,
                            "end": 1873,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 17
                              },
                              "end": {
                                "line": 61,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": " ",
                              "raw": "' '"
                            },
                            "value": " "
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1882,
                          "end": 1893,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 6
                            },
                            "end": {
                              "line": 62,
                              "column": 17
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1882,
                            "end": 1888,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 6
                              },
                              "end": {
                                "line": 62,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{//}",
                              "raw": "'{//}'"
                            },
                            "value": "{//}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1890,
                            "end": 1893,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 14
                              },
                              "end": {
                                "line": 62,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": " ",
                              "raw": "' '"
                            },
                            "value": " "
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1902,
                          "end": 1916,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 6
                            },
                            "end": {
                              "line": 63,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1902,
                            "end": 1909,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 6
                              },
                              "end": {
                                "line": 63,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{esc}",
                              "raw": "\"{esc}\""
                            },
                            "value": "{esc}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1911,
                            "end": 1916,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 15
                              },
                              "end": {
                                "line": 63,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "esc",
                              "raw": "\"esc\""
                            },
                            "value": "esc"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1925,
                          "end": 1942,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 6
                            },
                            "end": {
                              "line": 64,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1925,
                            "end": 1935,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 6
                              },
                              "end": {
                                "line": 64,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{escape}",
                              "raw": "\"{escape}\""
                            },
                            "value": "{escape}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1937,
                            "end": 1942,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 18
                              },
                              "end": {
                                "line": 64,
                                "column": 23
                              }
                            },
                            "extra": {
                              "rawValue": "esc",
                              "raw": "\"esc\""
                            },
                            "value": "esc"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1951,
                          "end": 1963,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 6
                            },
                            "end": {
                              "line": 65,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1951,
                            "end": 1957,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 6
                              },
                              "end": {
                                "line": 65,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f1}",
                              "raw": "\"{f1}\""
                            },
                            "value": "{f1}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1959,
                            "end": 1963,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 14
                              },
                              "end": {
                                "line": 65,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f1",
                              "raw": "\"f1\""
                            },
                            "value": "f1"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1972,
                          "end": 1984,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 6
                            },
                            "end": {
                              "line": 66,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1972,
                            "end": 1978,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 6
                              },
                              "end": {
                                "line": 66,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f2}",
                              "raw": "\"{f2}\""
                            },
                            "value": "{f2}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 1980,
                            "end": 1984,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 14
                              },
                              "end": {
                                "line": 66,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f2",
                              "raw": "\"f2\""
                            },
                            "value": "f2"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 1993,
                          "end": 2005,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 6
                            },
                            "end": {
                              "line": 67,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 1993,
                            "end": 1999,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 6
                              },
                              "end": {
                                "line": 67,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f3}",
                              "raw": "\"{f3}\""
                            },
                            "value": "{f3}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2001,
                            "end": 2005,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 14
                              },
                              "end": {
                                "line": 67,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f3",
                              "raw": "\"f3\""
                            },
                            "value": "f3"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2014,
                          "end": 2026,
                          "loc": {
                            "start": {
                              "line": 68,
                              "column": 6
                            },
                            "end": {
                              "line": 68,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2014,
                            "end": 2020,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 6
                              },
                              "end": {
                                "line": 68,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f4}",
                              "raw": "\"{f4}\""
                            },
                            "value": "{f4}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2022,
                            "end": 2026,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 14
                              },
                              "end": {
                                "line": 68,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f4",
                              "raw": "\"f4\""
                            },
                            "value": "f4"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2035,
                          "end": 2047,
                          "loc": {
                            "start": {
                              "line": 69,
                              "column": 6
                            },
                            "end": {
                              "line": 69,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2035,
                            "end": 2041,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 6
                              },
                              "end": {
                                "line": 69,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f5}",
                              "raw": "\"{f5}\""
                            },
                            "value": "{f5}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2043,
                            "end": 2047,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 14
                              },
                              "end": {
                                "line": 69,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f5",
                              "raw": "\"f5\""
                            },
                            "value": "f5"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2056,
                          "end": 2068,
                          "loc": {
                            "start": {
                              "line": 70,
                              "column": 6
                            },
                            "end": {
                              "line": 70,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2056,
                            "end": 2062,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 6
                              },
                              "end": {
                                "line": 70,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f6}",
                              "raw": "\"{f6}\""
                            },
                            "value": "{f6}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2064,
                            "end": 2068,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 14
                              },
                              "end": {
                                "line": 70,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f6",
                              "raw": "\"f6\""
                            },
                            "value": "f6"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2077,
                          "end": 2089,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 6
                            },
                            "end": {
                              "line": 71,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2077,
                            "end": 2083,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 6
                              },
                              "end": {
                                "line": 71,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f7}",
                              "raw": "\"{f7}\""
                            },
                            "value": "{f7}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2085,
                            "end": 2089,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 14
                              },
                              "end": {
                                "line": 71,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f7",
                              "raw": "\"f7\""
                            },
                            "value": "f7"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2098,
                          "end": 2110,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 6
                            },
                            "end": {
                              "line": 72,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2098,
                            "end": 2104,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 6
                              },
                              "end": {
                                "line": 72,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f8}",
                              "raw": "\"{f8}\""
                            },
                            "value": "{f8}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2106,
                            "end": 2110,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 14
                              },
                              "end": {
                                "line": 72,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f8",
                              "raw": "\"f8\""
                            },
                            "value": "f8"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2119,
                          "end": 2131,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 6
                            },
                            "end": {
                              "line": 73,
                              "column": 18
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2119,
                            "end": 2125,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 6
                              },
                              "end": {
                                "line": 73,
                                "column": 12
                              }
                            },
                            "extra": {
                              "rawValue": "{f9}",
                              "raw": "\"{f9}\""
                            },
                            "value": "{f9}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2127,
                            "end": 2131,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 14
                              },
                              "end": {
                                "line": 73,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "f9",
                              "raw": "\"f9\""
                            },
                            "value": "f9"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2140,
                          "end": 2154,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 6
                            },
                            "end": {
                              "line": 74,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2140,
                            "end": 2147,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 6
                              },
                              "end": {
                                "line": 74,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{f10}",
                              "raw": "\"{f10}\""
                            },
                            "value": "{f10}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2149,
                            "end": 2154,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 15
                              },
                              "end": {
                                "line": 74,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "f10",
                              "raw": "\"f10\""
                            },
                            "value": "f10"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2163,
                          "end": 2177,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 6
                            },
                            "end": {
                              "line": 75,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2163,
                            "end": 2170,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 6
                              },
                              "end": {
                                "line": 75,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{f11}",
                              "raw": "\"{f11}\""
                            },
                            "value": "{f11}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2172,
                            "end": 2177,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 15
                              },
                              "end": {
                                "line": 75,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "f11",
                              "raw": "\"f11\""
                            },
                            "value": "f11"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2186,
                          "end": 2200,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 6
                            },
                            "end": {
                              "line": 76,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2186,
                            "end": 2193,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 6
                              },
                              "end": {
                                "line": 76,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{f12}",
                              "raw": "\"{f12}\""
                            },
                            "value": "{f12}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2195,
                            "end": 2200,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 15
                              },
                              "end": {
                                "line": 76,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "f12",
                              "raw": "\"f12\""
                            },
                            "value": "f12"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2209,
                          "end": 2230,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 6
                            },
                            "end": {
                              "line": 77,
                              "column": 27
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2209,
                            "end": 2225,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 6
                              },
                              "end": {
                                "line": 77,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "{numpaddivide}",
                              "raw": "'{numpaddivide}'"
                            },
                            "value": "{numpaddivide}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2227,
                            "end": 2230,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 24
                              },
                              "end": {
                                "line": 77,
                                "column": 27
                              }
                            },
                            "extra": {
                              "rawValue": "/",
                              "raw": "'/'"
                            },
                            "value": "/"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2239,
                          "end": 2258,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 6
                            },
                            "end": {
                              "line": 78,
                              "column": 25
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2239,
                            "end": 2250,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 6
                              },
                              "end": {
                                "line": 78,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numlock}",
                              "raw": "'{numlock}'"
                            },
                            "value": "{numlock}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2252,
                            "end": 2258,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 19
                              },
                              "end": {
                                "line": 78,
                                "column": 25
                              }
                            },
                            "extra": {
                              "rawValue": "lock",
                              "raw": "'lock'"
                            },
                            "value": "lock"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2267,
                          "end": 2283,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 6
                            },
                            "end": {
                              "line": 79,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2267,
                            "end": 2278,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 6
                              },
                              "end": {
                                "line": 79,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{arrowup}",
                              "raw": "\"{arrowup}\""
                            },
                            "value": "{arrowup}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2280,
                            "end": 2283,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 19
                              },
                              "end": {
                                "line": 79,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "↑",
                              "raw": "\"↑\""
                            },
                            "value": "↑"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2292,
                          "end": 2310,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 6
                            },
                            "end": {
                              "line": 80,
                              "column": 24
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2292,
                            "end": 2305,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 6
                              },
                              "end": {
                                "line": 80,
                                "column": 19
                              }
                            },
                            "extra": {
                              "rawValue": "{arrowleft}",
                              "raw": "\"{arrowleft}\""
                            },
                            "value": "{arrowleft}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2307,
                            "end": 2310,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 21
                              },
                              "end": {
                                "line": 80,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "←",
                              "raw": "\"←\""
                            },
                            "value": "←"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2319,
                          "end": 2337,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 6
                            },
                            "end": {
                              "line": 81,
                              "column": 24
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2319,
                            "end": 2332,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 6
                              },
                              "end": {
                                "line": 81,
                                "column": 19
                              }
                            },
                            "extra": {
                              "rawValue": "{arrowdown}",
                              "raw": "\"{arrowdown}\""
                            },
                            "value": "{arrowdown}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2334,
                            "end": 2337,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 21
                              },
                              "end": {
                                "line": 81,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "↓",
                              "raw": "\"↓\""
                            },
                            "value": "↓"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2346,
                          "end": 2365,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 6
                            },
                            "end": {
                              "line": 82,
                              "column": 25
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2346,
                            "end": 2360,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 6
                              },
                              "end": {
                                "line": 82,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "{arrowright}",
                              "raw": "\"{arrowright}\""
                            },
                            "value": "{arrowright}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2362,
                            "end": 2365,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 22
                              },
                              "end": {
                                "line": 82,
                                "column": 25
                              }
                            },
                            "extra": {
                              "rawValue": "→",
                              "raw": "\"→\""
                            },
                            "value": "→"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2374,
                          "end": 2393,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 6
                            },
                            "end": {
                              "line": 83,
                              "column": 25
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2374,
                            "end": 2384,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 6
                              },
                              "end": {
                                "line": 83,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{prtscr}",
                              "raw": "\"{prtscr}\""
                            },
                            "value": "{prtscr}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2386,
                            "end": 2393,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 18
                              },
                              "end": {
                                "line": 83,
                                "column": 25
                              }
                            },
                            "extra": {
                              "rawValue": "print",
                              "raw": "\"print\""
                            },
                            "value": "print"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2402,
                          "end": 2426,
                          "loc": {
                            "start": {
                              "line": 84,
                              "column": 6
                            },
                            "end": {
                              "line": 84,
                              "column": 30
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2402,
                            "end": 2416,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 6
                              },
                              "end": {
                                "line": 84,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "{scrolllock}",
                              "raw": "\"{scrolllock}\""
                            },
                            "value": "{scrolllock}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2418,
                            "end": 2426,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 22
                              },
                              "end": {
                                "line": 84,
                                "column": 30
                              }
                            },
                            "extra": {
                              "rawValue": "scroll",
                              "raw": "\"scroll\""
                            },
                            "value": "scroll"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2435,
                          "end": 2453,
                          "loc": {
                            "start": {
                              "line": 85,
                              "column": 6
                            },
                            "end": {
                              "line": 85,
                              "column": 24
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2435,
                            "end": 2444,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 6
                              },
                              "end": {
                                "line": 85,
                                "column": 15
                              }
                            },
                            "extra": {
                              "rawValue": "{pause}",
                              "raw": "\"{pause}\""
                            },
                            "value": "{pause}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2446,
                            "end": 2453,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 17
                              },
                              "end": {
                                "line": 85,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "pause",
                              "raw": "\"pause\""
                            },
                            "value": "pause"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2462,
                          "end": 2479,
                          "loc": {
                            "start": {
                              "line": 86,
                              "column": 6
                            },
                            "end": {
                              "line": 86,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2462,
                            "end": 2472,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 6
                              },
                              "end": {
                                "line": 86,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{insert}",
                              "raw": "\"{insert}\""
                            },
                            "value": "{insert}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2474,
                            "end": 2479,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 18
                              },
                              "end": {
                                "line": 86,
                                "column": 23
                              }
                            },
                            "extra": {
                              "rawValue": "ins",
                              "raw": "\"ins\""
                            },
                            "value": "ins"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2488,
                          "end": 2504,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 6
                            },
                            "end": {
                              "line": 87,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2488,
                            "end": 2496,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 6
                              },
                              "end": {
                                "line": 87,
                                "column": 14
                              }
                            },
                            "extra": {
                              "rawValue": "{home}",
                              "raw": "\"{home}\""
                            },
                            "value": "{home}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2498,
                            "end": 2504,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 16
                              },
                              "end": {
                                "line": 87,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "home",
                              "raw": "\"home\""
                            },
                            "value": "home"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2513,
                          "end": 2529,
                          "loc": {
                            "start": {
                              "line": 88,
                              "column": 6
                            },
                            "end": {
                              "line": 88,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2513,
                            "end": 2523,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 6
                              },
                              "end": {
                                "line": 88,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{pageup}",
                              "raw": "\"{pageup}\""
                            },
                            "value": "{pageup}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2525,
                            "end": 2529,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 18
                              },
                              "end": {
                                "line": 88,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "up",
                              "raw": "\"up\""
                            },
                            "value": "up"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2538,
                          "end": 2555,
                          "loc": {
                            "start": {
                              "line": 89,
                              "column": 6
                            },
                            "end": {
                              "line": 89,
                              "column": 23
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2538,
                            "end": 2548,
                            "loc": {
                              "start": {
                                "line": 89,
                                "column": 6
                              },
                              "end": {
                                "line": 89,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{delete}",
                              "raw": "\"{delete}\""
                            },
                            "value": "{delete}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2550,
                            "end": 2555,
                            "loc": {
                              "start": {
                                "line": 89,
                                "column": 18
                              },
                              "end": {
                                "line": 89,
                                "column": 23
                              }
                            },
                            "extra": {
                              "rawValue": "del",
                              "raw": "\"del\""
                            },
                            "value": "del"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2564,
                          "end": 2578,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 6
                            },
                            "end": {
                              "line": 90,
                              "column": 20
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2564,
                            "end": 2571,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 6
                              },
                              "end": {
                                "line": 90,
                                "column": 13
                              }
                            },
                            "extra": {
                              "rawValue": "{end}",
                              "raw": "\"{end}\""
                            },
                            "value": "{end}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2573,
                            "end": 2578,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 15
                              },
                              "end": {
                                "line": 90,
                                "column": 20
                              }
                            },
                            "extra": {
                              "rawValue": "end",
                              "raw": "\"end\""
                            },
                            "value": "end"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2587,
                          "end": 2607,
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 6
                            },
                            "end": {
                              "line": 91,
                              "column": 26
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2587,
                            "end": 2599,
                            "loc": {
                              "start": {
                                "line": 91,
                                "column": 6
                              },
                              "end": {
                                "line": 91,
                                "column": 18
                              }
                            },
                            "extra": {
                              "rawValue": "{pagedown}",
                              "raw": "\"{pagedown}\""
                            },
                            "value": "{pagedown}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2601,
                            "end": 2607,
                            "loc": {
                              "start": {
                                "line": 91,
                                "column": 20
                              },
                              "end": {
                                "line": 91,
                                "column": 26
                              }
                            },
                            "extra": {
                              "rawValue": "down",
                              "raw": "\"down\""
                            },
                            "value": "down"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2616,
                          "end": 2639,
                          "loc": {
                            "start": {
                              "line": 92,
                              "column": 6
                            },
                            "end": {
                              "line": 92,
                              "column": 29
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2616,
                            "end": 2634,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 6
                              },
                              "end": {
                                "line": 92,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "{numpadmultiply}",
                              "raw": "\"{numpadmultiply}\""
                            },
                            "value": "{numpadmultiply}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2636,
                            "end": 2639,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 26
                              },
                              "end": {
                                "line": 92,
                                "column": 29
                              }
                            },
                            "extra": {
                              "rawValue": "*",
                              "raw": "\"*\""
                            },
                            "value": "*"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2648,
                          "end": 2671,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 6
                            },
                            "end": {
                              "line": 93,
                              "column": 29
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2648,
                            "end": 2666,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 6
                              },
                              "end": {
                                "line": 93,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "{numpadsubtract}",
                              "raw": "\"{numpadsubtract}\""
                            },
                            "value": "{numpadsubtract}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2668,
                            "end": 2671,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 26
                              },
                              "end": {
                                "line": 93,
                                "column": 29
                              }
                            },
                            "extra": {
                              "rawValue": "-",
                              "raw": "\"-\""
                            },
                            "value": "-"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2680,
                          "end": 2698,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 6
                            },
                            "end": {
                              "line": 94,
                              "column": 24
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2680,
                            "end": 2693,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 6
                              },
                              "end": {
                                "line": 94,
                                "column": 19
                              }
                            },
                            "extra": {
                              "rawValue": "{numpadadd}",
                              "raw": "\"{numpadadd}\""
                            },
                            "value": "{numpadadd}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2695,
                            "end": 2698,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 21
                              },
                              "end": {
                                "line": 94,
                                "column": 24
                              }
                            },
                            "extra": {
                              "rawValue": "+",
                              "raw": "\"+\""
                            },
                            "value": "+"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2707,
                          "end": 2731,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 6
                            },
                            "end": {
                              "line": 95,
                              "column": 30
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2707,
                            "end": 2722,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 6
                              },
                              "end": {
                                "line": 95,
                                "column": 21
                              }
                            },
                            "extra": {
                              "rawValue": "{numpadenter}",
                              "raw": "\"{numpadenter}\""
                            },
                            "value": "{numpadenter}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2724,
                            "end": 2731,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 23
                              },
                              "end": {
                                "line": 95,
                                "column": 30
                              }
                            },
                            "extra": {
                              "rawValue": "enter",
                              "raw": "\"enter\""
                            },
                            "value": "enter"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2740,
                          "end": 2755,
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 6
                            },
                            "end": {
                              "line": 96,
                              "column": 21
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2740,
                            "end": 2750,
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 6
                              },
                              "end": {
                                "line": 96,
                                "column": 16
                              }
                            },
                            "extra": {
                              "rawValue": "{period}",
                              "raw": "\"{period}\""
                            },
                            "value": "{period}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2752,
                            "end": 2755,
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 18
                              },
                              "end": {
                                "line": 96,
                                "column": 21
                              }
                            },
                            "extra": {
                              "rawValue": ".",
                              "raw": "\".\""
                            },
                            "value": "."
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2764,
                          "end": 2786,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 6
                            },
                            "end": {
                              "line": 97,
                              "column": 28
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2764,
                            "end": 2781,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 6
                              },
                              "end": {
                                "line": 97,
                                "column": 23
                              }
                            },
                            "extra": {
                              "rawValue": "{numpaddecimal}",
                              "raw": "\"{numpaddecimal}\""
                            },
                            "value": "{numpaddecimal}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2783,
                            "end": 2786,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 25
                              },
                              "end": {
                                "line": 97,
                                "column": 28
                              }
                            },
                            "extra": {
                              "rawValue": ".",
                              "raw": "\".\""
                            },
                            "value": "."
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2795,
                          "end": 2811,
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 6
                            },
                            "end": {
                              "line": 98,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2795,
                            "end": 2806,
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 6
                              },
                              "end": {
                                "line": 98,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad0}",
                              "raw": "\"{numpad0}\""
                            },
                            "value": "{numpad0}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2808,
                            "end": 2811,
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 19
                              },
                              "end": {
                                "line": 98,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "0",
                              "raw": "\"0\""
                            },
                            "value": "0"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2820,
                          "end": 2836,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 6
                            },
                            "end": {
                              "line": 99,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2820,
                            "end": 2831,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 6
                              },
                              "end": {
                                "line": 99,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad1}",
                              "raw": "\"{numpad1}\""
                            },
                            "value": "{numpad1}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2833,
                            "end": 2836,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 19
                              },
                              "end": {
                                "line": 99,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "1",
                              "raw": "\"1\""
                            },
                            "value": "1"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2845,
                          "end": 2861,
                          "loc": {
                            "start": {
                              "line": 100,
                              "column": 6
                            },
                            "end": {
                              "line": 100,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2845,
                            "end": 2856,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 6
                              },
                              "end": {
                                "line": 100,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad2}",
                              "raw": "\"{numpad2}\""
                            },
                            "value": "{numpad2}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2858,
                            "end": 2861,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 19
                              },
                              "end": {
                                "line": 100,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "2",
                              "raw": "\"2\""
                            },
                            "value": "2"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2870,
                          "end": 2886,
                          "loc": {
                            "start": {
                              "line": 101,
                              "column": 6
                            },
                            "end": {
                              "line": 101,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2870,
                            "end": 2881,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 6
                              },
                              "end": {
                                "line": 101,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad3}",
                              "raw": "\"{numpad3}\""
                            },
                            "value": "{numpad3}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2883,
                            "end": 2886,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 19
                              },
                              "end": {
                                "line": 101,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "3",
                              "raw": "\"3\""
                            },
                            "value": "3"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2895,
                          "end": 2911,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 6
                            },
                            "end": {
                              "line": 102,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2895,
                            "end": 2906,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 6
                              },
                              "end": {
                                "line": 102,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad4}",
                              "raw": "\"{numpad4}\""
                            },
                            "value": "{numpad4}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2908,
                            "end": 2911,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 19
                              },
                              "end": {
                                "line": 102,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "4",
                              "raw": "\"4\""
                            },
                            "value": "4"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2920,
                          "end": 2936,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 6
                            },
                            "end": {
                              "line": 103,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2920,
                            "end": 2931,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 6
                              },
                              "end": {
                                "line": 103,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad5}",
                              "raw": "\"{numpad5}\""
                            },
                            "value": "{numpad5}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2933,
                            "end": 2936,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 19
                              },
                              "end": {
                                "line": 103,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "5",
                              "raw": "\"5\""
                            },
                            "value": "5"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2945,
                          "end": 2961,
                          "loc": {
                            "start": {
                              "line": 104,
                              "column": 6
                            },
                            "end": {
                              "line": 104,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2945,
                            "end": 2956,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 6
                              },
                              "end": {
                                "line": 104,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad6}",
                              "raw": "\"{numpad6}\""
                            },
                            "value": "{numpad6}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2958,
                            "end": 2961,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 19
                              },
                              "end": {
                                "line": 104,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "6",
                              "raw": "\"6\""
                            },
                            "value": "6"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2970,
                          "end": 2986,
                          "loc": {
                            "start": {
                              "line": 105,
                              "column": 6
                            },
                            "end": {
                              "line": 105,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2970,
                            "end": 2981,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 6
                              },
                              "end": {
                                "line": 105,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad7}",
                              "raw": "\"{numpad7}\""
                            },
                            "value": "{numpad7}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 2983,
                            "end": 2986,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 19
                              },
                              "end": {
                                "line": 105,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "7",
                              "raw": "\"7\""
                            },
                            "value": "7"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 2995,
                          "end": 3011,
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 6
                            },
                            "end": {
                              "line": 106,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 2995,
                            "end": 3006,
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 6
                              },
                              "end": {
                                "line": 106,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad8}",
                              "raw": "\"{numpad8}\""
                            },
                            "value": "{numpad8}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 3008,
                            "end": 3011,
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 19
                              },
                              "end": {
                                "line": 106,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "8",
                              "raw": "\"8\""
                            },
                            "value": "8"
                          }
                        },
                        {
                          "type": "ObjectProperty",
                          "start": 3020,
                          "end": 3036,
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 6
                            },
                            "end": {
                              "line": 107,
                              "column": 22
                            }
                          },
                          "method": false,
                          "shorthand": false,
                          "computed": false,
                          "key": {
                            "type": "StringLiteral",
                            "start": 3020,
                            "end": 3031,
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 6
                              },
                              "end": {
                                "line": 107,
                                "column": 17
                              }
                            },
                            "extra": {
                              "rawValue": "{numpad9}",
                              "raw": "\"{numpad9}\""
                            },
                            "value": "{numpad9}"
                          },
                          "value": {
                            "type": "StringLiteral",
                            "start": 3033,
                            "end": 3036,
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 19
                              },
                              "end": {
                                "line": 107,
                                "column": 22
                              }
                            },
                            "extra": {
                              "rawValue": "9",
                              "raw": "\"9\""
                            },
                            "value": "9"
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Default button display labels\r\n   ",
                  "start": 1432,
                  "end": 1478,
                  "loc": {
                    "start": {
                      "line": 44,
                      "column": 2
                    },
                    "end": {
                      "line": 46,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
                  "start": 3054,
                  "end": 3352,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 2
                    },
                    "end": {
                      "line": 116,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 3356,
              "end": 3621,
              "loc": {
                "start": {
                  "line": 117,
                  "column": 2
                },
                "end": {
                  "line": 125,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3356,
                "end": 3376,
                "loc": {
                  "start": {
                    "line": 117,
                    "column": 2
                  },
                  "end": {
                    "line": 117,
                    "column": 22
                  },
                  "identifierName": "getButtonDisplayName"
                },
                "name": "getButtonDisplayName",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 3377,
                  "end": 3383,
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 23
                    },
                    "end": {
                      "line": 117,
                      "column": 29
                    },
                    "identifierName": "button"
                  },
                  "name": "button"
                },
                {
                  "type": "Identifier",
                  "start": 3385,
                  "end": 3392,
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 31
                    },
                    "end": {
                      "line": 117,
                      "column": 38
                    },
                    "identifierName": "display"
                  },
                  "name": "display"
                },
                {
                  "type": "Identifier",
                  "start": 3394,
                  "end": 3406,
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 40
                    },
                    "end": {
                      "line": 117,
                      "column": 52
                    },
                    "identifierName": "mergeDisplay"
                  },
                  "name": "mergeDisplay"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 3407,
                "end": 3621,
                "loc": {
                  "start": {
                    "line": 117,
                    "column": 53
                  },
                  "end": {
                    "line": 125,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 3414,
                    "end": 3575,
                    "loc": {
                      "start": {
                        "line": 118,
                        "column": 4
                      },
                      "end": {
                        "line": 122,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 3417,
                      "end": 3429,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 7
                        },
                        "end": {
                          "line": 118,
                          "column": 19
                        },
                        "identifierName": "mergeDisplay"
                      },
                      "name": "mergeDisplay"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 3430,
                      "end": 3508,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 20
                        },
                        "end": {
                          "line": 120,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 3439,
                          "end": 3501,
                          "loc": {
                            "start": {
                              "line": 119,
                              "column": 6
                            },
                            "end": {
                              "line": 119,
                              "column": 68
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3439,
                            "end": 3500,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 6
                              },
                              "end": {
                                "line": 119,
                                "column": 67
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 3439,
                              "end": 3446,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 6
                                },
                                "end": {
                                  "line": 119,
                                  "column": 13
                                },
                                "identifierName": "display"
                              },
                              "name": "display"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 3449,
                              "end": 3500,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 16
                                },
                                "end": {
                                  "line": 119,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3449,
                                "end": 3462,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3449,
                                  "end": 3455,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 22
                                    },
                                    "identifierName": "Object"
                                  },
                                  "name": "Object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3456,
                                  "end": 3462,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 29
                                    },
                                    "identifierName": "assign"
                                  },
                                  "name": "assign"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3463,
                                  "end": 3465,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 32
                                    }
                                  },
                                  "properties": []
                                },
                                {
                                  "type": "CallExpression",
                                  "start": 3467,
                                  "end": 3490,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 57
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3467,
                                    "end": 3488,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 55
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3467,
                                      "end": 3471,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 38
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3472,
                                      "end": 3488,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 55
                                        },
                                        "identifierName": "getDefaultDiplay"
                                      },
                                      "name": "getDefaultDiplay"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                {
                                  "type": "Identifier",
                                  "start": 3492,
                                  "end": 3499,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 66
                                    },
                                    "identifierName": "display"
                                  },
                                  "name": "display"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 3514,
                      "end": 3575,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 11
                        },
                        "end": {
                          "line": 122,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 3523,
                          "end": 3568,
                          "loc": {
                            "start": {
                              "line": 121,
                              "column": 6
                            },
                            "end": {
                              "line": 121,
                              "column": 51
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3523,
                            "end": 3567,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 6
                              },
                              "end": {
                                "line": 121,
                                "column": 50
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 3523,
                              "end": 3530,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 6
                                },
                                "end": {
                                  "line": 121,
                                  "column": 13
                                },
                                "identifierName": "display"
                              },
                              "name": "display"
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 3533,
                              "end": 3567,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 16
                                },
                                "end": {
                                  "line": 121,
                                  "column": 50
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 3533,
                                "end": 3540,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 23
                                  },
                                  "identifierName": "display"
                                },
                                "name": "display"
                              },
                              "operator": "||",
                              "right": {
                                "type": "CallExpression",
                                "start": 3544,
                                "end": 3567,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 50
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3544,
                                  "end": 3565,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3544,
                                    "end": 3548,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3549,
                                    "end": 3565,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 48
                                      },
                                      "identifierName": "getDefaultDiplay"
                                    },
                                    "name": "getDefaultDiplay"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 3583,
                    "end": 3616,
                    "loc": {
                      "start": {
                        "line": 124,
                        "column": 4
                      },
                      "end": {
                        "line": 124,
                        "column": 37
                      }
                    },
                    "argument": {
                      "type": "LogicalExpression",
                      "start": 3590,
                      "end": 3615,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 11
                        },
                        "end": {
                          "line": 124,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 3590,
                        "end": 3605,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 11
                          },
                          "end": {
                            "line": 124,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 3590,
                          "end": 3597,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 11
                            },
                            "end": {
                              "line": 124,
                              "column": 18
                            },
                            "identifierName": "display"
                          },
                          "name": "display"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3598,
                          "end": 3604,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 19
                            },
                            "end": {
                              "line": 124,
                              "column": 25
                            },
                            "identifierName": "button"
                          },
                          "name": "button"
                        },
                        "computed": true
                      },
                      "operator": "||",
                      "right": {
                        "type": "Identifier",
                        "start": 3609,
                        "end": 3615,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 30
                          },
                          "end": {
                            "line": 124,
                            "column": 36
                          },
                          "identifierName": "button"
                        },
                        "name": "button"
                      }
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
                  "start": 3054,
                  "end": 3352,
                  "loc": {
                    "start": {
                      "line": 110,
                      "column": 2
                    },
                    "end": {
                      "line": 116,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 3631,
                  "end": 4025,
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 2
                    },
                    "end": {
                      "line": 136,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 4029,
              "end": 5749,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 2
                },
                "end": {
                  "line": 178,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4029,
                "end": 4044,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 2
                  },
                  "end": {
                    "line": 137,
                    "column": 17
                  },
                  "identifierName": "getUpdatedInput"
                },
                "name": "getUpdatedInput",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 4045,
                  "end": 4051,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 18
                    },
                    "end": {
                      "line": 137,
                      "column": 24
                    },
                    "identifierName": "button"
                  },
                  "name": "button"
                },
                {
                  "type": "Identifier",
                  "start": 4053,
                  "end": 4058,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 26
                    },
                    "end": {
                      "line": 137,
                      "column": 31
                    },
                    "identifierName": "input"
                  },
                  "name": "input"
                },
                {
                  "type": "Identifier",
                  "start": 4060,
                  "end": 4067,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 33
                    },
                    "end": {
                      "line": 137,
                      "column": 40
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                },
                {
                  "type": "Identifier",
                  "start": 4069,
                  "end": 4077,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 42
                    },
                    "end": {
                      "line": 137,
                      "column": 50
                    },
                    "identifierName": "caretPos"
                  },
                  "name": "caretPos"
                },
                {
                  "type": "Identifier",
                  "start": 4079,
                  "end": 4088,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 52
                    },
                    "end": {
                      "line": 137,
                      "column": 61
                    },
                    "identifierName": "moveCaret"
                  },
                  "name": "moveCaret"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 4089,
                "end": 5749,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 62
                  },
                  "end": {
                    "line": 178,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 4102,
                    "end": 4121,
                    "loc": {
                      "start": {
                        "line": 139,
                        "column": 4
                      },
                      "end": {
                        "line": 139,
                        "column": 23
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 4106,
                        "end": 4120,
                        "loc": {
                          "start": {
                            "line": 139,
                            "column": 8
                          },
                          "end": {
                            "line": 139,
                            "column": 22
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 4106,
                          "end": 4112,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 8
                            },
                            "end": {
                              "line": 139,
                              "column": 14
                            },
                            "identifierName": "output"
                          },
                          "name": "output"
                        },
                        "init": {
                          "type": "Identifier",
                          "start": 4115,
                          "end": 4120,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 17
                            },
                            "end": {
                              "line": 139,
                              "column": 22
                            },
                            "identifierName": "input"
                          },
                          "name": "input"
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 4129,
                    "end": 5722,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 4
                      },
                      "end": {
                        "line": 175,
                        "column": 69
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 4132,
                      "end": 4202,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 7
                        },
                        "end": {
                          "line": 141,
                          "column": 77
                        }
                      },
                      "left": {
                        "type": "LogicalExpression",
                        "start": 4133,
                        "end": 4180,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 8
                          },
                          "end": {
                            "line": 141,
                            "column": 55
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 4133,
                          "end": 4152,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 8
                            },
                            "end": {
                              "line": 141,
                              "column": 27
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 4133,
                            "end": 4139,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 8
                              },
                              "end": {
                                "line": 141,
                                "column": 14
                              },
                              "identifierName": "button"
                            },
                            "name": "button"
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 4144,
                            "end": 4152,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 19
                              },
                              "end": {
                                "line": 141,
                                "column": 27
                              }
                            },
                            "extra": {
                              "rawValue": "{bksp}",
                              "raw": "\"{bksp}\""
                            },
                            "value": "{bksp}"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 4156,
                          "end": 4180,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 31
                            },
                            "end": {
                              "line": 141,
                              "column": 55
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 4156,
                            "end": 4162,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 31
                              },
                              "end": {
                                "line": 141,
                                "column": 37
                              },
                              "identifierName": "button"
                            },
                            "name": "button"
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 4167,
                            "end": 4180,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 42
                              },
                              "end": {
                                "line": 141,
                                "column": 55
                              }
                            },
                            "extra": {
                              "rawValue": "{backspace}",
                              "raw": "\"{backspace}\""
                            },
                            "value": "{backspace}"
                          }
                        },
                        "extra": {
                          "parenthesized": true,
                          "parenStart": 4132
                        }
                      },
                      "operator": "&&",
                      "right": {
                        "type": "BinaryExpression",
                        "start": 4185,
                        "end": 4202,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 60
                          },
                          "end": {
                            "line": 141,
                            "column": 77
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 4185,
                          "end": 4198,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 60
                            },
                            "end": {
                              "line": 141,
                              "column": 73
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4185,
                            "end": 4191,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 60
                              },
                              "end": {
                                "line": 141,
                                "column": 66
                              },
                              "identifierName": "output"
                            },
                            "name": "output"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4192,
                            "end": 4198,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 67
                              },
                              "end": {
                                "line": 141,
                                "column": 73
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "operator": ">",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 4201,
                          "end": 4202,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 76
                            },
                            "end": {
                              "line": 141,
                              "column": 77
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 4203,
                      "end": 4273,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 78
                        },
                        "end": {
                          "line": 144,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 4212,
                          "end": 4264,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 6
                            },
                            "end": {
                              "line": 142,
                              "column": 58
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4212,
                            "end": 4263,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 6
                              },
                              "end": {
                                "line": 142,
                                "column": 57
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 4212,
                              "end": 4218,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 6
                                },
                                "end": {
                                  "line": 142,
                                  "column": 12
                                },
                                "identifierName": "output"
                              },
                              "name": "output"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 4221,
                              "end": 4263,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 15
                                },
                                "end": {
                                  "line": 142,
                                  "column": 57
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4221,
                                "end": 4234,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4221,
                                  "end": 4225,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4226,
                                  "end": 4234,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 28
                                    },
                                    "identifierName": "removeAt"
                                  },
                                  "name": "removeAt"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4235,
                                  "end": 4241,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 35
                                    },
                                    "identifierName": "output"
                                  },
                                  "name": "output"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4243,
                                  "end": 4251,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 45
                                    },
                                    "identifierName": "caretPos"
                                  },
                                  "name": "caretPos"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4253,
                                  "end": 4262,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 56
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "IfStatement",
                      "start": 4279,
                      "end": 5722,
                      "loc": {
                        "start": {
                          "line": 144,
                          "column": 11
                        },
                        "end": {
                          "line": 175,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 4282,
                        "end": 4302,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 14
                          },
                          "end": {
                            "line": 144,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 4282,
                          "end": 4288,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 14
                            },
                            "end": {
                              "line": 144,
                              "column": 20
                            },
                            "identifierName": "button"
                          },
                          "name": "button"
                        },
                        "operator": "===",
                        "right": {
                          "type": "StringLiteral",
                          "start": 4293,
                          "end": 4302,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 25
                            },
                            "end": {
                              "line": 144,
                              "column": 34
                            }
                          },
                          "extra": {
                            "rawValue": "{space}",
                            "raw": "\"{space}\""
                          },
                          "value": "{space}"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 4311,
                        "end": 4371,
                        "loc": {
                          "start": {
                            "line": 145,
                            "column": 6
                          },
                          "end": {
                            "line": 145,
                            "column": 66
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 4311,
                          "end": 4370,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 6
                            },
                            "end": {
                              "line": 145,
                              "column": 65
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 4311,
                            "end": 4317,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 6
                              },
                              "end": {
                                "line": 145,
                                "column": 12
                              },
                              "identifierName": "output"
                            },
                            "name": "output"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 4320,
                            "end": 4370,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 15
                              },
                              "end": {
                                "line": 145,
                                "column": 65
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4320,
                              "end": 4336,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 15
                                },
                                "end": {
                                  "line": 145,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4320,
                                "end": 4324,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 19
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4325,
                                "end": 4336,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 31
                                  },
                                  "identifierName": "addStringAt"
                                },
                                "name": "addStringAt"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 4337,
                                "end": 4343,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 38
                                  },
                                  "identifierName": "output"
                                },
                                "name": "output"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 4345,
                                "end": 4348,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 43
                                  }
                                },
                                "extra": {
                                  "rawValue": " ",
                                  "raw": "\" \""
                                },
                                "value": " "
                              },
                              {
                                "type": "Identifier",
                                "start": 4350,
                                "end": 4358,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 53
                                  },
                                  "identifierName": "caretPos"
                                },
                                "name": "caretPos"
                              },
                              {
                                "type": "Identifier",
                                "start": 4360,
                                "end": 4369,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 64
                                  },
                                  "identifierName": "moveCaret"
                                },
                                "name": "moveCaret"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 4384,
                        "end": 5722,
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 9
                          },
                          "end": {
                            "line": 175,
                            "column": 69
                          }
                        },
                        "test": {
                          "type": "LogicalExpression",
                          "start": 4387,
                          "end": 4487,
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 12
                            },
                            "end": {
                              "line": 147,
                              "column": 112
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 4387,
                            "end": 4405,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 147,
                                "column": 30
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4387,
                              "end": 4393,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 12
                                },
                                "end": {
                                  "line": 147,
                                  "column": 18
                                },
                                "identifierName": "button"
                              },
                              "name": "button"
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 4398,
                              "end": 4405,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 23
                                },
                                "end": {
                                  "line": 147,
                                  "column": 30
                                }
                              },
                              "extra": {
                                "rawValue": "{tab}",
                                "raw": "\"{tab}\""
                              },
                              "value": "{tab}"
                            }
                          },
                          "operator": "&&",
                          "right": {
                            "type": "UnaryExpression",
                            "start": 4409,
                            "end": 4487,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 34
                              },
                              "end": {
                                "line": 147,
                                "column": 112
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "LogicalExpression",
                              "start": 4411,
                              "end": 4486,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 36
                                },
                                "end": {
                                  "line": 147,
                                  "column": 111
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 4411,
                                "end": 4452,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 77
                                  }
                                },
                                "left": {
                                  "type": "UnaryExpression",
                                  "start": 4411,
                                  "end": 4438,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 63
                                    }
                                  },
                                  "operator": "typeof",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 4418,
                                    "end": 4438,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 63
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4418,
                                      "end": 4425,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 50
                                        },
                                        "identifierName": "options"
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4426,
                                      "end": 4438,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 63
                                        },
                                        "identifierName": "tabCharOnTab"
                                      },
                                      "name": "tabCharOnTab"
                                    },
                                    "computed": false
                                  },
                                  "extra": {
                                    "parenthesizedArgument": false
                                  }
                                },
                                "operator": "===",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 4443,
                                  "end": 4452,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 77
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "boolean",
                                    "raw": "\"boolean\""
                                  },
                                  "value": "boolean"
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 4456,
                                "end": 4486,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 81
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 111
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 4456,
                                  "end": 4476,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 101
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4456,
                                    "end": 4463,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 88
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4464,
                                    "end": 4476,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 101
                                      },
                                      "identifierName": "tabCharOnTab"
                                    },
                                    "name": "tabCharOnTab"
                                  },
                                  "computed": false
                                },
                                "operator": "===",
                                "right": {
                                  "type": "BooleanLiteral",
                                  "start": 4481,
                                  "end": 4486,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 106
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 111
                                    }
                                  },
                                  "value": false
                                }
                              },
                              "extra": {
                                "parenthesized": true,
                                "parenStart": 4410
                              }
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          }
                        },
                        "consequent": {
                          "type": "BlockStatement",
                          "start": 4488,
                          "end": 4567,
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 113
                            },
                            "end": {
                              "line": 150,
                              "column": 5
                            }
                          },
                          "body": [
                            {
                              "type": "ExpressionStatement",
                              "start": 4497,
                              "end": 4558,
                              "loc": {
                                "start": {
                                  "line": 148,
                                  "column": 6
                                },
                                "end": {
                                  "line": 148,
                                  "column": 67
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4497,
                                "end": 4557,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 66
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 4497,
                                  "end": 4503,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 12
                                    },
                                    "identifierName": "output"
                                  },
                                  "name": "output"
                                },
                                "right": {
                                  "type": "CallExpression",
                                  "start": 4506,
                                  "end": 4557,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 4506,
                                    "end": 4522,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 4506,
                                      "end": 4510,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4511,
                                      "end": 4522,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 31
                                        },
                                        "identifierName": "addStringAt"
                                      },
                                      "name": "addStringAt"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 4523,
                                      "end": 4529,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 38
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    {
                                      "type": "StringLiteral",
                                      "start": 4531,
                                      "end": 4535,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 44
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "\t",
                                        "raw": "\"\\t\""
                                      },
                                      "value": "\t"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 4537,
                                      "end": 4545,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 54
                                        },
                                        "identifierName": "caretPos"
                                      },
                                      "name": "caretPos"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 4547,
                                      "end": 4556,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 65
                                        },
                                        "identifierName": "moveCaret"
                                      },
                                      "name": "moveCaret"
                                    }
                                  ]
                                }
                              }
                            }
                          ],
                          "directives": []
                        },
                        "alternate": {
                          "type": "IfStatement",
                          "start": 4573,
                          "end": 5722,
                          "loc": {
                            "start": {
                              "line": 150,
                              "column": 11
                            },
                            "end": {
                              "line": 175,
                              "column": 69
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 4576,
                            "end": 4654,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 14
                              },
                              "end": {
                                "line": 150,
                                "column": 92
                              }
                            },
                            "left": {
                              "type": "LogicalExpression",
                              "start": 4577,
                              "end": 4627,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 15
                                },
                                "end": {
                                  "line": 150,
                                  "column": 65
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 4577,
                                "end": 4597,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 35
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 4577,
                                  "end": 4583,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 21
                                    },
                                    "identifierName": "button"
                                  },
                                  "name": "button"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 4588,
                                  "end": 4597,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 35
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "{enter}",
                                    "raw": "\"{enter}\""
                                  },
                                  "value": "{enter}"
                                }
                              },
                              "operator": "||",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 4601,
                                "end": 4627,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 4601,
                                  "end": 4607,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 45
                                    },
                                    "identifierName": "button"
                                  },
                                  "name": "button"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 4612,
                                  "end": 4627,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 65
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "{numpadenter}",
                                    "raw": "\"{numpadenter}\""
                                  },
                                  "value": "{numpadenter}"
                                }
                              },
                              "extra": {
                                "parenthesized": true,
                                "parenStart": 4576
                              }
                            },
                            "operator": "&&",
                            "right": {
                              "type": "MemberExpression",
                              "start": 4632,
                              "end": 4654,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 70
                                },
                                "end": {
                                  "line": 150,
                                  "column": 92
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 4632,
                                "end": 4639,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 77
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4640,
                                "end": 4654,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 92
                                  },
                                  "identifierName": "newLineOnEnter"
                                },
                                "name": "newLineOnEnter"
                              },
                              "computed": false
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 4663,
                            "end": 4724,
                            "loc": {
                              "start": {
                                "line": 151,
                                "column": 6
                              },
                              "end": {
                                "line": 151,
                                "column": 67
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4663,
                              "end": 4723,
                              "loc": {
                                "start": {
                                  "line": 151,
                                  "column": 6
                                },
                                "end": {
                                  "line": 151,
                                  "column": 66
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4663,
                                "end": 4669,
                                "loc": {
                                  "start": {
                                    "line": 151,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 151,
                                    "column": 12
                                  },
                                  "identifierName": "output"
                                },
                                "name": "output"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 4672,
                                "end": 4723,
                                "loc": {
                                  "start": {
                                    "line": 151,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 151,
                                    "column": 66
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4672,
                                  "end": 4688,
                                  "loc": {
                                    "start": {
                                      "line": 151,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 151,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4672,
                                    "end": 4676,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4677,
                                    "end": 4688,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 31
                                      },
                                      "identifierName": "addStringAt"
                                    },
                                    "name": "addStringAt"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 4689,
                                    "end": 4695,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 38
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 4697,
                                    "end": 4701,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 44
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "\n",
                                      "raw": "\"\\n\""
                                    },
                                    "value": "\n"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 4703,
                                    "end": 4711,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 54
                                      },
                                      "identifierName": "caretPos"
                                    },
                                    "name": "caretPos"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 4713,
                                    "end": 4722,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 65
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  }
                                ]
                              }
                            }
                          },
                          "alternate": {
                            "type": "IfStatement",
                            "start": 4737,
                            "end": 5722,
                            "loc": {
                              "start": {
                                "line": 153,
                                "column": 9
                              },
                              "end": {
                                "line": 175,
                                "column": 69
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 4740,
                              "end": 4820,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 12
                                },
                                "end": {
                                  "line": 153,
                                  "column": 92
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 4740,
                                "end": 4765,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 37
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4740,
                                  "end": 4755,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4740,
                                    "end": 4746,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 18
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4747,
                                    "end": 4755,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 27
                                      },
                                      "identifierName": "includes"
                                    },
                                    "name": "includes"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 4756,
                                    "end": 4764,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 36
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "numpad",
                                      "raw": "\"numpad\""
                                    },
                                    "value": "numpad"
                                  }
                                ]
                              },
                              "operator": "&&",
                              "right": {
                                "type": "CallExpression",
                                "start": 4769,
                                "end": 4820,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 92
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4769,
                                  "end": 4785,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4769,
                                    "end": 4775,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 47
                                      },
                                      "identifierName": "Number"
                                    },
                                    "name": "Number"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4776,
                                    "end": 4785,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 57
                                      },
                                      "identifierName": "isInteger"
                                    },
                                    "name": "isInteger"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 4786,
                                    "end": 4819,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 91
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 4786,
                                      "end": 4792,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 64
                                        },
                                        "identifierName": "Number"
                                      },
                                      "name": "Number"
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 4793,
                                        "end": 4818,
                                        "loc": {
                                          "start": {
                                            "line": 153,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 153,
                                            "column": 90
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 4793,
                                          "end": 4799,
                                          "loc": {
                                            "start": {
                                              "line": 153,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 153,
                                              "column": 71
                                            },
                                            "identifierName": "button"
                                          },
                                          "name": "button"
                                        },
                                        "property": {
                                          "type": "BinaryExpression",
                                          "start": 4800,
                                          "end": 4817,
                                          "loc": {
                                            "start": {
                                              "line": 153,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 153,
                                              "column": 89
                                            }
                                          },
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 4800,
                                            "end": 4813,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 85
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 4800,
                                              "end": 4806,
                                              "loc": {
                                                "start": {
                                                  "line": 153,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 153,
                                                  "column": 78
                                                },
                                                "identifierName": "button"
                                              },
                                              "name": "button"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4807,
                                              "end": 4813,
                                              "loc": {
                                                "start": {
                                                  "line": 153,
                                                  "column": 79
                                                },
                                                "end": {
                                                  "line": 153,
                                                  "column": 85
                                                },
                                                "identifierName": "length"
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "NumericLiteral",
                                            "start": 4816,
                                            "end": 4817,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 88
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 89
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "value": 2
                                          }
                                        },
                                        "computed": true
                                      }
                                    ]
                                  }
                                ]
                              }
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 4821,
                              "end": 4908,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 93
                                },
                                "end": {
                                  "line": 155,
                                  "column": 5
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4830,
                                  "end": 4901,
                                  "loc": {
                                    "start": {
                                      "line": 154,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 154,
                                      "column": 77
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4830,
                                    "end": 4900,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 76
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4830,
                                      "end": 4836,
                                      "loc": {
                                        "start": {
                                          "line": 154,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 154,
                                          "column": 12
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 4839,
                                      "end": 4900,
                                      "loc": {
                                        "start": {
                                          "line": 154,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 154,
                                          "column": 76
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 4839,
                                        "end": 4855,
                                        "loc": {
                                          "start": {
                                            "line": 154,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 154,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 4839,
                                          "end": 4843,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4844,
                                          "end": 4855,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 31
                                            },
                                            "identifierName": "addStringAt"
                                          },
                                          "name": "addStringAt"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 4856,
                                          "end": 4862,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 38
                                            },
                                            "identifierName": "output"
                                          },
                                          "name": "output"
                                        },
                                        {
                                          "type": "MemberExpression",
                                          "start": 4864,
                                          "end": 4889,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 65
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4864,
                                            "end": 4870,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 46
                                              },
                                              "identifierName": "button"
                                            },
                                            "name": "button"
                                          },
                                          "property": {
                                            "type": "BinaryExpression",
                                            "start": 4871,
                                            "end": 4888,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 64
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 4871,
                                              "end": 4884,
                                              "loc": {
                                                "start": {
                                                  "line": 154,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 154,
                                                  "column": 60
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 4871,
                                                "end": 4877,
                                                "loc": {
                                                  "start": {
                                                    "line": 154,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 154,
                                                    "column": 53
                                                  },
                                                  "identifierName": "button"
                                                },
                                                "name": "button"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4878,
                                                "end": 4884,
                                                "loc": {
                                                  "start": {
                                                    "line": 154,
                                                    "column": 54
                                                  },
                                                  "end": {
                                                    "line": 154,
                                                    "column": 60
                                                  },
                                                  "identifierName": "length"
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 4887,
                                              "end": 4888,
                                              "loc": {
                                                "start": {
                                                  "line": 154,
                                                  "column": 63
                                                },
                                                "end": {
                                                  "line": 154,
                                                  "column": 64
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "value": 2
                                            }
                                          },
                                          "computed": true
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4891,
                                          "end": 4899,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 75
                                            },
                                            "identifierName": "caretPos"
                                          },
                                          "name": "caretPos"
                                        }
                                      ]
                                    }
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "start": 4919,
                              "end": 5722,
                              "loc": {
                                "start": {
                                  "line": 156,
                                  "column": 9
                                },
                                "end": {
                                  "line": 175,
                                  "column": 69
                                }
                              },
                              "test": {
                                "type": "BinaryExpression",
                                "start": 4922,
                                "end": 4949,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 156,
                                    "column": 39
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 4922,
                                  "end": 4928,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 18
                                    },
                                    "identifierName": "button"
                                  },
                                  "name": "button"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 4933,
                                  "end": 4949,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 39
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "{numpaddivide}",
                                    "raw": "\"{numpaddivide}\""
                                  },
                                  "value": "{numpaddivide}"
                                }
                              },
                              "consequent": {
                                "type": "ExpressionStatement",
                                "start": 4958,
                                "end": 5018,
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 66
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 4958,
                                  "end": 5017,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 65
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 4958,
                                    "end": 4964,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 12
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 4967,
                                    "end": 5017,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 65
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4967,
                                      "end": 4983,
                                      "loc": {
                                        "start": {
                                          "line": 157,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 157,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 4967,
                                        "end": 4971,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4972,
                                        "end": 4983,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 31
                                          },
                                          "identifierName": "addStringAt"
                                        },
                                        "name": "addStringAt"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 4984,
                                        "end": 4990,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 38
                                          },
                                          "identifierName": "output"
                                        },
                                        "name": "output"
                                      },
                                      {
                                        "type": "StringLiteral",
                                        "start": 4992,
                                        "end": 4995,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "/",
                                          "raw": "'/'"
                                        },
                                        "value": "/"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4997,
                                        "end": 5005,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 53
                                          },
                                          "identifierName": "caretPos"
                                        },
                                        "name": "caretPos"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 5007,
                                        "end": 5016,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 64
                                          },
                                          "identifierName": "moveCaret"
                                        },
                                        "name": "moveCaret"
                                      }
                                    ]
                                  }
                                }
                              },
                              "alternate": {
                                "type": "IfStatement",
                                "start": 5031,
                                "end": 5722,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 69
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 5034,
                                  "end": 5063,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 41
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 5034,
                                    "end": 5040,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 18
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 5045,
                                    "end": 5063,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 41
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{numpadmultiply}",
                                      "raw": "\"{numpadmultiply}\""
                                    },
                                    "value": "{numpadmultiply}"
                                  }
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 5072,
                                  "end": 5132,
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 66
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 5072,
                                    "end": 5131,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 65
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 5072,
                                      "end": 5078,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 12
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 5081,
                                      "end": 5131,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 65
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 5081,
                                        "end": 5097,
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5081,
                                          "end": 5085,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5086,
                                          "end": 5097,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 31
                                            },
                                            "identifierName": "addStringAt"
                                          },
                                          "name": "addStringAt"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 5098,
                                          "end": 5104,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 38
                                            },
                                            "identifierName": "output"
                                          },
                                          "name": "output"
                                        },
                                        {
                                          "type": "StringLiteral",
                                          "start": 5106,
                                          "end": 5109,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "*",
                                            "raw": "'*'"
                                          },
                                          "value": "*"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 5111,
                                          "end": 5119,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 53
                                            },
                                            "identifierName": "caretPos"
                                          },
                                          "name": "caretPos"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 5121,
                                          "end": 5130,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 64
                                            },
                                            "identifierName": "moveCaret"
                                          },
                                          "name": "moveCaret"
                                        }
                                      ]
                                    }
                                  }
                                },
                                "alternate": {
                                  "type": "IfStatement",
                                  "start": 5145,
                                  "end": 5722,
                                  "loc": {
                                    "start": {
                                      "line": 162,
                                      "column": 9
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 69
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 5148,
                                    "end": 5177,
                                    "loc": {
                                      "start": {
                                        "line": 162,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 162,
                                        "column": 41
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 5148,
                                      "end": 5154,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 18
                                        },
                                        "identifierName": "button"
                                      },
                                      "name": "button"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "StringLiteral",
                                      "start": 5159,
                                      "end": 5177,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 41
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "{numpadsubtract}",
                                        "raw": "\"{numpadsubtract}\""
                                      },
                                      "value": "{numpadsubtract}"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 5186,
                                    "end": 5246,
                                    "loc": {
                                      "start": {
                                        "line": 163,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 163,
                                        "column": 66
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 5186,
                                      "end": 5245,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 65
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 5186,
                                        "end": 5192,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 12
                                          },
                                          "identifierName": "output"
                                        },
                                        "name": "output"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 5195,
                                        "end": 5245,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 65
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5195,
                                          "end": 5211,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5195,
                                            "end": 5199,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 19
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5200,
                                            "end": 5211,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 31
                                              },
                                              "identifierName": "addStringAt"
                                            },
                                            "name": "addStringAt"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 5212,
                                            "end": 5218,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 38
                                              },
                                              "identifierName": "output"
                                            },
                                            "name": "output"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 5220,
                                            "end": 5223,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 43
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "-",
                                              "raw": "'-'"
                                            },
                                            "value": "-"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5225,
                                            "end": 5233,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 53
                                              },
                                              "identifierName": "caretPos"
                                            },
                                            "name": "caretPos"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5235,
                                            "end": 5244,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 64
                                              },
                                              "identifierName": "moveCaret"
                                            },
                                            "name": "moveCaret"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 5259,
                                    "end": 5722,
                                    "loc": {
                                      "start": {
                                        "line": 165,
                                        "column": 9
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 69
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 5262,
                                      "end": 5286,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 165,
                                          "column": 36
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 5262,
                                        "end": 5268,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 18
                                          },
                                          "identifierName": "button"
                                        },
                                        "name": "button"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "StringLiteral",
                                        "start": 5273,
                                        "end": 5286,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 36
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "{numpadadd}",
                                          "raw": "\"{numpadadd}\""
                                        },
                                        "value": "{numpadadd}"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 5295,
                                      "end": 5355,
                                      "loc": {
                                        "start": {
                                          "line": 166,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 166,
                                          "column": 66
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 5295,
                                        "end": 5354,
                                        "loc": {
                                          "start": {
                                            "line": 166,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 166,
                                            "column": 65
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "start": 5295,
                                          "end": 5301,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 12
                                            },
                                            "identifierName": "output"
                                          },
                                          "name": "output"
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 5304,
                                          "end": 5354,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 65
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 5304,
                                            "end": 5320,
                                            "loc": {
                                              "start": {
                                                "line": 166,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 166,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5304,
                                              "end": 5308,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 19
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5309,
                                              "end": 5320,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 31
                                                },
                                                "identifierName": "addStringAt"
                                              },
                                              "name": "addStringAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 5321,
                                              "end": 5327,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 38
                                                },
                                                "identifierName": "output"
                                              },
                                              "name": "output"
                                            },
                                            {
                                              "type": "StringLiteral",
                                              "start": 5329,
                                              "end": 5332,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 43
                                                }
                                              },
                                              "extra": {
                                                "rawValue": "+",
                                                "raw": "'+'"
                                              },
                                              "value": "+"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5334,
                                              "end": 5342,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 53
                                                },
                                                "identifierName": "caretPos"
                                              },
                                              "name": "caretPos"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5344,
                                              "end": 5353,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 64
                                                },
                                                "identifierName": "moveCaret"
                                              },
                                              "name": "moveCaret"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 5368,
                                      "end": 5722,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 9
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 69
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 5371,
                                        "end": 5399,
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 40
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 5371,
                                          "end": 5377,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 18
                                            },
                                            "identifierName": "button"
                                          },
                                          "name": "button"
                                        },
                                        "operator": "===",
                                        "right": {
                                          "type": "StringLiteral",
                                          "start": 5382,
                                          "end": 5399,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 40
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "{numpaddecimal}",
                                            "raw": "\"{numpaddecimal}\""
                                          },
                                          "value": "{numpaddecimal}"
                                        }
                                      },
                                      "consequent": {
                                        "type": "ExpressionStatement",
                                        "start": 5408,
                                        "end": 5468,
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 66
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 5408,
                                          "end": 5467,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 65
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 5408,
                                            "end": 5414,
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 12
                                              },
                                              "identifierName": "output"
                                            },
                                            "name": "output"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 5417,
                                            "end": 5467,
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 65
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 5417,
                                              "end": 5433,
                                              "loc": {
                                                "start": {
                                                  "line": 169,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 169,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 5417,
                                                "end": 5421,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 19
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 5422,
                                                "end": 5433,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 31
                                                  },
                                                  "identifierName": "addStringAt"
                                                },
                                                "name": "addStringAt"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 5434,
                                                "end": 5440,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 38
                                                  },
                                                  "identifierName": "output"
                                                },
                                                "name": "output"
                                              },
                                              {
                                                "type": "StringLiteral",
                                                "start": 5442,
                                                "end": 5445,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 43
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": ".",
                                                  "raw": "'.'"
                                                },
                                                "value": "."
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 5447,
                                                "end": 5455,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 53
                                                  },
                                                  "identifierName": "caretPos"
                                                },
                                                "name": "caretPos"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 5457,
                                                "end": 5466,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 64
                                                  },
                                                  "identifierName": "moveCaret"
                                                },
                                                "name": "moveCaret"
                                              }
                                            ]
                                          }
                                        }
                                      },
                                      "alternate": {
                                        "type": "IfStatement",
                                        "start": 5481,
                                        "end": 5722,
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 9
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 69
                                          }
                                        },
                                        "test": {
                                          "type": "LogicalExpression",
                                          "start": 5484,
                                          "end": 5516,
                                          "loc": {
                                            "start": {
                                              "line": 171,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 171,
                                              "column": 44
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 5484,
                                            "end": 5498,
                                            "loc": {
                                              "start": {
                                                "line": 171,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 171,
                                                "column": 26
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 5484,
                                              "end": 5490,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 18
                                                },
                                                "identifierName": "button"
                                              },
                                              "name": "button"
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "StringLiteral",
                                              "start": 5495,
                                              "end": 5498,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 26
                                                }
                                              },
                                              "extra": {
                                                "rawValue": "{",
                                                "raw": "\"{\""
                                              },
                                              "value": "{"
                                            }
                                          },
                                          "operator": "||",
                                          "right": {
                                            "type": "BinaryExpression",
                                            "start": 5502,
                                            "end": 5516,
                                            "loc": {
                                              "start": {
                                                "line": 171,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 171,
                                                "column": 44
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 5502,
                                              "end": 5508,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 36
                                                },
                                                "identifierName": "button"
                                              },
                                              "name": "button"
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "StringLiteral",
                                              "start": 5513,
                                              "end": 5516,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 44
                                                }
                                              },
                                              "extra": {
                                                "rawValue": "}",
                                                "raw": "\"}\""
                                              },
                                              "value": "}"
                                            }
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 5525,
                                          "end": 5588,
                                          "loc": {
                                            "start": {
                                              "line": 172,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 172,
                                              "column": 69
                                            }
                                          },
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "start": 5525,
                                            "end": 5587,
                                            "loc": {
                                              "start": {
                                                "line": 172,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 172,
                                                "column": 68
                                              }
                                            },
                                            "operator": "=",
                                            "left": {
                                              "type": "Identifier",
                                              "start": 5525,
                                              "end": 5531,
                                              "loc": {
                                                "start": {
                                                  "line": 172,
                                                  "column": 6
                                                },
                                                "end": {
                                                  "line": 172,
                                                  "column": 12
                                                },
                                                "identifierName": "output"
                                              },
                                              "name": "output"
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "start": 5534,
                                              "end": 5587,
                                              "loc": {
                                                "start": {
                                                  "line": 172,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 172,
                                                  "column": 68
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 5534,
                                                "end": 5550,
                                                "loc": {
                                                  "start": {
                                                    "line": 172,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 172,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 5534,
                                                  "end": 5538,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 19
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 5539,
                                                  "end": 5550,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 31
                                                    },
                                                    "identifierName": "addStringAt"
                                                  },
                                                  "name": "addStringAt"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 5551,
                                                  "end": 5557,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 38
                                                    },
                                                    "identifierName": "output"
                                                  },
                                                  "name": "output"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 5559,
                                                  "end": 5565,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 46
                                                    },
                                                    "identifierName": "button"
                                                  },
                                                  "name": "button"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 5567,
                                                  "end": 5575,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 56
                                                    },
                                                    "identifierName": "caretPos"
                                                  },
                                                  "name": "caretPos"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 5577,
                                                  "end": 5586,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 67
                                                    },
                                                    "identifierName": "moveCaret"
                                                  },
                                                  "name": "moveCaret"
                                                }
                                              ]
                                            }
                                          }
                                        },
                                        "alternate": {
                                          "type": "IfStatement",
                                          "start": 5601,
                                          "end": 5722,
                                          "loc": {
                                            "start": {
                                              "line": 174,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 175,
                                              "column": 69
                                            }
                                          },
                                          "test": {
                                            "type": "LogicalExpression",
                                            "start": 5604,
                                            "end": 5650,
                                            "loc": {
                                              "start": {
                                                "line": 174,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 174,
                                                "column": 58
                                              }
                                            },
                                            "left": {
                                              "type": "UnaryExpression",
                                              "start": 5604,
                                              "end": 5625,
                                              "loc": {
                                                "start": {
                                                  "line": 174,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 174,
                                                  "column": 33
                                                }
                                              },
                                              "operator": "!",
                                              "prefix": true,
                                              "argument": {
                                                "type": "CallExpression",
                                                "start": 5605,
                                                "end": 5625,
                                                "loc": {
                                                  "start": {
                                                    "line": 174,
                                                    "column": 13
                                                  },
                                                  "end": {
                                                    "line": 174,
                                                    "column": 33
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5605,
                                                  "end": 5620,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 13
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 28
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 5605,
                                                    "end": 5611,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 13
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 19
                                                      },
                                                      "identifierName": "button"
                                                    },
                                                    "name": "button"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5612,
                                                    "end": 5620,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 28
                                                      },
                                                      "identifierName": "includes"
                                                    },
                                                    "name": "includes"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "StringLiteral",
                                                    "start": 5621,
                                                    "end": 5624,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 32
                                                      }
                                                    },
                                                    "extra": {
                                                      "rawValue": "{",
                                                      "raw": "\"{\""
                                                    },
                                                    "value": "{"
                                                  }
                                                ]
                                              },
                                              "extra": {
                                                "parenthesizedArgument": false
                                              }
                                            },
                                            "operator": "&&",
                                            "right": {
                                              "type": "UnaryExpression",
                                              "start": 5629,
                                              "end": 5650,
                                              "loc": {
                                                "start": {
                                                  "line": 174,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 174,
                                                  "column": 58
                                                }
                                              },
                                              "operator": "!",
                                              "prefix": true,
                                              "argument": {
                                                "type": "CallExpression",
                                                "start": 5630,
                                                "end": 5650,
                                                "loc": {
                                                  "start": {
                                                    "line": 174,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 174,
                                                    "column": 58
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5630,
                                                  "end": 5645,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 53
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 5630,
                                                    "end": 5636,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 44
                                                      },
                                                      "identifierName": "button"
                                                    },
                                                    "name": "button"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5637,
                                                    "end": 5645,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 53
                                                      },
                                                      "identifierName": "includes"
                                                    },
                                                    "name": "includes"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "StringLiteral",
                                                    "start": 5646,
                                                    "end": 5649,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 54
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 57
                                                      }
                                                    },
                                                    "extra": {
                                                      "rawValue": "}",
                                                      "raw": "\"}\""
                                                    },
                                                    "value": "}"
                                                  }
                                                ]
                                              },
                                              "extra": {
                                                "parenthesizedArgument": false
                                              }
                                            }
                                          },
                                          "consequent": {
                                            "type": "ExpressionStatement",
                                            "start": 5659,
                                            "end": 5722,
                                            "loc": {
                                              "start": {
                                                "line": 175,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 175,
                                                "column": 69
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 5659,
                                              "end": 5721,
                                              "loc": {
                                                "start": {
                                                  "line": 175,
                                                  "column": 6
                                                },
                                                "end": {
                                                  "line": 175,
                                                  "column": 68
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "Identifier",
                                                "start": 5659,
                                                "end": 5665,
                                                "loc": {
                                                  "start": {
                                                    "line": 175,
                                                    "column": 6
                                                  },
                                                  "end": {
                                                    "line": 175,
                                                    "column": 12
                                                  },
                                                  "identifierName": "output"
                                                },
                                                "name": "output"
                                              },
                                              "right": {
                                                "type": "CallExpression",
                                                "start": 5668,
                                                "end": 5721,
                                                "loc": {
                                                  "start": {
                                                    "line": 175,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 175,
                                                    "column": 68
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5668,
                                                  "end": 5684,
                                                  "loc": {
                                                    "start": {
                                                      "line": 175,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 175,
                                                      "column": 31
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 5668,
                                                    "end": 5672,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 15
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 19
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5673,
                                                    "end": 5684,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 31
                                                      },
                                                      "identifierName": "addStringAt"
                                                    },
                                                    "name": "addStringAt"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5685,
                                                    "end": 5691,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 32
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 38
                                                      },
                                                      "identifierName": "output"
                                                    },
                                                    "name": "output"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5693,
                                                    "end": 5699,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 46
                                                      },
                                                      "identifierName": "button"
                                                    },
                                                    "name": "button"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5701,
                                                    "end": 5709,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 48
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 56
                                                      },
                                                      "identifierName": "caretPos"
                                                    },
                                                    "name": "caretPos"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5711,
                                                    "end": 5720,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 67
                                                      },
                                                      "identifierName": "moveCaret"
                                                    },
                                                    "name": "moveCaret"
                                                  }
                                                ]
                                              }
                                            }
                                          },
                                          "alternate": null
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 5730,
                    "end": 5744,
                    "loc": {
                      "start": {
                        "line": 177,
                        "column": 4
                      },
                      "end": {
                        "line": 177,
                        "column": 18
                      }
                    },
                    "argument": {
                      "type": "Identifier",
                      "start": 5737,
                      "end": 5743,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 11
                        },
                        "end": {
                          "line": 177,
                          "column": 17
                        },
                        "identifierName": "output"
                      },
                      "name": "output"
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 3631,
                  "end": 4025,
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 2
                    },
                    "end": {
                      "line": 136,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                  "start": 5755,
                  "end": 5997,
                  "loc": {
                    "start": {
                      "line": 180,
                      "column": 2
                    },
                    "end": {
                      "line": 185,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 6001,
              "end": 6330,
              "loc": {
                "start": {
                  "line": 186,
                  "column": 2
                },
                "end": {
                  "line": 194,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6001,
                "end": 6015,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 2
                  },
                  "end": {
                    "line": 186,
                    "column": 16
                  },
                  "identifierName": "updateCaretPos"
                },
                "name": "updateCaretPos",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 6016,
                  "end": 6022,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 17
                    },
                    "end": {
                      "line": 186,
                      "column": 23
                    },
                    "identifierName": "length"
                  },
                  "name": "length"
                },
                {
                  "type": "Identifier",
                  "start": 6024,
                  "end": 6029,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 25
                    },
                    "end": {
                      "line": 186,
                      "column": 30
                    },
                    "identifierName": "minus"
                  },
                  "name": "minus"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 6030,
                "end": 6330,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 31
                  },
                  "end": {
                    "line": 194,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 6037,
                    "end": 6325,
                    "loc": {
                      "start": {
                        "line": 187,
                        "column": 4
                      },
                      "end": {
                        "line": 193,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 6040,
                      "end": 6094,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 7
                        },
                        "end": {
                          "line": 187,
                          "column": 61
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 6040,
                        "end": 6075,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 7
                          },
                          "end": {
                            "line": 187,
                            "column": 42
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6040,
                          "end": 6067,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 7
                            },
                            "end": {
                              "line": 187,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6040,
                            "end": 6044,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 7
                              },
                              "end": {
                                "line": 187,
                                "column": 11
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6045,
                            "end": 6067,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 12
                              },
                              "end": {
                                "line": 187,
                                "column": 34
                              },
                              "identifierName": "simpleKeyboardInstance"
                            },
                            "name": "simpleKeyboardInstance"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6068,
                          "end": 6075,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 35
                            },
                            "end": {
                              "line": 187,
                              "column": 42
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6076,
                        "end": 6094,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 43
                          },
                          "end": {
                            "line": 187,
                            "column": 61
                          },
                          "identifierName": "syncInstanceInputs"
                        },
                        "name": "syncInstanceInputs"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 6095,
                      "end": 6233,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 62
                        },
                        "end": {
                          "line": 191,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6104,
                          "end": 6226,
                          "loc": {
                            "start": {
                              "line": 188,
                              "column": 6
                            },
                            "end": {
                              "line": 190,
                              "column": 9
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6104,
                            "end": 6225,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 6
                              },
                              "end": {
                                "line": 190,
                                "column": 8
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6104,
                              "end": 6140,
                              "loc": {
                                "start": {
                                  "line": 188,
                                  "column": 6
                                },
                                "end": {
                                  "line": 188,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6104,
                                "end": 6131,
                                "loc": {
                                  "start": {
                                    "line": 188,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6104,
                                  "end": 6108,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6109,
                                  "end": 6131,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 33
                                    },
                                    "identifierName": "simpleKeyboardInstance"
                                  },
                                  "name": "simpleKeyboardInstance"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6132,
                                "end": 6140,
                                "loc": {
                                  "start": {
                                    "line": 188,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 42
                                  },
                                  "identifierName": "dispatch"
                                },
                                "name": "dispatch"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 6141,
                                "end": 6224,
                                "loc": {
                                  "start": {
                                    "line": 188,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 190,
                                    "column": 7
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": false,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "start": 6141,
                                    "end": 6149,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 51
                                      },
                                      "identifierName": "instance"
                                    },
                                    "name": "instance"
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 6153,
                                  "end": 6224,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 190,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 6164,
                                      "end": 6215,
                                      "loc": {
                                        "start": {
                                          "line": 189,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 189,
                                          "column": 59
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 6164,
                                        "end": 6214,
                                        "loc": {
                                          "start": {
                                            "line": 189,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 189,
                                            "column": 58
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 6164,
                                          "end": 6189,
                                          "loc": {
                                            "start": {
                                              "line": 189,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 189,
                                              "column": 33
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 6164,
                                            "end": 6168,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 12
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 6169,
                                            "end": 6189,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 13
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 33
                                              },
                                              "identifierName": "updateCaretPosAction"
                                            },
                                            "name": "updateCaretPosAction"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 6190,
                                            "end": 6198,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 42
                                              },
                                              "identifierName": "instance"
                                            },
                                            "name": "instance"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 6200,
                                            "end": 6206,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 50
                                              },
                                              "identifierName": "length"
                                            },
                                            "name": "length"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 6208,
                                            "end": 6213,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 57
                                              },
                                              "identifierName": "minus"
                                            },
                                            "name": "minus"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 6239,
                      "end": 6325,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 11
                        },
                        "end": {
                          "line": 193,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6248,
                          "end": 6318,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 6
                            },
                            "end": {
                              "line": 192,
                              "column": 76
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6248,
                            "end": 6317,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 6
                              },
                              "end": {
                                "line": 192,
                                "column": 75
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6248,
                              "end": 6273,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 6
                                },
                                "end": {
                                  "line": 192,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6248,
                                "end": 6252,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6253,
                                "end": 6273,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 31
                                  },
                                  "identifierName": "updateCaretPosAction"
                                },
                                "name": "updateCaretPosAction"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 6274,
                                "end": 6301,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6274,
                                  "end": 6278,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6279,
                                  "end": 6301,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 59
                                    },
                                    "identifierName": "simpleKeyboardInstance"
                                  },
                                  "name": "simpleKeyboardInstance"
                                },
                                "computed": false
                              },
                              {
                                "type": "Identifier",
                                "start": 6303,
                                "end": 6309,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 67
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              },
                              {
                                "type": "Identifier",
                                "start": 6311,
                                "end": 6316,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 74
                                  },
                                  "identifierName": "minus"
                                },
                                "name": "minus"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                  "start": 5755,
                  "end": 5997,
                  "loc": {
                    "start": {
                      "line": 180,
                      "column": 2
                    },
                    "end": {
                      "line": 185,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                  "start": 6336,
                  "end": 6644,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 2
                    },
                    "end": {
                      "line": 202,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 6648,
              "end": 7056,
              "loc": {
                "start": {
                  "line": 203,
                  "column": 2
                },
                "end": {
                  "line": 214,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6648,
                "end": 6668,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 2
                  },
                  "end": {
                    "line": 203,
                    "column": 22
                  },
                  "identifierName": "updateCaretPosAction"
                },
                "name": "updateCaretPosAction",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 6669,
                  "end": 6677,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 23
                    },
                    "end": {
                      "line": 203,
                      "column": 31
                    },
                    "identifierName": "instance"
                  },
                  "name": "instance"
                },
                {
                  "type": "Identifier",
                  "start": 6679,
                  "end": 6685,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 33
                    },
                    "end": {
                      "line": 203,
                      "column": 39
                    },
                    "identifierName": "length"
                  },
                  "name": "length"
                },
                {
                  "type": "Identifier",
                  "start": 6687,
                  "end": 6692,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 41
                    },
                    "end": {
                      "line": 203,
                      "column": 46
                    },
                    "identifierName": "minus"
                  },
                  "name": "minus"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 6693,
                "end": 7056,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 47
                  },
                  "end": {
                    "line": 214,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 6700,
                    "end": 6899,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 4
                      },
                      "end": {
                        "line": 209,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 6703,
                      "end": 6708,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 7
                        },
                        "end": {
                          "line": 204,
                          "column": 12
                        },
                        "identifierName": "minus"
                      },
                      "name": "minus"
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 6709,
                      "end": 6820,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 13
                        },
                        "end": {
                          "line": 207,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 6718,
                          "end": 6813,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 6
                            },
                            "end": {
                              "line": 206,
                              "column": 63
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 6721,
                            "end": 6747,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 9
                              },
                              "end": {
                                "line": 205,
                                "column": 35
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 6721,
                              "end": 6743,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 9
                                },
                                "end": {
                                  "line": 205,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6721,
                                "end": 6729,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 17
                                  },
                                  "identifierName": "instance"
                                },
                                "name": "instance"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6730,
                                "end": 6743,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 31
                                  },
                                  "identifierName": "caretPosition"
                                },
                                "name": "caretPosition"
                              },
                              "computed": false
                            },
                            "operator": ">",
                            "right": {
                              "type": "NumericLiteral",
                              "start": 6746,
                              "end": 6747,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 34
                                },
                                "end": {
                                  "line": 205,
                                  "column": 35
                                }
                              },
                              "extra": {
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "value": 0
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 6756,
                            "end": 6813,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 6
                              },
                              "end": {
                                "line": 206,
                                "column": 63
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 6756,
                              "end": 6812,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 6
                                },
                                "end": {
                                  "line": 206,
                                  "column": 62
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 6756,
                                "end": 6778,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6756,
                                  "end": 6764,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 14
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6765,
                                  "end": 6778,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 28
                                    },
                                    "identifierName": "caretPosition"
                                  },
                                  "name": "caretPosition"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 6781,
                                "end": 6812,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 62
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 6781,
                                  "end": 6803,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6781,
                                    "end": 6789,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 39
                                      },
                                      "identifierName": "instance"
                                    },
                                    "name": "instance"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6790,
                                    "end": 6803,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 53
                                      },
                                      "identifierName": "caretPosition"
                                    },
                                    "name": "caretPosition"
                                  },
                                  "computed": false
                                },
                                "operator": "-",
                                "right": {
                                  "type": "Identifier",
                                  "start": 6806,
                                  "end": 6812,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 62
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                }
                              }
                            }
                          },
                          "alternate": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 6826,
                      "end": 6899,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 11
                        },
                        "end": {
                          "line": 209,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6835,
                          "end": 6892,
                          "loc": {
                            "start": {
                              "line": 208,
                              "column": 6
                            },
                            "end": {
                              "line": 208,
                              "column": 63
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 6835,
                            "end": 6891,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 6
                              },
                              "end": {
                                "line": 208,
                                "column": 62
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 6835,
                              "end": 6857,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 6
                                },
                                "end": {
                                  "line": 208,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6835,
                                "end": 6843,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 14
                                  },
                                  "identifierName": "instance"
                                },
                                "name": "instance"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6844,
                                "end": 6857,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 28
                                  },
                                  "identifierName": "caretPosition"
                                },
                                "name": "caretPosition"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "start": 6860,
                              "end": 6891,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 31
                                },
                                "end": {
                                  "line": 208,
                                  "column": 62
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 6860,
                                "end": 6882,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6860,
                                  "end": 6868,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 39
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6869,
                                  "end": 6882,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 53
                                    },
                                    "identifierName": "caretPosition"
                                  },
                                  "name": "caretPosition"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 6885,
                                "end": 6891,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 62
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 6907,
                    "end": 7051,
                    "loc": {
                      "start": {
                        "line": 211,
                        "column": 4
                      },
                      "end": {
                        "line": 213,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 6910,
                      "end": 6951,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 7
                        },
                        "end": {
                          "line": 211,
                          "column": 48
                        }
                      },
                      "object": {
                        "type": "MemberExpression",
                        "start": 6910,
                        "end": 6945,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 7
                          },
                          "end": {
                            "line": 211,
                            "column": 42
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6910,
                          "end": 6937,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 7
                            },
                            "end": {
                              "line": 211,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6910,
                            "end": 6914,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 7
                              },
                              "end": {
                                "line": 211,
                                "column": 11
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6915,
                            "end": 6937,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 12
                              },
                              "end": {
                                "line": 211,
                                "column": 34
                              },
                              "identifierName": "simpleKeyboardInstance"
                            },
                            "name": "simpleKeyboardInstance"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6938,
                          "end": 6945,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 35
                            },
                            "end": {
                              "line": 211,
                              "column": 42
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "computed": false
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6946,
                        "end": 6951,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 43
                          },
                          "end": {
                            "line": 211,
                            "column": 48
                          },
                          "identifierName": "debug"
                        },
                        "name": "debug"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 6952,
                      "end": 7051,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 49
                        },
                        "end": {
                          "line": 213,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6961,
                          "end": 7044,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 6
                            },
                            "end": {
                              "line": 212,
                              "column": 89
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 6961,
                            "end": 7043,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 6
                              },
                              "end": {
                                "line": 212,
                                "column": 88
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6961,
                              "end": 6972,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 6
                                },
                                "end": {
                                  "line": 212,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6961,
                                "end": 6968,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 13
                                  },
                                  "identifierName": "console"
                                },
                                "name": "console"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6969,
                                "end": 6972,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 17
                                  },
                                  "identifierName": "log"
                                },
                                "name": "log"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "StringLiteral",
                                "start": 6973,
                                "end": 6984,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 29
                                  }
                                },
                                "extra": {
                                  "rawValue": "Caret at:",
                                  "raw": "\"Caret at:\""
                                },
                                "value": "Caret at:"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 6986,
                                "end": 7008,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6986,
                                  "end": 6994,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 39
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6995,
                                  "end": 7008,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 53
                                    },
                                    "identifierName": "caretPosition"
                                  },
                                  "name": "caretPosition"
                                },
                                "computed": false
                              },
                              {
                                "type": "TemplateLiteral",
                                "start": 7010,
                                "end": 7042,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 87
                                  }
                                },
                                "expressions": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 7014,
                                    "end": 7039,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 84
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 7014,
                                      "end": 7022,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 67
                                        },
                                        "identifierName": "instance"
                                      },
                                      "name": "instance"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7023,
                                      "end": 7039,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 84
                                        },
                                        "identifierName": "keyboardDOMClass"
                                      },
                                      "name": "keyboardDOMClass"
                                    },
                                    "computed": false
                                  }
                                ],
                                "quasis": [
                                  {
                                    "type": "TemplateElement",
                                    "start": 7011,
                                    "end": 7012,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 57
                                      }
                                    },
                                    "value": {
                                      "raw": "(",
                                      "cooked": "("
                                    },
                                    "tail": false
                                  },
                                  {
                                    "type": "TemplateElement",
                                    "start": 7040,
                                    "end": 7041,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 85
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 86
                                      }
                                    },
                                    "value": {
                                      "raw": ")",
                                      "cooked": ")"
                                    },
                                    "tail": true
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                  "start": 6336,
                  "end": 6644,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 2
                    },
                    "end": {
                      "line": 202,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 7062,
                  "end": 7391,
                  "loc": {
                    "start": {
                      "line": 216,
                      "column": 2
                    },
                    "end": {
                      "line": 223,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 7395,
              "end": 7861,
              "loc": {
                "start": {
                  "line": 224,
                  "column": 2
                },
                "end": {
                  "line": 242,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7395,
                "end": 7406,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 2
                  },
                  "end": {
                    "line": 224,
                    "column": 13
                  },
                  "identifierName": "addStringAt"
                },
                "name": "addStringAt",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 7407,
                  "end": 7413,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 14
                    },
                    "end": {
                      "line": 224,
                      "column": 20
                    },
                    "identifierName": "source"
                  },
                  "name": "source"
                },
                {
                  "type": "Identifier",
                  "start": 7415,
                  "end": 7421,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 22
                    },
                    "end": {
                      "line": 224,
                      "column": 28
                    },
                    "identifierName": "string"
                  },
                  "name": "string"
                },
                {
                  "type": "Identifier",
                  "start": 7423,
                  "end": 7431,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 30
                    },
                    "end": {
                      "line": 224,
                      "column": 38
                    },
                    "identifierName": "position"
                  },
                  "name": "position"
                },
                {
                  "type": "Identifier",
                  "start": 7433,
                  "end": 7442,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 40
                    },
                    "end": {
                      "line": 224,
                      "column": 49
                    },
                    "identifierName": "moveCaret"
                  },
                  "name": "moveCaret"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 7443,
                "end": 7861,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 50
                  },
                  "end": {
                    "line": 242,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 7450,
                    "end": 7461,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 4
                      },
                      "end": {
                        "line": 225,
                        "column": 15
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 7454,
                        "end": 7460,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 8
                          },
                          "end": {
                            "line": 225,
                            "column": 14
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 7454,
                          "end": 7460,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 8
                            },
                            "end": {
                              "line": 225,
                              "column": 14
                            },
                            "identifierName": "output"
                          },
                          "name": "output"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 7469,
                    "end": 7834,
                    "loc": {
                      "start": {
                        "line": 227,
                        "column": 4
                      },
                      "end": {
                        "line": 239,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 7472,
                      "end": 7499,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 7
                        },
                        "end": {
                          "line": 227,
                          "column": 34
                        }
                      },
                      "left": {
                        "type": "UnaryExpression",
                        "start": 7472,
                        "end": 7481,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 7
                          },
                          "end": {
                            "line": 227,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 7473,
                          "end": 7481,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 16
                            },
                            "identifierName": "position"
                          },
                          "name": "position"
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "operator": "&&",
                      "right": {
                        "type": "BinaryExpression",
                        "start": 7485,
                        "end": 7499,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 20
                          },
                          "end": {
                            "line": 227,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7485,
                          "end": 7493,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 20
                            },
                            "end": {
                              "line": 227,
                              "column": 28
                            },
                            "identifierName": "position"
                          },
                          "name": "position"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 7498,
                          "end": 7499,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 33
                            },
                            "end": {
                              "line": 227,
                              "column": 34
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 7500,
                      "end": 7541,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 35
                        },
                        "end": {
                          "line": 229,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 7509,
                          "end": 7534,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 6
                            },
                            "end": {
                              "line": 228,
                              "column": 31
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 7509,
                            "end": 7533,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 6
                              },
                              "end": {
                                "line": 228,
                                "column": 30
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 7509,
                              "end": 7515,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 6
                                },
                                "end": {
                                  "line": 228,
                                  "column": 12
                                },
                                "identifierName": "output"
                              },
                              "name": "output"
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "start": 7518,
                              "end": 7533,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 15
                                },
                                "end": {
                                  "line": 228,
                                  "column": 30
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 7518,
                                "end": 7524,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 21
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7527,
                                "end": 7533,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 30
                                  },
                                  "identifierName": "string"
                                },
                                "name": "string"
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 7547,
                      "end": 7834,
                      "loc": {
                        "start": {
                          "line": 229,
                          "column": 11
                        },
                        "end": {
                          "line": 239,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 7556,
                          "end": 7634,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 6
                            },
                            "end": {
                              "line": 230,
                              "column": 84
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 7556,
                            "end": 7633,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 6
                              },
                              "end": {
                                "line": 230,
                                "column": 83
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 7556,
                              "end": 7562,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 6
                                },
                                "end": {
                                  "line": 230,
                                  "column": 12
                                },
                                "identifierName": "output"
                              },
                              "name": "output"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 7565,
                              "end": 7633,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 15
                                },
                                "end": {
                                  "line": 230,
                                  "column": 83
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7565,
                                "end": 7629,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 79
                                  }
                                },
                                "object": {
                                  "type": "ArrayExpression",
                                  "start": 7565,
                                  "end": 7624,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 74
                                    }
                                  },
                                  "elements": [
                                    {
                                      "type": "CallExpression",
                                      "start": 7566,
                                      "end": 7591,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 41
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7566,
                                        "end": 7578,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7566,
                                          "end": 7572,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 22
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7573,
                                          "end": 7578,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 28
                                            },
                                            "identifierName": "slice"
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 7579,
                                          "end": 7580,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 30
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 7582,
                                          "end": 7590,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 40
                                            },
                                            "identifierName": "position"
                                          },
                                          "name": "position"
                                        }
                                      ]
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 7593,
                                      "end": 7599,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 49
                                        },
                                        "identifierName": "string"
                                      },
                                      "name": "string"
                                    },
                                    {
                                      "type": "CallExpression",
                                      "start": 7601,
                                      "end": 7623,
                                      "loc": {
                                        "start": {
                                          "line": 230,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 230,
                                          "column": 73
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7601,
                                        "end": 7613,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 63
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7601,
                                          "end": 7607,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 57
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7608,
                                          "end": 7613,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 63
                                            },
                                            "identifierName": "slice"
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 7614,
                                          "end": 7622,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 72
                                            },
                                            "identifierName": "position"
                                          },
                                          "name": "position"
                                        }
                                      ]
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7625,
                                  "end": 7629,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 79
                                    },
                                    "identifierName": "join"
                                  },
                                  "name": "join"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "StringLiteral",
                                  "start": 7630,
                                  "end": 7632,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 82
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "",
                                    "raw": "''"
                                  },
                                  "value": ""
                                }
                              ]
                            }
                          },
                          "trailingComments": [
                            {
                              "type": "CommentBlock",
                              "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
                              "start": 7644,
                              "end": 7718,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 6
                                },
                                "end": {
                                  "line": 234,
                                  "column": 9
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "IfStatement",
                          "start": 7726,
                          "end": 7825,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 6
                            },
                            "end": {
                              "line": 237,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 7729,
                            "end": 7755,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 9
                              },
                              "end": {
                                "line": 235,
                                "column": 35
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 7730,
                              "end": 7755,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 10
                                },
                                "end": {
                                  "line": 235,
                                  "column": 35
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7730,
                                "end": 7753,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 7730,
                                  "end": 7734,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 14
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7735,
                                  "end": 7753,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 33
                                    },
                                    "identifierName": "isMaxLengthReached"
                                  },
                                  "name": "isMaxLengthReached"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [],
                              "leadingComments": null
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            },
                            "leadingComments": null
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 7756,
                            "end": 7825,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 36
                              },
                              "end": {
                                "line": 237,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 7767,
                                "end": 7816,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 236,
                                    "column": 57
                                  }
                                },
                                "test": {
                                  "type": "Identifier",
                                  "start": 7770,
                                  "end": 7779,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 20
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 7781,
                                  "end": 7816,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7781,
                                    "end": 7815,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7781,
                                      "end": 7800,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 7781,
                                        "end": 7785,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7786,
                                        "end": 7800,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 41
                                          },
                                          "identifierName": "updateCaretPos"
                                        },
                                        "name": "updateCaretPos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 7801,
                                        "end": 7814,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7801,
                                          "end": 7807,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 48
                                            },
                                            "identifierName": "string"
                                          },
                                          "name": "string"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7808,
                                          "end": 7814,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 55
                                            },
                                            "identifierName": "length"
                                          },
                                          "name": "length"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null,
                          "leadingComments": [
                            {
                              "type": "CommentBlock",
                              "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
                              "start": 7644,
                              "end": 7718,
                              "loc": {
                                "start": {
                                  "line": 232,
                                  "column": 6
                                },
                                "end": {
                                  "line": 234,
                                  "column": 9
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 7842,
                    "end": 7856,
                    "loc": {
                      "start": {
                        "line": 241,
                        "column": 4
                      },
                      "end": {
                        "line": 241,
                        "column": 18
                      }
                    },
                    "argument": {
                      "type": "Identifier",
                      "start": 7849,
                      "end": 7855,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 11
                        },
                        "end": {
                          "line": 241,
                          "column": 17
                        },
                        "identifierName": "output"
                      },
                      "name": "output"
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 7062,
                  "end": 7391,
                  "loc": {
                    "start": {
                      "line": 216,
                      "column": 2
                    },
                    "end": {
                      "line": 223,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 7867,
                  "end": 8164,
                  "loc": {
                    "start": {
                      "line": 244,
                      "column": 2
                    },
                    "end": {
                      "line": 250,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 8168,
              "end": 9465,
              "loc": {
                "start": {
                  "line": 251,
                  "column": 2
                },
                "end": {
                  "line": 290,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8168,
                "end": 8176,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 2
                  },
                  "end": {
                    "line": 251,
                    "column": 10
                  },
                  "identifierName": "removeAt"
                },
                "name": "removeAt",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 8177,
                  "end": 8183,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 11
                    },
                    "end": {
                      "line": 251,
                      "column": 17
                    },
                    "identifierName": "source"
                  },
                  "name": "source"
                },
                {
                  "type": "Identifier",
                  "start": 8185,
                  "end": 8193,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 19
                    },
                    "end": {
                      "line": 251,
                      "column": 27
                    },
                    "identifierName": "position"
                  },
                  "name": "position"
                },
                {
                  "type": "Identifier",
                  "start": 8195,
                  "end": 8204,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 29
                    },
                    "end": {
                      "line": 251,
                      "column": 38
                    },
                    "identifierName": "moveCaret"
                  },
                  "name": "moveCaret"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 8205,
                "end": 9465,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 39
                  },
                  "end": {
                    "line": 290,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 8212,
                    "end": 8293,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 4
                      },
                      "end": {
                        "line": 254,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 8215,
                      "end": 8262,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 7
                        },
                        "end": {
                          "line": 252,
                          "column": 54
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 8215,
                        "end": 8256,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 7
                          },
                          "end": {
                            "line": 252,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 8215,
                          "end": 8242,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 7
                            },
                            "end": {
                              "line": 252,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 8215,
                            "end": 8219,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 7
                              },
                              "end": {
                                "line": 252,
                                "column": 11
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8220,
                            "end": 8242,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 12
                              },
                              "end": {
                                "line": 252,
                                "column": 34
                              },
                              "identifierName": "simpleKeyboardInstance"
                            },
                            "name": "simpleKeyboardInstance"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 8243,
                          "end": 8256,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 35
                            },
                            "end": {
                              "line": 252,
                              "column": 48
                            },
                            "identifierName": "caretPosition"
                          },
                          "name": "caretPosition"
                        },
                        "computed": false
                      },
                      "operator": "===",
                      "right": {
                        "type": "NumericLiteral",
                        "start": 8261,
                        "end": 8262,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 53
                          },
                          "end": {
                            "line": 252,
                            "column": 54
                          }
                        },
                        "extra": {
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "value": 0
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 8263,
                      "end": 8293,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 55
                        },
                        "end": {
                          "line": 254,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 8272,
                          "end": 8286,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 6
                            },
                            "end": {
                              "line": 253,
                              "column": 20
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 8279,
                            "end": 8285,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 13
                              },
                              "end": {
                                "line": 253,
                                "column": 19
                              },
                              "identifierName": "source"
                            },
                            "name": "source"
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8301,
                    "end": 8312,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 4
                      },
                      "end": {
                        "line": 256,
                        "column": 15
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8305,
                        "end": 8311,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 8
                          },
                          "end": {
                            "line": 256,
                            "column": 14
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8305,
                          "end": 8311,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 8
                            },
                            "end": {
                              "line": 256,
                              "column": 14
                            },
                            "identifierName": "output"
                          },
                          "name": "output"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8318,
                    "end": 8335,
                    "loc": {
                      "start": {
                        "line": 257,
                        "column": 4
                      },
                      "end": {
                        "line": 257,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8322,
                        "end": 8334,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 8
                          },
                          "end": {
                            "line": 257,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8322,
                          "end": 8334,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 20
                            },
                            "identifierName": "prevTwoChars"
                          },
                          "name": "prevTwoChars"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8341,
                    "end": 8358,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 4
                      },
                      "end": {
                        "line": 258,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8345,
                        "end": 8357,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 8
                          },
                          "end": {
                            "line": 258,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8345,
                          "end": 8357,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 8
                            },
                            "end": {
                              "line": 258,
                              "column": 20
                            },
                            "identifierName": "emojiMatched"
                          },
                          "name": "emojiMatched"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8364,
                    "end": 8422,
                    "loc": {
                      "start": {
                        "line": 259,
                        "column": 4
                      },
                      "end": {
                        "line": 259,
                        "column": 62
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8368,
                        "end": 8421,
                        "loc": {
                          "start": {
                            "line": 259,
                            "column": 8
                          },
                          "end": {
                            "line": 259,
                            "column": 61
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8368,
                          "end": 8383,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 8
                            },
                            "end": {
                              "line": 259,
                              "column": 23
                            },
                            "identifierName": "emojiMatchedReg"
                          },
                          "name": "emojiMatchedReg"
                        },
                        "init": {
                          "type": "RegExpLiteral",
                          "start": 8386,
                          "end": 8421,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 26
                            },
                            "end": {
                              "line": 259,
                              "column": 61
                            }
                          },
                          "extra": {
                            "raw": "/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g"
                          },
                          "pattern": "([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])",
                          "flags": "g"
                        }
                      }
                    ],
                    "kind": "let",
                    "trailingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
                        "start": 8430,
                        "end": 8610,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 4
                          },
                          "end": {
                            "line": 264,
                            "column": 7
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "IfStatement",
                    "start": 8616,
                    "end": 9438,
                    "loc": {
                      "start": {
                        "line": 265,
                        "column": 4
                      },
                      "end": {
                        "line": 287,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 8619,
                      "end": 8644,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 7
                        },
                        "end": {
                          "line": 265,
                          "column": 32
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 8619,
                        "end": 8627,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 7
                          },
                          "end": {
                            "line": 265,
                            "column": 15
                          },
                          "identifierName": "position"
                        },
                        "name": "position",
                        "leadingComments": null
                      },
                      "operator": "&&",
                      "right": {
                        "type": "BinaryExpression",
                        "start": 8631,
                        "end": 8644,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 19
                          },
                          "end": {
                            "line": 265,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8631,
                          "end": 8639,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 19
                            },
                            "end": {
                              "line": 265,
                              "column": 27
                            },
                            "identifierName": "position"
                          },
                          "name": "position"
                        },
                        "operator": ">=",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 8643,
                          "end": 8644,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 31
                            },
                            "end": {
                              "line": 265,
                              "column": 32
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      },
                      "leadingComments": null
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 8645,
                      "end": 9089,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 33
                        },
                        "end": {
                          "line": 276,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 8654,
                          "end": 8709,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 6
                            },
                            "end": {
                              "line": 266,
                              "column": 61
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 8654,
                            "end": 8709,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 6
                              },
                              "end": {
                                "line": 266,
                                "column": 61
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 8654,
                              "end": 8666,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 6
                                },
                                "end": {
                                  "line": 266,
                                  "column": 18
                                },
                                "identifierName": "prevTwoChars"
                              },
                              "name": "prevTwoChars"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 8669,
                              "end": 8709,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 21
                                },
                                "end": {
                                  "line": 266,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8669,
                                "end": 8685,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8669,
                                  "end": 8675,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 27
                                    },
                                    "identifierName": "source"
                                  },
                                  "name": "source"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8676,
                                  "end": 8685,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 37
                                    },
                                    "identifierName": "substring"
                                  },
                                  "name": "substring"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "start": 8686,
                                  "end": 8698,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 50
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 8686,
                                    "end": 8694,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 46
                                      },
                                      "identifierName": "position"
                                    },
                                    "name": "position"
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 8697,
                                    "end": 8698,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 50
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  }
                                },
                                {
                                  "type": "Identifier",
                                  "start": 8700,
                                  "end": 8708,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 60
                                    },
                                    "identifierName": "position"
                                  },
                                  "name": "position"
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 8717,
                          "end": 8768,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 6
                            },
                            "end": {
                              "line": 267,
                              "column": 57
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 8717,
                            "end": 8767,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 6
                              },
                              "end": {
                                "line": 267,
                                "column": 56
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 8717,
                              "end": 8729,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 6
                                },
                                "end": {
                                  "line": 267,
                                  "column": 18
                                },
                                "identifierName": "emojiMatched"
                              },
                              "name": "emojiMatched"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 8732,
                              "end": 8767,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 21
                                },
                                "end": {
                                  "line": 267,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8732,
                                "end": 8750,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8732,
                                  "end": 8744,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 33
                                    },
                                    "identifierName": "prevTwoChars"
                                  },
                                  "name": "prevTwoChars"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8745,
                                  "end": 8750,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 39
                                    },
                                    "identifierName": "match"
                                  },
                                  "name": "match"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8751,
                                  "end": 8766,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 55
                                    },
                                    "identifierName": "emojiMatchedReg"
                                  },
                                  "name": "emojiMatchedReg"
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 8778,
                          "end": 9082,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 6
                            },
                            "end": {
                              "line": 275,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "Identifier",
                            "start": 8781,
                            "end": 8793,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 9
                              },
                              "end": {
                                "line": 269,
                                "column": 21
                              },
                              "identifierName": "emojiMatched"
                            },
                            "name": "emojiMatched"
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 8794,
                            "end": 8935,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 22
                              },
                              "end": {
                                "line": 272,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 8805,
                                "end": 8873,
                                "loc": {
                                  "start": {
                                    "line": 270,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 270,
                                    "column": 76
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 8805,
                                  "end": 8872,
                                  "loc": {
                                    "start": {
                                      "line": 270,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 270,
                                      "column": 75
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 8805,
                                    "end": 8811,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 14
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 8814,
                                    "end": 8872,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 75
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 8814,
                                      "end": 8846,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 49
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8814,
                                        "end": 8827,
                                        "loc": {
                                          "start": {
                                            "line": 270,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 270,
                                            "column": 30
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8814,
                                          "end": 8820,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 23
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8821,
                                          "end": 8827,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 30
                                            },
                                            "identifierName": "substr"
                                          },
                                          "name": "substr"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 8828,
                                          "end": 8829,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 32
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 8832,
                                          "end": 8844,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 47
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8832,
                                            "end": 8840,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 43
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "NumericLiteral",
                                            "start": 8843,
                                            "end": 8844,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 47
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "value": 2
                                          },
                                          "extra": {
                                            "parenthesized": true,
                                            "parenStart": 8831
                                          }
                                        }
                                      ]
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 8849,
                                      "end": 8872,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 75
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8849,
                                        "end": 8862,
                                        "loc": {
                                          "start": {
                                            "line": 270,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 270,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8849,
                                          "end": 8855,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 58
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8856,
                                          "end": 8862,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 65
                                            },
                                            "identifierName": "substr"
                                          },
                                          "name": "substr"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 8863,
                                          "end": 8871,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 74
                                            },
                                            "identifierName": "position"
                                          },
                                          "name": "position"
                                        }
                                      ]
                                    }
                                  }
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 8883,
                                "end": 8926,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 51
                                  }
                                },
                                "test": {
                                  "type": "Identifier",
                                  "start": 8886,
                                  "end": 8895,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 20
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 8897,
                                  "end": 8926,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 8897,
                                    "end": 8925,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 8897,
                                      "end": 8916,
                                      "loc": {
                                        "start": {
                                          "line": 271,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 271,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 8897,
                                        "end": 8901,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8902,
                                        "end": 8916,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 41
                                          },
                                          "identifierName": "updateCaretPos"
                                        },
                                        "name": "updateCaretPos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 8917,
                                        "end": 8918,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "value": 2
                                      },
                                      {
                                        "type": "BooleanLiteral",
                                        "start": 8920,
                                        "end": 8924,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 49
                                          }
                                        },
                                        "value": true
                                      }
                                    ]
                                  }
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 8941,
                            "end": 9082,
                            "loc": {
                              "start": {
                                "line": 272,
                                "column": 13
                              },
                              "end": {
                                "line": 275,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 8952,
                                "end": 9020,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 76
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 8952,
                                  "end": 9019,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 75
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 8952,
                                    "end": 8958,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 14
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 8961,
                                    "end": 9019,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 75
                                      }
                                    },
                                    "left": {
                                      "type": "CallExpression",
                                      "start": 8961,
                                      "end": 8993,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 49
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8961,
                                        "end": 8974,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 30
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8961,
                                          "end": 8967,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 23
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8968,
                                          "end": 8974,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 30
                                            },
                                            "identifierName": "substr"
                                          },
                                          "name": "substr"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 8975,
                                          "end": 8976,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 32
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "BinaryExpression",
                                          "start": 8979,
                                          "end": 8991,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 47
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8979,
                                            "end": 8987,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 43
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          },
                                          "operator": "-",
                                          "right": {
                                            "type": "NumericLiteral",
                                            "start": 8990,
                                            "end": 8991,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 47
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "value": 1
                                          },
                                          "extra": {
                                            "parenthesized": true,
                                            "parenStart": 8978
                                          }
                                        }
                                      ]
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 8996,
                                      "end": 9019,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 75
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8996,
                                        "end": 9009,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 8996,
                                          "end": 9002,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 58
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9003,
                                          "end": 9009,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 65
                                            },
                                            "identifierName": "substr"
                                          },
                                          "name": "substr"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 9010,
                                          "end": 9018,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 74
                                            },
                                            "identifierName": "position"
                                          },
                                          "name": "position"
                                        }
                                      ]
                                    }
                                  }
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 9030,
                                "end": 9073,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 51
                                  }
                                },
                                "test": {
                                  "type": "Identifier",
                                  "start": 9033,
                                  "end": 9042,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 20
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 9044,
                                  "end": 9073,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 9044,
                                    "end": 9072,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9044,
                                      "end": 9063,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9044,
                                        "end": 9048,
                                        "loc": {
                                          "start": {
                                            "line": 274,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 274,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9049,
                                        "end": 9063,
                                        "loc": {
                                          "start": {
                                            "line": 274,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 274,
                                            "column": 41
                                          },
                                          "identifierName": "updateCaretPos"
                                        },
                                        "name": "updateCaretPos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 9064,
                                        "end": 9065,
                                        "loc": {
                                          "start": {
                                            "line": 274,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 274,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "value": 1
                                      },
                                      {
                                        "type": "BooleanLiteral",
                                        "start": 9067,
                                        "end": 9071,
                                        "loc": {
                                          "start": {
                                            "line": 274,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 274,
                                            "column": 49
                                          }
                                        },
                                        "value": true
                                      }
                                    ]
                                  }
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 9095,
                      "end": 9438,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 11
                        },
                        "end": {
                          "line": 287,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 9104,
                          "end": 9136,
                          "loc": {
                            "start": {
                              "line": 277,
                              "column": 6
                            },
                            "end": {
                              "line": 277,
                              "column": 38
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9104,
                            "end": 9135,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 6
                              },
                              "end": {
                                "line": 277,
                                "column": 37
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 9104,
                              "end": 9116,
                              "loc": {
                                "start": {
                                  "line": 277,
                                  "column": 6
                                },
                                "end": {
                                  "line": 277,
                                  "column": 18
                                },
                                "identifierName": "prevTwoChars"
                              },
                              "name": "prevTwoChars"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 9119,
                              "end": 9135,
                              "loc": {
                                "start": {
                                  "line": 277,
                                  "column": 21
                                },
                                "end": {
                                  "line": 277,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9119,
                                "end": 9131,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9119,
                                  "end": 9125,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 27
                                    },
                                    "identifierName": "source"
                                  },
                                  "name": "source"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9126,
                                  "end": 9131,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 33
                                    },
                                    "identifierName": "slice"
                                  },
                                  "name": "slice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "UnaryExpression",
                                  "start": 9132,
                                  "end": 9134,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 36
                                    }
                                  },
                                  "operator": "-",
                                  "prefix": true,
                                  "argument": {
                                    "type": "NumericLiteral",
                                    "start": 9133,
                                    "end": 9134,
                                    "loc": {
                                      "start": {
                                        "line": 277,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 277,
                                        "column": 36
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 2,
                                      "raw": "2"
                                    },
                                    "value": 2
                                  },
                                  "extra": {
                                    "parenthesizedArgument": false
                                  }
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 9144,
                          "end": 9195,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 6
                            },
                            "end": {
                              "line": 278,
                              "column": 57
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9144,
                            "end": 9194,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 6
                              },
                              "end": {
                                "line": 278,
                                "column": 56
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 9144,
                              "end": 9156,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 6
                                },
                                "end": {
                                  "line": 278,
                                  "column": 18
                                },
                                "identifierName": "emojiMatched"
                              },
                              "name": "emojiMatched"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 9159,
                              "end": 9194,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 21
                                },
                                "end": {
                                  "line": 278,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9159,
                                "end": 9177,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9159,
                                  "end": 9171,
                                  "loc": {
                                    "start": {
                                      "line": 278,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 278,
                                      "column": 33
                                    },
                                    "identifierName": "prevTwoChars"
                                  },
                                  "name": "prevTwoChars"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9172,
                                  "end": 9177,
                                  "loc": {
                                    "start": {
                                      "line": 278,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 278,
                                      "column": 39
                                    },
                                    "identifierName": "match"
                                  },
                                  "name": "match"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9178,
                                  "end": 9193,
                                  "loc": {
                                    "start": {
                                      "line": 278,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 278,
                                      "column": 55
                                    },
                                    "identifierName": "emojiMatchedReg"
                                  },
                                  "name": "emojiMatchedReg"
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 9205,
                          "end": 9431,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 6
                            },
                            "end": {
                              "line": 286,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "Identifier",
                            "start": 9208,
                            "end": 9220,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 9
                              },
                              "end": {
                                "line": 280,
                                "column": 21
                              },
                              "identifierName": "emojiMatched"
                            },
                            "name": "emojiMatched"
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 9221,
                            "end": 9323,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 22
                              },
                              "end": {
                                "line": 283,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 9232,
                                "end": 9261,
                                "loc": {
                                  "start": {
                                    "line": 281,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 281,
                                    "column": 37
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 9232,
                                  "end": 9260,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 36
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9232,
                                    "end": 9238,
                                    "loc": {
                                      "start": {
                                        "line": 281,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 281,
                                        "column": 14
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 9241,
                                    "end": 9260,
                                    "loc": {
                                      "start": {
                                        "line": 281,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 281,
                                        "column": 36
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9241,
                                      "end": 9253,
                                      "loc": {
                                        "start": {
                                          "line": 281,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 281,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9241,
                                        "end": 9247,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 281,
                                            "column": 23
                                          },
                                          "identifierName": "source"
                                        },
                                        "name": "source"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9248,
                                        "end": 9253,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 281,
                                            "column": 29
                                          },
                                          "identifierName": "slice"
                                        },
                                        "name": "slice"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 9254,
                                        "end": 9255,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 281,
                                            "column": 31
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "value": 0
                                      },
                                      {
                                        "type": "UnaryExpression",
                                        "start": 9257,
                                        "end": 9259,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 281,
                                            "column": 35
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "NumericLiteral",
                                          "start": 9258,
                                          "end": 9259,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 35
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "value": 2
                                        },
                                        "extra": {
                                          "parenthesizedArgument": false
                                        }
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 9271,
                                "end": 9314,
                                "loc": {
                                  "start": {
                                    "line": 282,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 282,
                                    "column": 51
                                  }
                                },
                                "test": {
                                  "type": "Identifier",
                                  "start": 9274,
                                  "end": 9283,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 20
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 9285,
                                  "end": 9314,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 9285,
                                    "end": 9313,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9285,
                                      "end": 9304,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9285,
                                        "end": 9289,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9290,
                                        "end": 9304,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 41
                                          },
                                          "identifierName": "updateCaretPos"
                                        },
                                        "name": "updateCaretPos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 9305,
                                        "end": 9306,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "value": 2
                                      },
                                      {
                                        "type": "BooleanLiteral",
                                        "start": 9308,
                                        "end": 9312,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 49
                                          }
                                        },
                                        "value": true
                                      }
                                    ]
                                  }
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 9329,
                            "end": 9431,
                            "loc": {
                              "start": {
                                "line": 283,
                                "column": 13
                              },
                              "end": {
                                "line": 286,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 9340,
                                "end": 9369,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 37
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 9340,
                                  "end": 9368,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 36
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 9340,
                                    "end": 9346,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 14
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 9349,
                                    "end": 9368,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 36
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9349,
                                      "end": 9361,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 9349,
                                        "end": 9355,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 23
                                          },
                                          "identifierName": "source"
                                        },
                                        "name": "source"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9356,
                                        "end": 9361,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 29
                                          },
                                          "identifierName": "slice"
                                        },
                                        "name": "slice"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 9362,
                                        "end": 9363,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 31
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "value": 0
                                      },
                                      {
                                        "type": "UnaryExpression",
                                        "start": 9365,
                                        "end": 9367,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 35
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "NumericLiteral",
                                          "start": 9366,
                                          "end": 9367,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 35
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "value": 1
                                        },
                                        "extra": {
                                          "parenthesizedArgument": false
                                        }
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 9379,
                                "end": 9422,
                                "loc": {
                                  "start": {
                                    "line": 285,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 285,
                                    "column": 51
                                  }
                                },
                                "test": {
                                  "type": "Identifier",
                                  "start": 9382,
                                  "end": 9391,
                                  "loc": {
                                    "start": {
                                      "line": 285,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 285,
                                      "column": 20
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 9393,
                                  "end": 9422,
                                  "loc": {
                                    "start": {
                                      "line": 285,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 285,
                                      "column": 51
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 9393,
                                    "end": 9421,
                                    "loc": {
                                      "start": {
                                        "line": 285,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 285,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9393,
                                      "end": 9412,
                                      "loc": {
                                        "start": {
                                          "line": 285,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 285,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9393,
                                        "end": 9397,
                                        "loc": {
                                          "start": {
                                            "line": 285,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 285,
                                            "column": 26
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9398,
                                        "end": 9412,
                                        "loc": {
                                          "start": {
                                            "line": 285,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 285,
                                            "column": 41
                                          },
                                          "identifierName": "updateCaretPos"
                                        },
                                        "name": "updateCaretPos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "NumericLiteral",
                                        "start": 9413,
                                        "end": 9414,
                                        "loc": {
                                          "start": {
                                            "line": 285,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 285,
                                            "column": 43
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "value": 1
                                      },
                                      {
                                        "type": "BooleanLiteral",
                                        "start": 9416,
                                        "end": 9420,
                                        "loc": {
                                          "start": {
                                            "line": 285,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 285,
                                            "column": 49
                                          }
                                        },
                                        "value": true
                                      }
                                    ]
                                  }
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
                        "start": 8430,
                        "end": 8610,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 4
                          },
                          "end": {
                            "line": 264,
                            "column": 7
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 9446,
                    "end": 9460,
                    "loc": {
                      "start": {
                        "line": 289,
                        "column": 4
                      },
                      "end": {
                        "line": 289,
                        "column": 18
                      }
                    },
                    "argument": {
                      "type": "Identifier",
                      "start": 9453,
                      "end": 9459,
                      "loc": {
                        "start": {
                          "line": 289,
                          "column": 11
                        },
                        "end": {
                          "line": 289,
                          "column": 17
                        },
                        "identifierName": "output"
                      },
                      "name": "output"
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                  "start": 7867,
                  "end": 8164,
                  "loc": {
                    "start": {
                      "line": 244,
                      "column": 2
                    },
                    "end": {
                      "line": 250,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
                  "start": 9469,
                  "end": 9700,
                  "loc": {
                    "start": {
                      "line": 291,
                      "column": 2
                    },
                    "end": {
                      "line": 297,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 9704,
              "end": 10960,
              "loc": {
                "start": {
                  "line": 298,
                  "column": 2
                },
                "end": {
                  "line": 345,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9704,
                "end": 9719,
                "loc": {
                  "start": {
                    "line": 298,
                    "column": 2
                  },
                  "end": {
                    "line": 298,
                    "column": 17
                  },
                  "identifierName": "handleMaxLength"
                },
                "name": "handleMaxLength",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 9720,
                  "end": 9728,
                  "loc": {
                    "start": {
                      "line": 298,
                      "column": 18
                    },
                    "end": {
                      "line": 298,
                      "column": 26
                    },
                    "identifierName": "inputObj"
                  },
                  "name": "inputObj"
                },
                {
                  "type": "Identifier",
                  "start": 9730,
                  "end": 9737,
                  "loc": {
                    "start": {
                      "line": 298,
                      "column": 28
                    },
                    "end": {
                      "line": 298,
                      "column": 35
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                },
                {
                  "type": "Identifier",
                  "start": 9739,
                  "end": 9751,
                  "loc": {
                    "start": {
                      "line": 298,
                      "column": 37
                    },
                    "end": {
                      "line": 298,
                      "column": 49
                    },
                    "identifierName": "updatedInput"
                  },
                  "name": "updatedInput"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 9752,
                "end": 10960,
                "loc": {
                  "start": {
                    "line": 298,
                    "column": 50
                  },
                  "end": {
                    "line": 345,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 9759,
                    "end": 9793,
                    "loc": {
                      "start": {
                        "line": 299,
                        "column": 4
                      },
                      "end": {
                        "line": 299,
                        "column": 38
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 9763,
                        "end": 9792,
                        "loc": {
                          "start": {
                            "line": 299,
                            "column": 8
                          },
                          "end": {
                            "line": 299,
                            "column": 37
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 9763,
                          "end": 9772,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 8
                            },
                            "end": {
                              "line": 299,
                              "column": 17
                            },
                            "identifierName": "maxLength"
                          },
                          "name": "maxLength"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 9775,
                          "end": 9792,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 20
                            },
                            "end": {
                              "line": 299,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9775,
                            "end": 9782,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 20
                              },
                              "end": {
                                "line": 299,
                                "column": 27
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9783,
                            "end": 9792,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 28
                              },
                              "end": {
                                "line": 299,
                                "column": 37
                              },
                              "identifierName": "maxLength"
                            },
                            "name": "maxLength"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 9799,
                    "end": 9846,
                    "loc": {
                      "start": {
                        "line": 300,
                        "column": 4
                      },
                      "end": {
                        "line": 300,
                        "column": 51
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 9803,
                        "end": 9845,
                        "loc": {
                          "start": {
                            "line": 300,
                            "column": 8
                          },
                          "end": {
                            "line": 300,
                            "column": 50
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 9803,
                          "end": 9815,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 8
                            },
                            "end": {
                              "line": 300,
                              "column": 20
                            },
                            "identifierName": "currentInput"
                          },
                          "name": "currentInput"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 9818,
                          "end": 9845,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 23
                            },
                            "end": {
                              "line": 300,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9818,
                            "end": 9826,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 23
                              },
                              "end": {
                                "line": 300,
                                "column": 31
                              },
                              "identifierName": "inputObj"
                            },
                            "name": "inputObj"
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 9827,
                            "end": 9844,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 32
                              },
                              "end": {
                                "line": 300,
                                "column": 49
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9827,
                              "end": 9834,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 32
                                },
                                "end": {
                                  "line": 300,
                                  "column": 39
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9835,
                              "end": 9844,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 40
                                },
                                "end": {
                                  "line": 300,
                                  "column": 49
                                },
                                "identifierName": "inputName"
                              },
                              "name": "inputName"
                            },
                            "computed": false
                          },
                          "computed": true
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 9852,
                    "end": 9902,
                    "loc": {
                      "start": {
                        "line": 301,
                        "column": 4
                      },
                      "end": {
                        "line": 301,
                        "column": 54
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 9856,
                        "end": 9901,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 8
                          },
                          "end": {
                            "line": 301,
                            "column": 53
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 9856,
                          "end": 9865,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 8
                            },
                            "end": {
                              "line": 301,
                              "column": 17
                            },
                            "identifierName": "condition"
                          },
                          "name": "condition"
                        },
                        "init": {
                          "type": "BinaryExpression",
                          "start": 9868,
                          "end": 9901,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 20
                            },
                            "end": {
                              "line": 301,
                              "column": 53
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 9868,
                            "end": 9887,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 20
                              },
                              "end": {
                                "line": 301,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9868,
                              "end": 9880,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 20
                                },
                                "end": {
                                  "line": 301,
                                  "column": 32
                                },
                                "identifierName": "currentInput"
                              },
                              "name": "currentInput"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9881,
                              "end": 9887,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 33
                                },
                                "end": {
                                  "line": 301,
                                  "column": 39
                                },
                                "identifierName": "length"
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "operator": "===",
                          "right": {
                            "type": "Identifier",
                            "start": 9892,
                            "end": 9901,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 44
                              },
                              "end": {
                                "line": 301,
                                "column": 53
                              },
                              "identifierName": "maxLength"
                            },
                            "name": "maxLength"
                          }
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 9910,
                    "end": 10128,
                    "loc": {
                      "start": {
                        "line": 303,
                        "column": 4
                      },
                      "end": {
                        "line": 311,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 10050,
                      "end": 10092,
                      "loc": {
                        "start": {
                          "line": 308,
                          "column": 6
                        },
                        "end": {
                          "line": 308,
                          "column": 48
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 10050,
                        "end": 10069,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 6
                          },
                          "end": {
                            "line": 308,
                            "column": 25
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 10050,
                          "end": 10062,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 6
                            },
                            "end": {
                              "line": 308,
                              "column": 18
                            },
                            "identifierName": "updatedInput"
                          },
                          "name": "updatedInput",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10063,
                          "end": 10069,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 19
                            },
                            "end": {
                              "line": 308,
                              "column": 25
                            },
                            "identifierName": "length"
                          },
                          "name": "length"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "operator": "<=",
                      "right": {
                        "type": "MemberExpression",
                        "start": 10073,
                        "end": 10092,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 29
                          },
                          "end": {
                            "line": 308,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 10073,
                          "end": 10085,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 29
                            },
                            "end": {
                              "line": 308,
                              "column": 41
                            },
                            "identifierName": "currentInput"
                          },
                          "name": "currentInput"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10086,
                          "end": 10092,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 42
                            },
                            "end": {
                              "line": 308,
                              "column": 48
                            },
                            "identifierName": "length"
                          },
                          "name": "length"
                        },
                        "computed": false
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n       * If pressing this button won't add more characters\r\n       * We exit out of this limiter function\r\n       ",
                          "start": 9921,
                          "end": 10042,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 6
                            },
                            "end": {
                              "line": 307,
                              "column": 9
                            }
                          }
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 10099,
                      "end": 10128,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 5
                        },
                        "end": {
                          "line": 311,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "start": 10108,
                          "end": 10121,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 6
                            },
                            "end": {
                              "line": 310,
                              "column": 19
                            }
                          },
                          "argument": {
                            "type": "BooleanLiteral",
                            "start": 10115,
                            "end": 10120,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 13
                              },
                              "end": {
                                "line": 310,
                                "column": 18
                              }
                            },
                            "value": false
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 10136,
                    "end": 10558,
                    "loc": {
                      "start": {
                        "line": 313,
                        "column": 4
                      },
                      "end": {
                        "line": 328,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 10139,
                      "end": 10166,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 7
                        },
                        "end": {
                          "line": 313,
                          "column": 34
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 10139,
                        "end": 10155,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 7
                          },
                          "end": {
                            "line": 313,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 10139,
                          "end": 10145,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 7
                            },
                            "end": {
                              "line": 313,
                              "column": 13
                            },
                            "identifierName": "Number"
                          },
                          "name": "Number"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10146,
                          "end": 10155,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 14
                            },
                            "end": {
                              "line": 313,
                              "column": 23
                            },
                            "identifierName": "isInteger"
                          },
                          "name": "isInteger"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 10156,
                          "end": 10165,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 24
                            },
                            "end": {
                              "line": 313,
                              "column": 33
                            },
                            "identifierName": "maxLength"
                          },
                          "name": "maxLength"
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 10167,
                      "end": 10558,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 35
                        },
                        "end": {
                          "line": 328,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 10176,
                          "end": 10264,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 6
                            },
                            "end": {
                              "line": 316,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 10179,
                            "end": 10192,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 9
                              },
                              "end": {
                                "line": 314,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10179,
                              "end": 10186,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 9
                                },
                                "end": {
                                  "line": 314,
                                  "column": 16
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10187,
                              "end": 10192,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 17
                                },
                                "end": {
                                  "line": 314,
                                  "column": 22
                                },
                                "identifierName": "debug"
                              },
                              "name": "debug"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 10193,
                            "end": 10264,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 23
                              },
                              "end": {
                                "line": 316,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10204,
                                "end": 10255,
                                "loc": {
                                  "start": {
                                    "line": 315,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 315,
                                    "column": 59
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 10204,
                                  "end": 10254,
                                  "loc": {
                                    "start": {
                                      "line": 315,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 315,
                                      "column": 58
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 10204,
                                    "end": 10215,
                                    "loc": {
                                      "start": {
                                        "line": 315,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 315,
                                        "column": 19
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 10204,
                                      "end": 10211,
                                      "loc": {
                                        "start": {
                                          "line": 315,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 315,
                                          "column": 15
                                        },
                                        "identifierName": "console"
                                      },
                                      "name": "console"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10212,
                                      "end": 10215,
                                      "loc": {
                                        "start": {
                                          "line": 315,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 315,
                                          "column": 19
                                        },
                                        "identifierName": "log"
                                      },
                                      "name": "log"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 10216,
                                      "end": 10242,
                                      "loc": {
                                        "start": {
                                          "line": 315,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 315,
                                          "column": 46
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "maxLength (num) reached:",
                                        "raw": "\"maxLength (num) reached:\""
                                      },
                                      "value": "maxLength (num) reached:"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10244,
                                      "end": 10253,
                                      "loc": {
                                        "start": {
                                          "line": 315,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 315,
                                          "column": 57
                                        },
                                        "identifierName": "condition"
                                      },
                                      "name": "condition"
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 10274,
                          "end": 10551,
                          "loc": {
                            "start": {
                              "line": 318,
                              "column": 6
                            },
                            "end": {
                              "line": 327,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "Identifier",
                            "start": 10277,
                            "end": 10286,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 9
                              },
                              "end": {
                                "line": 318,
                                "column": 18
                              },
                              "identifierName": "condition"
                            },
                            "name": "condition"
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 10287,
                            "end": 10472,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 19
                              },
                              "end": {
                                "line": 324,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10412,
                                "end": 10441,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 37
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 10412,
                                  "end": 10440,
                                  "loc": {
                                    "start": {
                                      "line": 322,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 322,
                                      "column": 36
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 10412,
                                    "end": 10433,
                                    "loc": {
                                      "start": {
                                        "line": 322,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 322,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10412,
                                      "end": 10416,
                                      "loc": {
                                        "start": {
                                          "line": 322,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 322,
                                          "column": 12
                                        }
                                      },
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10417,
                                      "end": 10433,
                                      "loc": {
                                        "start": {
                                          "line": 322,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 322,
                                          "column": 29
                                        },
                                        "identifierName": "maxLengthReached"
                                      },
                                      "name": "maxLengthReached"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 10436,
                                    "end": 10440,
                                    "loc": {
                                      "start": {
                                        "line": 322,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 322,
                                        "column": 36
                                      }
                                    },
                                    "value": true
                                  },
                                  "leadingComments": null
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentBlock",
                                    "value": "*\r\n         * @type {boolean} Boolean value that shows whether maxLength has been reached\r\n         ",
                                    "start": 10298,
                                    "end": 10402,
                                    "loc": {
                                      "start": {
                                        "line": 319,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 321,
                                        "column": 11
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 10451,
                                "end": 10463,
                                "loc": {
                                  "start": {
                                    "line": 323,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 323,
                                    "column": 20
                                  }
                                },
                                "argument": {
                                  "type": "BooleanLiteral",
                                  "start": 10458,
                                  "end": 10462,
                                  "loc": {
                                    "start": {
                                      "line": 323,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 323,
                                      "column": 19
                                    }
                                  },
                                  "value": true
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 10478,
                            "end": 10551,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 13
                              },
                              "end": {
                                "line": 327,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10489,
                                "end": 10519,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 38
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 10489,
                                  "end": 10518,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 37
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 10489,
                                    "end": 10510,
                                    "loc": {
                                      "start": {
                                        "line": 325,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 325,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10489,
                                      "end": 10493,
                                      "loc": {
                                        "start": {
                                          "line": 325,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 325,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10494,
                                      "end": 10510,
                                      "loc": {
                                        "start": {
                                          "line": 325,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 325,
                                          "column": 29
                                        },
                                        "identifierName": "maxLengthReached"
                                      },
                                      "name": "maxLengthReached"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 10513,
                                    "end": 10518,
                                    "loc": {
                                      "start": {
                                        "line": 325,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 325,
                                        "column": 37
                                      }
                                    },
                                    "value": false
                                  }
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 10529,
                                "end": 10542,
                                "loc": {
                                  "start": {
                                    "line": 326,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 326,
                                    "column": 21
                                  }
                                },
                                "argument": {
                                  "type": "BooleanLiteral",
                                  "start": 10536,
                                  "end": 10541,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 20
                                    }
                                  },
                                  "value": false
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 10566,
                    "end": 10955,
                    "loc": {
                      "start": {
                        "line": 330,
                        "column": 4
                      },
                      "end": {
                        "line": 344,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 10569,
                      "end": 10598,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 7
                        },
                        "end": {
                          "line": 330,
                          "column": 36
                        }
                      },
                      "left": {
                        "type": "UnaryExpression",
                        "start": 10569,
                        "end": 10585,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 7
                          },
                          "end": {
                            "line": 330,
                            "column": 23
                          }
                        },
                        "operator": "typeof",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 10576,
                          "end": 10585,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 14
                            },
                            "end": {
                              "line": 330,
                              "column": 23
                            },
                            "identifierName": "maxLength"
                          },
                          "name": "maxLength"
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "operator": "===",
                      "right": {
                        "type": "StringLiteral",
                        "start": 10590,
                        "end": 10598,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 28
                          },
                          "end": {
                            "line": 330,
                            "column": 36
                          }
                        },
                        "extra": {
                          "rawValue": "object",
                          "raw": "\"object\""
                        },
                        "value": "object"
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 10599,
                      "end": 10955,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 37
                        },
                        "end": {
                          "line": 344,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "start": 10608,
                          "end": 10677,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 6
                            },
                            "end": {
                              "line": 331,
                              "column": 75
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 10612,
                              "end": 10676,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 10
                                },
                                "end": {
                                  "line": 331,
                                  "column": 74
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 10612,
                                "end": 10621,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 19
                                  },
                                  "identifierName": "condition"
                                },
                                "name": "condition"
                              },
                              "init": {
                                "type": "BinaryExpression",
                                "start": 10624,
                                "end": 10676,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 74
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 10624,
                                  "end": 10643,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 10624,
                                    "end": 10636,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 34
                                      },
                                      "identifierName": "currentInput"
                                    },
                                    "name": "currentInput"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10637,
                                    "end": 10643,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 41
                                      },
                                      "identifierName": "length"
                                    },
                                    "name": "length"
                                  },
                                  "computed": false
                                },
                                "operator": "===",
                                "right": {
                                  "type": "MemberExpression",
                                  "start": 10648,
                                  "end": 10676,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 74
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 10648,
                                    "end": 10657,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 55
                                      },
                                      "identifierName": "maxLength"
                                    },
                                    "name": "maxLength"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 10658,
                                    "end": 10675,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 73
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 10658,
                                      "end": 10665,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 63
                                        },
                                        "identifierName": "options"
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10666,
                                      "end": 10675,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 73
                                        },
                                        "identifierName": "inputName"
                                      },
                                      "name": "inputName"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                }
                              }
                            }
                          ],
                          "kind": "let"
                        },
                        {
                          "type": "IfStatement",
                          "start": 10687,
                          "end": 10775,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 6
                            },
                            "end": {
                              "line": 335,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 10690,
                            "end": 10703,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 9
                              },
                              "end": {
                                "line": 333,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10690,
                              "end": 10697,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 9
                                },
                                "end": {
                                  "line": 333,
                                  "column": 16
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10698,
                              "end": 10703,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 17
                                },
                                "end": {
                                  "line": 333,
                                  "column": 22
                                },
                                "identifierName": "debug"
                              },
                              "name": "debug"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 10704,
                            "end": 10775,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 23
                              },
                              "end": {
                                "line": 335,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10715,
                                "end": 10766,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 59
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 10715,
                                  "end": 10765,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 58
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 10715,
                                    "end": 10726,
                                    "loc": {
                                      "start": {
                                        "line": 334,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 334,
                                        "column": 19
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 10715,
                                      "end": 10722,
                                      "loc": {
                                        "start": {
                                          "line": 334,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 334,
                                          "column": 15
                                        },
                                        "identifierName": "console"
                                      },
                                      "name": "console"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10723,
                                      "end": 10726,
                                      "loc": {
                                        "start": {
                                          "line": 334,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 334,
                                          "column": 19
                                        },
                                        "identifierName": "log"
                                      },
                                      "name": "log"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 10727,
                                      "end": 10753,
                                      "loc": {
                                        "start": {
                                          "line": 334,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 334,
                                          "column": 46
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "maxLength (obj) reached:",
                                        "raw": "\"maxLength (obj) reached:\""
                                      },
                                      "value": "maxLength (obj) reached:"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 10755,
                                      "end": 10764,
                                      "loc": {
                                        "start": {
                                          "line": 334,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 334,
                                          "column": 57
                                        },
                                        "identifierName": "condition"
                                      },
                                      "name": "condition"
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 10785,
                          "end": 10948,
                          "loc": {
                            "start": {
                              "line": 337,
                              "column": 6
                            },
                            "end": {
                              "line": 343,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "Identifier",
                            "start": 10788,
                            "end": 10797,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 9
                              },
                              "end": {
                                "line": 337,
                                "column": 18
                              },
                              "identifierName": "condition"
                            },
                            "name": "condition"
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 10798,
                            "end": 10869,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 19
                              },
                              "end": {
                                "line": 340,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10809,
                                "end": 10838,
                                "loc": {
                                  "start": {
                                    "line": 338,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 338,
                                    "column": 37
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 10809,
                                  "end": 10837,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 36
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 10809,
                                    "end": 10830,
                                    "loc": {
                                      "start": {
                                        "line": 338,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 338,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10809,
                                      "end": 10813,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10814,
                                      "end": 10830,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 29
                                        },
                                        "identifierName": "maxLengthReached"
                                      },
                                      "name": "maxLengthReached"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 10833,
                                    "end": 10837,
                                    "loc": {
                                      "start": {
                                        "line": 338,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 338,
                                        "column": 36
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 10848,
                                "end": 10860,
                                "loc": {
                                  "start": {
                                    "line": 339,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 339,
                                    "column": 20
                                  }
                                },
                                "argument": {
                                  "type": "BooleanLiteral",
                                  "start": 10855,
                                  "end": 10859,
                                  "loc": {
                                    "start": {
                                      "line": 339,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 339,
                                      "column": 19
                                    }
                                  },
                                  "value": true
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 10875,
                            "end": 10948,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 13
                              },
                              "end": {
                                "line": 343,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 10886,
                                "end": 10916,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 38
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 10886,
                                  "end": 10915,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 37
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 10886,
                                    "end": 10907,
                                    "loc": {
                                      "start": {
                                        "line": 341,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 341,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10886,
                                      "end": 10890,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10891,
                                      "end": 10907,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 29
                                        },
                                        "identifierName": "maxLengthReached"
                                      },
                                      "name": "maxLengthReached"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 10910,
                                    "end": 10915,
                                    "loc": {
                                      "start": {
                                        "line": 341,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 341,
                                        "column": 37
                                      }
                                    },
                                    "value": false
                                  }
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 10926,
                                "end": 10939,
                                "loc": {
                                  "start": {
                                    "line": 342,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 342,
                                    "column": 21
                                  }
                                },
                                "argument": {
                                  "type": "BooleanLiteral",
                                  "start": 10933,
                                  "end": 10938,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 342,
                                      "column": 20
                                    }
                                  },
                                  "value": false
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
                  "start": 9469,
                  "end": 9700,
                  "loc": {
                    "start": {
                      "line": 291,
                      "column": 2
                    },
                    "end": {
                      "line": 297,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
                  "start": 10966,
                  "end": 11025,
                  "loc": {
                    "start": {
                      "line": 347,
                      "column": 2
                    },
                    "end": {
                      "line": 349,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 11029,
              "end": 11099,
              "loc": {
                "start": {
                  "line": 350,
                  "column": 2
                },
                "end": {
                  "line": 352,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11029,
                "end": 11047,
                "loc": {
                  "start": {
                    "line": 350,
                    "column": 2
                  },
                  "end": {
                    "line": 350,
                    "column": 20
                  },
                  "identifierName": "isMaxLengthReached"
                },
                "name": "isMaxLengthReached",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 11049,
                "end": 11099,
                "loc": {
                  "start": {
                    "line": 350,
                    "column": 22
                  },
                  "end": {
                    "line": 352,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 11056,
                    "end": 11094,
                    "loc": {
                      "start": {
                        "line": 351,
                        "column": 4
                      },
                      "end": {
                        "line": 351,
                        "column": 42
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 11063,
                      "end": 11093,
                      "loc": {
                        "start": {
                          "line": 351,
                          "column": 11
                        },
                        "end": {
                          "line": 351,
                          "column": 41
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 11063,
                        "end": 11070,
                        "loc": {
                          "start": {
                            "line": 351,
                            "column": 11
                          },
                          "end": {
                            "line": 351,
                            "column": 18
                          },
                          "identifierName": "Boolean"
                        },
                        "name": "Boolean"
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 11071,
                          "end": 11092,
                          "loc": {
                            "start": {
                              "line": 351,
                              "column": 19
                            },
                            "end": {
                              "line": 351,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11071,
                            "end": 11075,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 19
                              },
                              "end": {
                                "line": 351,
                                "column": 23
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11076,
                            "end": 11092,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 24
                              },
                              "end": {
                                "line": 351,
                                "column": 40
                              },
                              "identifierName": "maxLengthReached"
                            },
                            "name": "maxLengthReached"
                          },
                          "computed": false
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
                  "start": 10966,
                  "end": 11025,
                  "loc": {
                    "start": {
                      "line": 347,
                      "column": 2
                    },
                    "end": {
                      "line": 349,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
                  "start": 11105,
                  "end": 11227,
                  "loc": {
                    "start": {
                      "line": 354,
                      "column": 2
                    },
                    "end": {
                      "line": 358,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 11231,
              "end": 11387,
              "loc": {
                "start": {
                  "line": 359,
                  "column": 2
                },
                "end": {
                  "line": 361,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11231,
                "end": 11240,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 2
                  },
                  "end": {
                    "line": 359,
                    "column": 11
                  },
                  "identifierName": "camelCase"
                },
                "name": "camelCase",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 11241,
                  "end": 11247,
                  "loc": {
                    "start": {
                      "line": 359,
                      "column": 12
                    },
                    "end": {
                      "line": 359,
                      "column": 18
                    },
                    "identifierName": "string"
                  },
                  "name": "string"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 11248,
                "end": 11387,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 19
                  },
                  "end": {
                    "line": 361,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 11255,
                    "end": 11382,
                    "loc": {
                      "start": {
                        "line": 360,
                        "column": 4
                      },
                      "end": {
                        "line": 360,
                        "column": 131
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 11262,
                      "end": 11381,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 11
                        },
                        "end": {
                          "line": 360,
                          "column": 130
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11262,
                        "end": 11315,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 11
                          },
                          "end": {
                            "line": 360,
                            "column": 64
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 11262,
                          "end": 11308,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 11
                            },
                            "end": {
                              "line": 360,
                              "column": 57
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11262,
                            "end": 11295,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 11
                              },
                              "end": {
                                "line": 360,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 11262,
                              "end": 11289,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 11
                                },
                                "end": {
                                  "line": 360,
                                  "column": 38
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11262,
                                "end": 11287,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 11262,
                                  "end": 11282,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 31
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 11262,
                                    "end": 11280,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 11262,
                                      "end": 11268,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 17
                                        },
                                        "identifierName": "string"
                                      },
                                      "name": "string"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11269,
                                      "end": 11280,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 29
                                        },
                                        "identifierName": "toLowerCase"
                                      },
                                      "name": "toLowerCase"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11283,
                                  "end": 11287,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 36
                                    },
                                    "identifierName": "trim"
                                  },
                                  "name": "trim"
                                },
                                "computed": false
                              },
                              "arguments": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11290,
                              "end": 11295,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 39
                                },
                                "end": {
                                  "line": 360,
                                  "column": 44
                                },
                                "identifierName": "split"
                              },
                              "name": "split"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "RegExpLiteral",
                              "start": 11296,
                              "end": 11307,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 45
                                },
                                "end": {
                                  "line": 360,
                                  "column": 56
                                }
                              },
                              "extra": {
                                "raw": "/[.\\-_\\s]/g"
                              },
                              "pattern": "[.\\-_\\s]",
                              "flags": "g"
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11309,
                          "end": 11315,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 58
                            },
                            "end": {
                              "line": 360,
                              "column": 64
                            },
                            "identifierName": "reduce"
                          },
                          "name": "reduce"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 11316,
                          "end": 11380,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 65
                            },
                            "end": {
                              "line": 360,
                              "column": 129
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 11317,
                              "end": 11323,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 66
                                },
                                "end": {
                                  "line": 360,
                                  "column": 72
                                },
                                "identifierName": "string"
                              },
                              "name": "string"
                            },
                            {
                              "type": "Identifier",
                              "start": 11325,
                              "end": 11329,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 74
                                },
                                "end": {
                                  "line": 360,
                                  "column": 78
                                },
                                "identifierName": "word"
                              },
                              "name": "word"
                            }
                          ],
                          "body": {
                            "type": "BinaryExpression",
                            "start": 11334,
                            "end": 11380,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 83
                              },
                              "end": {
                                "line": 360,
                                "column": 129
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11334,
                              "end": 11364,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 83
                                },
                                "end": {
                                  "line": 360,
                                  "column": 113
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11334,
                                "end": 11340,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 89
                                  },
                                  "identifierName": "string"
                                },
                                "name": "string"
                              },
                              "operator": "+",
                              "right": {
                                "type": "CallExpression",
                                "start": 11343,
                                "end": 11364,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 92
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 113
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11343,
                                  "end": 11362,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 111
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11343,
                                    "end": 11350,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 99
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 11343,
                                      "end": 11347,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 92
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 96
                                        },
                                        "identifierName": "word"
                                      },
                                      "name": "word"
                                    },
                                    "property": {
                                      "type": "NumericLiteral",
                                      "start": 11348,
                                      "end": 11349,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 97
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 98
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "value": 0
                                    },
                                    "computed": true
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11351,
                                    "end": 11362,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 100
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 111
                                      },
                                      "identifierName": "toUpperCase"
                                    },
                                    "name": "toUpperCase"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "CallExpression",
                              "start": 11367,
                              "end": 11380,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 116
                                },
                                "end": {
                                  "line": 360,
                                  "column": 129
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11367,
                                "end": 11377,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 116
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 126
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11367,
                                  "end": 11371,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 116
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 120
                                    },
                                    "identifierName": "word"
                                  },
                                  "name": "word"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11372,
                                  "end": 11377,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 121
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 126
                                    },
                                    "identifierName": "slice"
                                  },
                                  "name": "slice"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NumericLiteral",
                                  "start": 11378,
                                  "end": 11379,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 127
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 128
                                    }
                                  },
                                  "extra": {
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "value": 1
                                }
                              ]
                            }
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": []
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
                  "start": 11105,
                  "end": 11227,
                  "loc": {
                    "start": {
                      "line": 354,
                      "column": 2
                    },
                    "end": {
                      "line": 358,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 11578,
              "end": 11668,
              "loc": {
                "start": {
                  "line": 369,
                  "column": 2
                },
                "end": {
                  "line": 371,
                  "column": 3
                }
              },
              "static": false,
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11578,
                "end": 11590,
                "loc": {
                  "start": {
                    "line": 369,
                    "column": 2
                  },
                  "end": {
                    "line": 369,
                    "column": 14
                  },
                  "identifierName": "countInArray"
                },
                "name": "countInArray",
                "leadingComments": null
              },
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 11591,
                  "end": 11596,
                  "loc": {
                    "start": {
                      "line": 369,
                      "column": 15
                    },
                    "end": {
                      "line": 369,
                      "column": 20
                    },
                    "identifierName": "array"
                  },
                  "name": "array"
                },
                {
                  "type": "Identifier",
                  "start": 11598,
                  "end": 11603,
                  "loc": {
                    "start": {
                      "line": 369,
                      "column": 22
                    },
                    "end": {
                      "line": 369,
                      "column": 27
                    },
                    "identifierName": "value"
                  },
                  "name": "value"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 11604,
                "end": 11668,
                "loc": {
                  "start": {
                    "line": 369,
                    "column": 28
                  },
                  "end": {
                    "line": 371,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 11611,
                    "end": 11663,
                    "loc": {
                      "start": {
                        "line": 370,
                        "column": 4
                      },
                      "end": {
                        "line": 370,
                        "column": 56
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 11618,
                      "end": 11662,
                      "loc": {
                        "start": {
                          "line": 370,
                          "column": 11
                        },
                        "end": {
                          "line": 370,
                          "column": 55
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11618,
                        "end": 11630,
                        "loc": {
                          "start": {
                            "line": 370,
                            "column": 11
                          },
                          "end": {
                            "line": 370,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11618,
                          "end": 11623,
                          "loc": {
                            "start": {
                              "line": 370,
                              "column": 11
                            },
                            "end": {
                              "line": 370,
                              "column": 16
                            },
                            "identifierName": "array"
                          },
                          "name": "array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11624,
                          "end": 11630,
                          "loc": {
                            "start": {
                              "line": 370,
                              "column": 17
                            },
                            "end": {
                              "line": 370,
                              "column": 23
                            },
                            "identifierName": "reduce"
                          },
                          "name": "reduce"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 11631,
                          "end": 11658,
                          "loc": {
                            "start": {
                              "line": 370,
                              "column": 24
                            },
                            "end": {
                              "line": 370,
                              "column": 51
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 11632,
                              "end": 11633,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 25
                                },
                                "end": {
                                  "line": 370,
                                  "column": 26
                                },
                                "identifierName": "n"
                              },
                              "name": "n"
                            },
                            {
                              "type": "Identifier",
                              "start": 11635,
                              "end": 11636,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 28
                                },
                                "end": {
                                  "line": 370,
                                  "column": 29
                                },
                                "identifierName": "x"
                              },
                              "name": "x"
                            }
                          ],
                          "body": {
                            "type": "BinaryExpression",
                            "start": 11641,
                            "end": 11658,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 34
                              },
                              "end": {
                                "line": 370,
                                "column": 51
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11641,
                              "end": 11642,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 34
                                },
                                "end": {
                                  "line": 370,
                                  "column": 35
                                },
                                "identifierName": "n"
                              },
                              "name": "n"
                            },
                            "operator": "+",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 11646,
                              "end": 11657,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 39
                                },
                                "end": {
                                  "line": 370,
                                  "column": 50
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11646,
                                "end": 11647,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 40
                                  },
                                  "identifierName": "x"
                                },
                                "name": "x"
                              },
                              "operator": "===",
                              "right": {
                                "type": "Identifier",
                                "start": 11652,
                                "end": 11657,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 50
                                  },
                                  "identifierName": "value"
                                },
                                "name": "value"
                              },
                              "extra": {
                                "parenthesized": true,
                                "parenStart": 11645
                              }
                            }
                          }
                        },
                        {
                          "type": "NumericLiteral",
                          "start": 11660,
                          "end": 11661,
                          "loc": {
                            "start": {
                              "line": 370,
                              "column": 53
                            },
                            "end": {
                              "line": 370,
                              "column": 54
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      ]
                    }
                  }
                ],
                "directives": []
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\r\n   * Counts the number of duplicates in a given array\r\n   * \r\n   * @param  {Array} array The haystack to search in\r\n   * @param  {string} value The needle to search for\r\n   ",
                  "start": 11394,
                  "end": 11574,
                  "loc": {
                    "start": {
                      "line": 363,
                      "column": 2
                    },
                    "end": {
                      "line": 368,
                      "column": 5
                    }
                  }
                }
              ]
            }
          ]
        },
        "leadingComments": [],
        "name": "_",
        "trailingComments": []
      },
      {
        "type": "Identifier",
        "start": 11675,
        "end": 11700,
        "loc": {
          "start": {
            "line": 374,
            "column": 0
          },
          "end": {
            "line": 374,
            "column": 25
          }
        },
        "declaration": {
          "type": "Identifier",
          "start": 11690,
          "end": 11699,
          "loc": {
            "start": {
              "line": 374,
              "column": 15
            },
            "end": {
              "line": 374,
              "column": 24
            },
            "identifierName": "Utilities"
          },
          "name": "Utilities"
        },
        "name": "_",
        "leadingComments": [],
        "trailingComments": []
      },
      {
        "type": "ExportDefaultDeclaration",
        "start": 11675,
        "end": 11700,
        "loc": {
          "start": {
            "line": 374,
            "column": 0
          },
          "end": {
            "line": 374,
            "column": 25
          }
        },
        "declaration": {
          "type": "ClassDeclaration",
          "start": 30,
          "end": 11671,
          "loc": {
            "start": {
              "line": 4,
              "column": 0
            },
            "end": {
              "line": 372,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 36,
            "end": 45,
            "loc": {
              "start": {
                "line": 4,
                "column": 6
              },
              "end": {
                "line": 4,
                "column": 15
              },
              "identifierName": "Utilities"
            },
            "name": "Utilities",
            "leadingComments": null
          },
          "superClass": null,
          "body": {
            "type": "ClassBody",
            "start": 46,
            "end": 11671,
            "loc": {
              "start": {
                "line": 4,
                "column": 16
              },
              "end": {
                "line": 372,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ClassMethod",
                "start": 114,
                "end": 811,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 2
                  },
                  "end": {
                    "line": 25,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 114,
                  "end": 125,
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 2
                    },
                    "end": {
                      "line": 8,
                      "column": 13
                    },
                    "identifierName": "constructor"
                  },
                  "name": "constructor",
                  "leadingComments": null
                },
                "kind": "constructor",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 126,
                    "end": 148,
                    "loc": {
                      "start": {
                        "line": 8,
                        "column": 14
                      },
                      "end": {
                        "line": 8,
                        "column": 36
                      },
                      "identifierName": "simpleKeyboardInstance"
                    },
                    "name": "simpleKeyboardInstance"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 149,
                  "end": 811,
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 37
                    },
                    "end": {
                      "line": 25,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 224,
                      "end": 277,
                      "loc": {
                        "start": {
                          "line": 12,
                          "column": 4
                        },
                        "end": {
                          "line": 12,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 224,
                        "end": 276,
                        "loc": {
                          "start": {
                            "line": 12,
                            "column": 4
                          },
                          "end": {
                            "line": 12,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 224,
                          "end": 251,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 4
                            },
                            "end": {
                              "line": 12,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 224,
                            "end": 228,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 4
                              },
                              "end": {
                                "line": 12,
                                "column": 8
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 229,
                            "end": 251,
                            "loc": {
                              "start": {
                                "line": 12,
                                "column": 9
                              },
                              "end": {
                                "line": 12,
                                "column": 31
                              },
                              "identifierName": "simpleKeyboardInstance"
                            },
                            "name": "simpleKeyboardInstance"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 254,
                          "end": 276,
                          "loc": {
                            "start": {
                              "line": 12,
                              "column": 34
                            },
                            "end": {
                              "line": 12,
                              "column": 56
                            },
                            "identifierName": "simpleKeyboardInstance"
                          },
                          "name": "simpleKeyboardInstance"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n     * @type {object} A simple-keyboard instance\r\n     ",
                          "start": 156,
                          "end": 218,
                          "loc": {
                            "start": {
                              "line": 9,
                              "column": 4
                            },
                            "end": {
                              "line": 11,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n     * Bindings\r\n     ",
                          "start": 285,
                          "end": 314,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 4
                            },
                            "end": {
                              "line": 16,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 320,
                      "end": 373,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 4
                        },
                        "end": {
                          "line": 17,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 320,
                        "end": 372,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 4
                          },
                          "end": {
                            "line": 17,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 320,
                          "end": 339,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 4
                            },
                            "end": {
                              "line": 17,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 320,
                            "end": 324,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 4
                              },
                              "end": {
                                "line": 17,
                                "column": 8
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 325,
                            "end": 339,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 9
                              },
                              "end": {
                                "line": 17,
                                "column": 23
                              },
                              "identifierName": "getButtonClass"
                            },
                            "name": "getButtonClass"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 342,
                          "end": 372,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 26
                            },
                            "end": {
                              "line": 17,
                              "column": 56
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 342,
                            "end": 366,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 26
                              },
                              "end": {
                                "line": 17,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 342,
                              "end": 361,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 26
                                },
                                "end": {
                                  "line": 17,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 342,
                                "end": 346,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 347,
                                "end": 361,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 45
                                  },
                                  "identifierName": "getButtonClass"
                                },
                                "name": "getButtonClass"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 362,
                              "end": 366,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 46
                                },
                                "end": {
                                  "line": 17,
                                  "column": 50
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 367,
                              "end": 371,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 51
                                },
                                "end": {
                                  "line": 17,
                                  "column": 55
                                }
                              }
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n     * Bindings\r\n     ",
                          "start": 285,
                          "end": 314,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 4
                            },
                            "end": {
                              "line": 16,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 379,
                      "end": 444,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 4
                        },
                        "end": {
                          "line": 18,
                          "column": 69
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 379,
                        "end": 443,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 4
                          },
                          "end": {
                            "line": 18,
                            "column": 68
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 379,
                          "end": 404,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 4
                            },
                            "end": {
                              "line": 18,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 379,
                            "end": 383,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 4
                              },
                              "end": {
                                "line": 18,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 384,
                            "end": 404,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 9
                              },
                              "end": {
                                "line": 18,
                                "column": 29
                              },
                              "identifierName": "getButtonDisplayName"
                            },
                            "name": "getButtonDisplayName"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 407,
                          "end": 443,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 32
                            },
                            "end": {
                              "line": 18,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 407,
                            "end": 437,
                            "loc": {
                              "start": {
                                "line": 18,
                                "column": 32
                              },
                              "end": {
                                "line": 18,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 407,
                              "end": 432,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 32
                                },
                                "end": {
                                  "line": 18,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 407,
                                "end": 411,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 412,
                                "end": 432,
                                "loc": {
                                  "start": {
                                    "line": 18,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 18,
                                    "column": 57
                                  },
                                  "identifierName": "getButtonDisplayName"
                                },
                                "name": "getButtonDisplayName"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 433,
                              "end": 437,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 58
                                },
                                "end": {
                                  "line": 18,
                                  "column": 62
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 438,
                              "end": 442,
                              "loc": {
                                "start": {
                                  "line": 18,
                                  "column": 63
                                },
                                "end": {
                                  "line": 18,
                                  "column": 67
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 450,
                      "end": 505,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 4
                        },
                        "end": {
                          "line": 19,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 450,
                        "end": 504,
                        "loc": {
                          "start": {
                            "line": 19,
                            "column": 4
                          },
                          "end": {
                            "line": 19,
                            "column": 58
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 450,
                          "end": 470,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 4
                            },
                            "end": {
                              "line": 19,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 450,
                            "end": 454,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 4
                              },
                              "end": {
                                "line": 19,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 455,
                            "end": 470,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 9
                              },
                              "end": {
                                "line": 19,
                                "column": 24
                              },
                              "identifierName": "getUpdatedInput"
                            },
                            "name": "getUpdatedInput"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 473,
                          "end": 504,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 27
                            },
                            "end": {
                              "line": 19,
                              "column": 58
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 473,
                            "end": 498,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 27
                              },
                              "end": {
                                "line": 19,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 473,
                              "end": 493,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 27
                                },
                                "end": {
                                  "line": 19,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 473,
                                "end": 477,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 31
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 478,
                                "end": 493,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 47
                                  },
                                  "identifierName": "getUpdatedInput"
                                },
                                "name": "getUpdatedInput"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 494,
                              "end": 498,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 48
                                },
                                "end": {
                                  "line": 19,
                                  "column": 52
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 499,
                              "end": 503,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 53
                                },
                                "end": {
                                  "line": 19,
                                  "column": 57
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 511,
                      "end": 564,
                      "loc": {
                        "start": {
                          "line": 20,
                          "column": 4
                        },
                        "end": {
                          "line": 20,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 511,
                        "end": 563,
                        "loc": {
                          "start": {
                            "line": 20,
                            "column": 4
                          },
                          "end": {
                            "line": 20,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 511,
                          "end": 530,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 4
                            },
                            "end": {
                              "line": 20,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 511,
                            "end": 515,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 4
                              },
                              "end": {
                                "line": 20,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 516,
                            "end": 530,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 9
                              },
                              "end": {
                                "line": 20,
                                "column": 23
                              },
                              "identifierName": "updateCaretPos"
                            },
                            "name": "updateCaretPos"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 533,
                          "end": 563,
                          "loc": {
                            "start": {
                              "line": 20,
                              "column": 26
                            },
                            "end": {
                              "line": 20,
                              "column": 56
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 533,
                            "end": 557,
                            "loc": {
                              "start": {
                                "line": 20,
                                "column": 26
                              },
                              "end": {
                                "line": 20,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 533,
                              "end": 552,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 26
                                },
                                "end": {
                                  "line": 20,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 533,
                                "end": 537,
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 20,
                                    "column": 30
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 538,
                                "end": 552,
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 20,
                                    "column": 45
                                  },
                                  "identifierName": "updateCaretPos"
                                },
                                "name": "updateCaretPos"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 553,
                              "end": 557,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 46
                                },
                                "end": {
                                  "line": 20,
                                  "column": 50
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 558,
                              "end": 562,
                              "loc": {
                                "start": {
                                  "line": 20,
                                  "column": 51
                                },
                                "end": {
                                  "line": 20,
                                  "column": 55
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 570,
                      "end": 635,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 4
                        },
                        "end": {
                          "line": 21,
                          "column": 69
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 570,
                        "end": 634,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 4
                          },
                          "end": {
                            "line": 21,
                            "column": 68
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 570,
                          "end": 595,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 4
                            },
                            "end": {
                              "line": 21,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 570,
                            "end": 574,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 4
                              },
                              "end": {
                                "line": 21,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 575,
                            "end": 595,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 9
                              },
                              "end": {
                                "line": 21,
                                "column": 29
                              },
                              "identifierName": "updateCaretPosAction"
                            },
                            "name": "updateCaretPosAction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 598,
                          "end": 634,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 32
                            },
                            "end": {
                              "line": 21,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 598,
                            "end": 628,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 32
                              },
                              "end": {
                                "line": 21,
                                "column": 62
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 598,
                              "end": 623,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 32
                                },
                                "end": {
                                  "line": 21,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 598,
                                "end": 602,
                                "loc": {
                                  "start": {
                                    "line": 21,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 21,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 603,
                                "end": 623,
                                "loc": {
                                  "start": {
                                    "line": 21,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 21,
                                    "column": 57
                                  },
                                  "identifierName": "updateCaretPosAction"
                                },
                                "name": "updateCaretPosAction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 624,
                              "end": 628,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 58
                                },
                                "end": {
                                  "line": 21,
                                  "column": 62
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 629,
                              "end": 633,
                              "loc": {
                                "start": {
                                  "line": 21,
                                  "column": 63
                                },
                                "end": {
                                  "line": 21,
                                  "column": 67
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 641,
                      "end": 702,
                      "loc": {
                        "start": {
                          "line": 22,
                          "column": 4
                        },
                        "end": {
                          "line": 22,
                          "column": 65
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 641,
                        "end": 701,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 4
                          },
                          "end": {
                            "line": 22,
                            "column": 64
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 641,
                          "end": 664,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 4
                            },
                            "end": {
                              "line": 22,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 641,
                            "end": 645,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 4
                              },
                              "end": {
                                "line": 22,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 646,
                            "end": 664,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 9
                              },
                              "end": {
                                "line": 22,
                                "column": 27
                              },
                              "identifierName": "isMaxLengthReached"
                            },
                            "name": "isMaxLengthReached"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 667,
                          "end": 701,
                          "loc": {
                            "start": {
                              "line": 22,
                              "column": 30
                            },
                            "end": {
                              "line": 22,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 667,
                            "end": 695,
                            "loc": {
                              "start": {
                                "line": 22,
                                "column": 30
                              },
                              "end": {
                                "line": 22,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 667,
                              "end": 690,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 30
                                },
                                "end": {
                                  "line": 22,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 667,
                                "end": 671,
                                "loc": {
                                  "start": {
                                    "line": 22,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 22,
                                    "column": 34
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 672,
                                "end": 690,
                                "loc": {
                                  "start": {
                                    "line": 22,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 22,
                                    "column": 53
                                  },
                                  "identifierName": "isMaxLengthReached"
                                },
                                "name": "isMaxLengthReached"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 691,
                              "end": 695,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 54
                                },
                                "end": {
                                  "line": 22,
                                  "column": 58
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 696,
                              "end": 700,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 59
                                },
                                "end": {
                                  "line": 22,
                                  "column": 63
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 708,
                      "end": 751,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 4
                        },
                        "end": {
                          "line": 23,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 708,
                        "end": 750,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 4
                          },
                          "end": {
                            "line": 23,
                            "column": 46
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 708,
                          "end": 722,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 4
                            },
                            "end": {
                              "line": 23,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 708,
                            "end": 712,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 4
                              },
                              "end": {
                                "line": 23,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 713,
                            "end": 722,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 9
                              },
                              "end": {
                                "line": 23,
                                "column": 18
                              },
                              "identifierName": "camelCase"
                            },
                            "name": "camelCase"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 725,
                          "end": 750,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 21
                            },
                            "end": {
                              "line": 23,
                              "column": 46
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 725,
                            "end": 744,
                            "loc": {
                              "start": {
                                "line": 23,
                                "column": 21
                              },
                              "end": {
                                "line": 23,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 725,
                              "end": 739,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 21
                                },
                                "end": {
                                  "line": 23,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 725,
                                "end": 729,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 730,
                                "end": 739,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 35
                                  },
                                  "identifierName": "camelCase"
                                },
                                "name": "camelCase"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 740,
                              "end": 744,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 36
                                },
                                "end": {
                                  "line": 23,
                                  "column": 40
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 745,
                              "end": 749,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 41
                                },
                                "end": {
                                  "line": 23,
                                  "column": 45
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 757,
                      "end": 806,
                      "loc": {
                        "start": {
                          "line": 24,
                          "column": 4
                        },
                        "end": {
                          "line": 24,
                          "column": 53
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 757,
                        "end": 805,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 4
                          },
                          "end": {
                            "line": 24,
                            "column": 52
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 757,
                          "end": 774,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 4
                            },
                            "end": {
                              "line": 24,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 757,
                            "end": 761,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 4
                              },
                              "end": {
                                "line": 24,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 762,
                            "end": 774,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 9
                              },
                              "end": {
                                "line": 24,
                                "column": 21
                              },
                              "identifierName": "countInArray"
                            },
                            "name": "countInArray"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 777,
                          "end": 805,
                          "loc": {
                            "start": {
                              "line": 24,
                              "column": 24
                            },
                            "end": {
                              "line": 24,
                              "column": 52
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 777,
                            "end": 799,
                            "loc": {
                              "start": {
                                "line": 24,
                                "column": 24
                              },
                              "end": {
                                "line": 24,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 777,
                              "end": 794,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 24
                                },
                                "end": {
                                  "line": 24,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 777,
                                "end": 781,
                                "loc": {
                                  "start": {
                                    "line": 24,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 782,
                                "end": 794,
                                "loc": {
                                  "start": {
                                    "line": 24,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 41
                                  },
                                  "identifierName": "countInArray"
                                },
                                "name": "countInArray"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 795,
                              "end": 799,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 42
                                },
                                "end": {
                                  "line": 24,
                                  "column": 46
                                },
                                "identifierName": "bind"
                              },
                              "name": "bind"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 800,
                              "end": 804,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 47
                                },
                                "end": {
                                  "line": 24,
                                  "column": 51
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Creates an instance of the Utility service\r\n   ",
                    "start": 51,
                    "end": 110,
                    "loc": {
                      "start": {
                        "line": 5,
                        "column": 2
                      },
                      "end": {
                        "line": 7,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
                    "start": 817,
                    "end": 995,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 2
                      },
                      "end": {
                        "line": 32,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 999,
                "end": 1426,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 2
                  },
                  "end": {
                    "line": 42,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 999,
                  "end": 1013,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 2
                    },
                    "end": {
                      "line": 33,
                      "column": 16
                    },
                    "identifierName": "getButtonClass"
                  },
                  "name": "getButtonClass",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1014,
                    "end": 1020,
                    "loc": {
                      "start": {
                        "line": 33,
                        "column": 17
                      },
                      "end": {
                        "line": 33,
                        "column": 23
                      },
                      "identifierName": "button"
                    },
                    "name": "button"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1021,
                  "end": 1426,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 24
                    },
                    "end": {
                      "line": 42,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 1028,
                      "end": 1150,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 4
                        },
                        "end": {
                          "line": 34,
                          "column": 126
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1032,
                          "end": 1149,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 8
                            },
                            "end": {
                              "line": 34,
                              "column": 125
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1032,
                            "end": 1047,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 8
                              },
                              "end": {
                                "line": 34,
                                "column": 23
                              },
                              "identifierName": "buttonTypeClass"
                            },
                            "name": "buttonTypeClass"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 1050,
                            "end": 1149,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 26
                              },
                              "end": {
                                "line": 34,
                                "column": 125
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 1051,
                              "end": 1116,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 27
                                },
                                "end": {
                                  "line": 34,
                                  "column": 92
                                }
                              },
                              "left": {
                                "type": "LogicalExpression",
                                "start": 1051,
                                "end": 1095,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 71
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 1051,
                                  "end": 1071,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 47
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 1051,
                                    "end": 1066,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1051,
                                      "end": 1057,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 33
                                        },
                                        "identifierName": "button"
                                      },
                                      "name": "button"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1058,
                                      "end": 1066,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 42
                                        },
                                        "identifierName": "includes"
                                      },
                                      "name": "includes"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 1067,
                                      "end": 1070,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 46
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "{",
                                        "raw": "\"{\""
                                      },
                                      "value": "{"
                                    }
                                  ]
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 1075,
                                  "end": 1095,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 71
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 1075,
                                    "end": 1090,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 66
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1075,
                                      "end": 1081,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 57
                                        },
                                        "identifierName": "button"
                                      },
                                      "name": "button"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1082,
                                      "end": 1090,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 66
                                        },
                                        "identifierName": "includes"
                                      },
                                      "name": "includes"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 1091,
                                      "end": 1094,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 67
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 70
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "}",
                                        "raw": "\"}\""
                                      },
                                      "value": "}"
                                    }
                                  ]
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 1099,
                                "end": 1116,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 75
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 92
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 1099,
                                  "end": 1105,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 81
                                    },
                                    "identifierName": "button"
                                  },
                                  "name": "button"
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 1110,
                                  "end": 1116,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 86
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 92
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "{//}",
                                    "raw": "'{//}'"
                                  },
                                  "value": "{//}"
                                }
                              },
                              "extra": {
                                "parenthesized": true,
                                "parenStart": 1050
                              }
                            },
                            "consequent": {
                              "type": "StringLiteral",
                              "start": 1120,
                              "end": 1133,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 96
                                },
                                "end": {
                                  "line": 34,
                                  "column": 109
                                }
                              },
                              "extra": {
                                "rawValue": "functionBtn",
                                "raw": "\"functionBtn\""
                              },
                              "value": "functionBtn"
                            },
                            "alternate": {
                              "type": "StringLiteral",
                              "start": 1136,
                              "end": 1149,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 112
                                },
                                "end": {
                                  "line": 34,
                                  "column": 125
                                }
                              },
                              "extra": {
                                "rawValue": "standardBtn",
                                "raw": "\"standardBtn\""
                              },
                              "value": "standardBtn"
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1156,
                      "end": 1223,
                      "loc": {
                        "start": {
                          "line": 35,
                          "column": 4
                        },
                        "end": {
                          "line": 35,
                          "column": 71
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1160,
                          "end": 1222,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 8
                            },
                            "end": {
                              "line": 35,
                              "column": 70
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1160,
                            "end": 1179,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 8
                              },
                              "end": {
                                "line": 35,
                                "column": 27
                              },
                              "identifierName": "buttonWithoutBraces"
                            },
                            "name": "buttonWithoutBraces"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 1182,
                            "end": 1222,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 30
                              },
                              "end": {
                                "line": 35,
                                "column": 70
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1182,
                              "end": 1213,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 30
                                },
                                "end": {
                                  "line": 35,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 1182,
                                "end": 1205,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 53
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 1182,
                                  "end": 1196,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1182,
                                    "end": 1188,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 36
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1189,
                                    "end": 1196,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 44
                                      },
                                      "identifierName": "replace"
                                    },
                                    "name": "replace"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 1197,
                                    "end": 1200,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{",
                                      "raw": "\"{\""
                                    },
                                    "value": "{"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 1202,
                                    "end": 1204,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 52
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "",
                                      "raw": "\"\""
                                    },
                                    "value": ""
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1206,
                                "end": 1213,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 61
                                  },
                                  "identifierName": "replace"
                                },
                                "name": "replace"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "StringLiteral",
                                "start": 1214,
                                "end": 1217,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 65
                                  }
                                },
                                "extra": {
                                  "rawValue": "}",
                                  "raw": "\"}\""
                                },
                                "value": "}"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 1219,
                                "end": 1221,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 69
                                  }
                                },
                                "extra": {
                                  "rawValue": "",
                                  "raw": "\"\""
                                },
                                "value": ""
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1229,
                      "end": 1255,
                      "loc": {
                        "start": {
                          "line": 36,
                          "column": 4
                        },
                        "end": {
                          "line": 36,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1233,
                          "end": 1254,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 8
                            },
                            "end": {
                              "line": 36,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1233,
                            "end": 1249,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 8
                              },
                              "end": {
                                "line": 36,
                                "column": 24
                              },
                              "identifierName": "buttonNormalized"
                            },
                            "name": "buttonNormalized"
                          },
                          "init": {
                            "type": "StringLiteral",
                            "start": 1252,
                            "end": 1254,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 27
                              },
                              "end": {
                                "line": 36,
                                "column": 29
                              }
                            },
                            "extra": {
                              "rawValue": "",
                              "raw": "''"
                            },
                            "value": ""
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 1263,
                      "end": 1363,
                      "loc": {
                        "start": {
                          "line": 38,
                          "column": 4
                        },
                        "end": {
                          "line": 39,
                          "column": 61
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 1266,
                        "end": 1299,
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 7
                          },
                          "end": {
                            "line": 38,
                            "column": 40
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 1266,
                          "end": 1281,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 7
                            },
                            "end": {
                              "line": 38,
                              "column": 22
                            },
                            "identifierName": "buttonTypeClass"
                          },
                          "name": "buttonTypeClass"
                        },
                        "operator": "!==",
                        "right": {
                          "type": "StringLiteral",
                          "start": 1286,
                          "end": 1299,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 27
                            },
                            "end": {
                              "line": 38,
                              "column": 40
                            }
                          },
                          "extra": {
                            "rawValue": "standardBtn",
                            "raw": "\"standardBtn\""
                          },
                          "value": "standardBtn"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 1308,
                        "end": 1363,
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 6
                          },
                          "end": {
                            "line": 39,
                            "column": 61
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 1308,
                          "end": 1362,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 6
                            },
                            "end": {
                              "line": 39,
                              "column": 60
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 1308,
                            "end": 1324,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 6
                              },
                              "end": {
                                "line": 39,
                                "column": 22
                              },
                              "identifierName": "buttonNormalized"
                            },
                            "name": "buttonNormalized"
                          },
                          "right": {
                            "type": "TemplateLiteral",
                            "start": 1327,
                            "end": 1362,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 25
                              },
                              "end": {
                                "line": 39,
                                "column": 60
                              }
                            },
                            "expressions": [
                              {
                                "type": "Identifier",
                                "start": 1341,
                                "end": 1360,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 58
                                  },
                                  "identifierName": "buttonWithoutBraces"
                                },
                                "name": "buttonWithoutBraces"
                              }
                            ],
                            "quasis": [
                              {
                                "type": "TemplateElement",
                                "start": 1328,
                                "end": 1339,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 37
                                  }
                                },
                                "value": {
                                  "raw": " hg-button-",
                                  "cooked": " hg-button-"
                                },
                                "tail": false
                              },
                              {
                                "type": "TemplateElement",
                                "start": 1361,
                                "end": 1361,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 59
                                  }
                                },
                                "value": {
                                  "raw": "",
                                  "cooked": ""
                                },
                                "tail": true
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 1371,
                      "end": 1421,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 4
                        },
                        "end": {
                          "line": 41,
                          "column": 54
                        }
                      },
                      "argument": {
                        "type": "TemplateLiteral",
                        "start": 1378,
                        "end": 1420,
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 11
                          },
                          "end": {
                            "line": 41,
                            "column": 53
                          }
                        },
                        "expressions": [
                          {
                            "type": "Identifier",
                            "start": 1384,
                            "end": 1399,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 17
                              },
                              "end": {
                                "line": 41,
                                "column": 32
                              },
                              "identifierName": "buttonTypeClass"
                            },
                            "name": "buttonTypeClass"
                          },
                          {
                            "type": "Identifier",
                            "start": 1402,
                            "end": 1418,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 35
                              },
                              "end": {
                                "line": 41,
                                "column": 51
                              },
                              "identifierName": "buttonNormalized"
                            },
                            "name": "buttonNormalized"
                          }
                        ],
                        "quasis": [
                          {
                            "type": "TemplateElement",
                            "start": 1379,
                            "end": 1382,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 12
                              },
                              "end": {
                                "line": 41,
                                "column": 15
                              }
                            },
                            "value": {
                              "raw": "hg-",
                              "cooked": "hg-"
                            },
                            "tail": false
                          },
                          {
                            "type": "TemplateElement",
                            "start": 1400,
                            "end": 1400,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 33
                              },
                              "end": {
                                "line": 41,
                                "column": 33
                              }
                            },
                            "value": {
                              "raw": "",
                              "cooked": ""
                            },
                            "tail": false
                          },
                          {
                            "type": "TemplateElement",
                            "start": 1419,
                            "end": 1419,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 52
                              },
                              "end": {
                                "line": 41,
                                "column": 52
                              }
                            },
                            "value": {
                              "raw": "",
                              "cooked": ""
                            },
                            "tail": true
                          }
                        ]
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
                    "start": 817,
                    "end": 995,
                    "loc": {
                      "start": {
                        "line": 27,
                        "column": 2
                      },
                      "end": {
                        "line": 32,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Default button display labels\r\n   ",
                    "start": 1432,
                    "end": 1478,
                    "loc": {
                      "start": {
                        "line": 44,
                        "column": 2
                      },
                      "end": {
                        "line": 46,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 1482,
                "end": 3050,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 2
                  },
                  "end": {
                    "line": 109,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 1482,
                  "end": 1498,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 2
                    },
                    "end": {
                      "line": 47,
                      "column": 18
                    },
                    "identifierName": "getDefaultDiplay"
                  },
                  "name": "getDefaultDiplay",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 1500,
                  "end": 3050,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 20
                    },
                    "end": {
                      "line": 109,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 1507,
                      "end": 3045,
                      "loc": {
                        "start": {
                          "line": 48,
                          "column": 4
                        },
                        "end": {
                          "line": 108,
                          "column": 6
                        }
                      },
                      "argument": {
                        "type": "ObjectExpression",
                        "start": 1514,
                        "end": 3044,
                        "loc": {
                          "start": {
                            "line": 48,
                            "column": 11
                          },
                          "end": {
                            "line": 108,
                            "column": 5
                          }
                        },
                        "properties": [
                          {
                            "type": "ObjectProperty",
                            "start": 1523,
                            "end": 1544,
                            "loc": {
                              "start": {
                                "line": 49,
                                "column": 6
                              },
                              "end": {
                                "line": 49,
                                "column": 27
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1523,
                              "end": 1531,
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 6
                                },
                                "end": {
                                  "line": 49,
                                  "column": 14
                                }
                              },
                              "extra": {
                                "rawValue": "{bksp}",
                                "raw": "'{bksp}'"
                              },
                              "value": "{bksp}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1533,
                              "end": 1544,
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 16
                                },
                                "end": {
                                  "line": 49,
                                  "column": 27
                                }
                              },
                              "extra": {
                                "rawValue": "backspace",
                                "raw": "'backspace'"
                              },
                              "value": "backspace"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1553,
                            "end": 1579,
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 6
                              },
                              "end": {
                                "line": 50,
                                "column": 32
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1553,
                              "end": 1566,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 6
                                },
                                "end": {
                                  "line": 50,
                                  "column": 19
                                }
                              },
                              "extra": {
                                "rawValue": "{backspace}",
                                "raw": "'{backspace}'"
                              },
                              "value": "{backspace}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1568,
                              "end": 1579,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 21
                                },
                                "end": {
                                  "line": 50,
                                  "column": 32
                                }
                              },
                              "extra": {
                                "rawValue": "backspace",
                                "raw": "'backspace'"
                              },
                              "value": "backspace"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1588,
                            "end": 1608,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 6
                              },
                              "end": {
                                "line": 51,
                                "column": 26
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1588,
                              "end": 1597,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 6
                                },
                                "end": {
                                  "line": 51,
                                  "column": 15
                                }
                              },
                              "extra": {
                                "rawValue": "{enter}",
                                "raw": "'{enter}'"
                              },
                              "value": "{enter}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1599,
                              "end": 1608,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 17
                                },
                                "end": {
                                  "line": 51,
                                  "column": 26
                                }
                              },
                              "extra": {
                                "rawValue": "< enter",
                                "raw": "'< enter'"
                              },
                              "value": "< enter"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1617,
                            "end": 1635,
                            "loc": {
                              "start": {
                                "line": 52,
                                "column": 6
                              },
                              "end": {
                                "line": 52,
                                "column": 24
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1617,
                              "end": 1626,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 6
                                },
                                "end": {
                                  "line": 52,
                                  "column": 15
                                }
                              },
                              "extra": {
                                "rawValue": "{shift}",
                                "raw": "'{shift}'"
                              },
                              "value": "{shift}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1628,
                              "end": 1635,
                              "loc": {
                                "start": {
                                  "line": 52,
                                  "column": 17
                                },
                                "end": {
                                  "line": 52,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "shift",
                                "raw": "'shift'"
                              },
                              "value": "shift"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1644,
                            "end": 1666,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 6
                              },
                              "end": {
                                "line": 53,
                                "column": 28
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1644,
                              "end": 1657,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 6
                                },
                                "end": {
                                  "line": 53,
                                  "column": 19
                                }
                              },
                              "extra": {
                                "rawValue": "{shiftleft}",
                                "raw": "'{shiftleft}'"
                              },
                              "value": "{shiftleft}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1659,
                              "end": 1666,
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 21
                                },
                                "end": {
                                  "line": 53,
                                  "column": 28
                                }
                              },
                              "extra": {
                                "rawValue": "shift",
                                "raw": "'shift'"
                              },
                              "value": "shift"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1675,
                            "end": 1698,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 6
                              },
                              "end": {
                                "line": 54,
                                "column": 29
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1675,
                              "end": 1689,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 6
                                },
                                "end": {
                                  "line": 54,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "{shiftright}",
                                "raw": "'{shiftright}'"
                              },
                              "value": "{shiftright}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1691,
                              "end": 1698,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 22
                                },
                                "end": {
                                  "line": 54,
                                  "column": 29
                                }
                              },
                              "extra": {
                                "rawValue": "shift",
                                "raw": "'shift'"
                              },
                              "value": "shift"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1707,
                            "end": 1721,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 6
                              },
                              "end": {
                                "line": 55,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1707,
                              "end": 1714,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 6
                                },
                                "end": {
                                  "line": 55,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{alt}",
                                "raw": "'{alt}'"
                              },
                              "value": "{alt}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1716,
                              "end": 1721,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 15
                                },
                                "end": {
                                  "line": 55,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "alt",
                                "raw": "'alt'"
                              },
                              "value": "alt"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1730,
                            "end": 1744,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 6
                              },
                              "end": {
                                "line": 56,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1730,
                              "end": 1735,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 6
                                },
                                "end": {
                                  "line": 56,
                                  "column": 11
                                }
                              },
                              "extra": {
                                "rawValue": "{s}",
                                "raw": "'{s}'"
                              },
                              "value": "{s}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1737,
                              "end": 1744,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 13
                                },
                                "end": {
                                  "line": 56,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "shift",
                                "raw": "'shift'"
                              },
                              "value": "shift"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1753,
                            "end": 1767,
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 6
                              },
                              "end": {
                                "line": 57,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1753,
                              "end": 1760,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 6
                                },
                                "end": {
                                  "line": 57,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{tab}",
                                "raw": "'{tab}'"
                              },
                              "value": "{tab}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1762,
                              "end": 1767,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 15
                                },
                                "end": {
                                  "line": 57,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "tab",
                                "raw": "'tab'"
                              },
                              "value": "tab"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1776,
                            "end": 1792,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 6
                              },
                              "end": {
                                "line": 58,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1776,
                              "end": 1784,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 6
                                },
                                "end": {
                                  "line": 58,
                                  "column": 14
                                }
                              },
                              "extra": {
                                "rawValue": "{lock}",
                                "raw": "'{lock}'"
                              },
                              "value": "{lock}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1786,
                              "end": 1792,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 16
                                },
                                "end": {
                                  "line": 58,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "caps",
                                "raw": "'caps'"
                              },
                              "value": "caps"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1801,
                            "end": 1821,
                            "loc": {
                              "start": {
                                "line": 59,
                                "column": 6
                              },
                              "end": {
                                "line": 59,
                                "column": 26
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1801,
                              "end": 1813,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 6
                                },
                                "end": {
                                  "line": 59,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "{capslock}",
                                "raw": "'{capslock}'"
                              },
                              "value": "{capslock}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1815,
                              "end": 1821,
                              "loc": {
                                "start": {
                                  "line": 59,
                                  "column": 20
                                },
                                "end": {
                                  "line": 59,
                                  "column": 26
                                }
                              },
                              "extra": {
                                "rawValue": "caps",
                                "raw": "'caps'"
                              },
                              "value": "caps"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1830,
                            "end": 1850,
                            "loc": {
                              "start": {
                                "line": 60,
                                "column": 6
                              },
                              "end": {
                                "line": 60,
                                "column": 26
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1830,
                              "end": 1840,
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 6
                                },
                                "end": {
                                  "line": 60,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{accept}",
                                "raw": "'{accept}'"
                              },
                              "value": "{accept}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1842,
                              "end": 1850,
                              "loc": {
                                "start": {
                                  "line": 60,
                                  "column": 18
                                },
                                "end": {
                                  "line": 60,
                                  "column": 26
                                }
                              },
                              "extra": {
                                "rawValue": "Submit",
                                "raw": "'Submit'"
                              },
                              "value": "Submit"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1859,
                            "end": 1873,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 6
                              },
                              "end": {
                                "line": 61,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1859,
                              "end": 1868,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 6
                                },
                                "end": {
                                  "line": 61,
                                  "column": 15
                                }
                              },
                              "extra": {
                                "rawValue": "{space}",
                                "raw": "'{space}'"
                              },
                              "value": "{space}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1870,
                              "end": 1873,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 17
                                },
                                "end": {
                                  "line": 61,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": " ",
                                "raw": "' '"
                              },
                              "value": " "
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1882,
                            "end": 1893,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 6
                              },
                              "end": {
                                "line": 62,
                                "column": 17
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1882,
                              "end": 1888,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 6
                                },
                                "end": {
                                  "line": 62,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{//}",
                                "raw": "'{//}'"
                              },
                              "value": "{//}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1890,
                              "end": 1893,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 14
                                },
                                "end": {
                                  "line": 62,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": " ",
                                "raw": "' '"
                              },
                              "value": " "
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1902,
                            "end": 1916,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 6
                              },
                              "end": {
                                "line": 63,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1902,
                              "end": 1909,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 6
                                },
                                "end": {
                                  "line": 63,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{esc}",
                                "raw": "\"{esc}\""
                              },
                              "value": "{esc}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1911,
                              "end": 1916,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 15
                                },
                                "end": {
                                  "line": 63,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "esc",
                                "raw": "\"esc\""
                              },
                              "value": "esc"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1925,
                            "end": 1942,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 6
                              },
                              "end": {
                                "line": 64,
                                "column": 23
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1925,
                              "end": 1935,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 6
                                },
                                "end": {
                                  "line": 64,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{escape}",
                                "raw": "\"{escape}\""
                              },
                              "value": "{escape}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1937,
                              "end": 1942,
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 18
                                },
                                "end": {
                                  "line": 64,
                                  "column": 23
                                }
                              },
                              "extra": {
                                "rawValue": "esc",
                                "raw": "\"esc\""
                              },
                              "value": "esc"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1951,
                            "end": 1963,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 6
                              },
                              "end": {
                                "line": 65,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1951,
                              "end": 1957,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 6
                                },
                                "end": {
                                  "line": 65,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f1}",
                                "raw": "\"{f1}\""
                              },
                              "value": "{f1}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1959,
                              "end": 1963,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 14
                                },
                                "end": {
                                  "line": 65,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f1",
                                "raw": "\"f1\""
                              },
                              "value": "f1"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1972,
                            "end": 1984,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 6
                              },
                              "end": {
                                "line": 66,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1972,
                              "end": 1978,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 6
                                },
                                "end": {
                                  "line": 66,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f2}",
                                "raw": "\"{f2}\""
                              },
                              "value": "{f2}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 1980,
                              "end": 1984,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 14
                                },
                                "end": {
                                  "line": 66,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f2",
                                "raw": "\"f2\""
                              },
                              "value": "f2"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 1993,
                            "end": 2005,
                            "loc": {
                              "start": {
                                "line": 67,
                                "column": 6
                              },
                              "end": {
                                "line": 67,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 1993,
                              "end": 1999,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 6
                                },
                                "end": {
                                  "line": 67,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f3}",
                                "raw": "\"{f3}\""
                              },
                              "value": "{f3}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2001,
                              "end": 2005,
                              "loc": {
                                "start": {
                                  "line": 67,
                                  "column": 14
                                },
                                "end": {
                                  "line": 67,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f3",
                                "raw": "\"f3\""
                              },
                              "value": "f3"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2014,
                            "end": 2026,
                            "loc": {
                              "start": {
                                "line": 68,
                                "column": 6
                              },
                              "end": {
                                "line": 68,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2014,
                              "end": 2020,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 6
                                },
                                "end": {
                                  "line": 68,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f4}",
                                "raw": "\"{f4}\""
                              },
                              "value": "{f4}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2022,
                              "end": 2026,
                              "loc": {
                                "start": {
                                  "line": 68,
                                  "column": 14
                                },
                                "end": {
                                  "line": 68,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f4",
                                "raw": "\"f4\""
                              },
                              "value": "f4"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2035,
                            "end": 2047,
                            "loc": {
                              "start": {
                                "line": 69,
                                "column": 6
                              },
                              "end": {
                                "line": 69,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2035,
                              "end": 2041,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 6
                                },
                                "end": {
                                  "line": 69,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f5}",
                                "raw": "\"{f5}\""
                              },
                              "value": "{f5}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2043,
                              "end": 2047,
                              "loc": {
                                "start": {
                                  "line": 69,
                                  "column": 14
                                },
                                "end": {
                                  "line": 69,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f5",
                                "raw": "\"f5\""
                              },
                              "value": "f5"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2056,
                            "end": 2068,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 6
                              },
                              "end": {
                                "line": 70,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2056,
                              "end": 2062,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 6
                                },
                                "end": {
                                  "line": 70,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f6}",
                                "raw": "\"{f6}\""
                              },
                              "value": "{f6}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2064,
                              "end": 2068,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 14
                                },
                                "end": {
                                  "line": 70,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f6",
                                "raw": "\"f6\""
                              },
                              "value": "f6"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2077,
                            "end": 2089,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 6
                              },
                              "end": {
                                "line": 71,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2077,
                              "end": 2083,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 6
                                },
                                "end": {
                                  "line": 71,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f7}",
                                "raw": "\"{f7}\""
                              },
                              "value": "{f7}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2085,
                              "end": 2089,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 14
                                },
                                "end": {
                                  "line": 71,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f7",
                                "raw": "\"f7\""
                              },
                              "value": "f7"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2098,
                            "end": 2110,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 6
                              },
                              "end": {
                                "line": 72,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2098,
                              "end": 2104,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 6
                                },
                                "end": {
                                  "line": 72,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f8}",
                                "raw": "\"{f8}\""
                              },
                              "value": "{f8}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2106,
                              "end": 2110,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 14
                                },
                                "end": {
                                  "line": 72,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f8",
                                "raw": "\"f8\""
                              },
                              "value": "f8"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2119,
                            "end": 2131,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 6
                              },
                              "end": {
                                "line": 73,
                                "column": 18
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2119,
                              "end": 2125,
                              "loc": {
                                "start": {
                                  "line": 73,
                                  "column": 6
                                },
                                "end": {
                                  "line": 73,
                                  "column": 12
                                }
                              },
                              "extra": {
                                "rawValue": "{f9}",
                                "raw": "\"{f9}\""
                              },
                              "value": "{f9}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2127,
                              "end": 2131,
                              "loc": {
                                "start": {
                                  "line": 73,
                                  "column": 14
                                },
                                "end": {
                                  "line": 73,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "f9",
                                "raw": "\"f9\""
                              },
                              "value": "f9"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2140,
                            "end": 2154,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 6
                              },
                              "end": {
                                "line": 74,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2140,
                              "end": 2147,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 6
                                },
                                "end": {
                                  "line": 74,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{f10}",
                                "raw": "\"{f10}\""
                              },
                              "value": "{f10}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2149,
                              "end": 2154,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 15
                                },
                                "end": {
                                  "line": 74,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "f10",
                                "raw": "\"f10\""
                              },
                              "value": "f10"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2163,
                            "end": 2177,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 6
                              },
                              "end": {
                                "line": 75,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2163,
                              "end": 2170,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 6
                                },
                                "end": {
                                  "line": 75,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{f11}",
                                "raw": "\"{f11}\""
                              },
                              "value": "{f11}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2172,
                              "end": 2177,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 15
                                },
                                "end": {
                                  "line": 75,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "f11",
                                "raw": "\"f11\""
                              },
                              "value": "f11"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2186,
                            "end": 2200,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 6
                              },
                              "end": {
                                "line": 76,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2186,
                              "end": 2193,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 6
                                },
                                "end": {
                                  "line": 76,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{f12}",
                                "raw": "\"{f12}\""
                              },
                              "value": "{f12}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2195,
                              "end": 2200,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 15
                                },
                                "end": {
                                  "line": 76,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "f12",
                                "raw": "\"f12\""
                              },
                              "value": "f12"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2209,
                            "end": 2230,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 6
                              },
                              "end": {
                                "line": 77,
                                "column": 27
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2209,
                              "end": 2225,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 6
                                },
                                "end": {
                                  "line": 77,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "{numpaddivide}",
                                "raw": "'{numpaddivide}'"
                              },
                              "value": "{numpaddivide}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2227,
                              "end": 2230,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 24
                                },
                                "end": {
                                  "line": 77,
                                  "column": 27
                                }
                              },
                              "extra": {
                                "rawValue": "/",
                                "raw": "'/'"
                              },
                              "value": "/"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2239,
                            "end": 2258,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 6
                              },
                              "end": {
                                "line": 78,
                                "column": 25
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2239,
                              "end": 2250,
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 6
                                },
                                "end": {
                                  "line": 78,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numlock}",
                                "raw": "'{numlock}'"
                              },
                              "value": "{numlock}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2252,
                              "end": 2258,
                              "loc": {
                                "start": {
                                  "line": 78,
                                  "column": 19
                                },
                                "end": {
                                  "line": 78,
                                  "column": 25
                                }
                              },
                              "extra": {
                                "rawValue": "lock",
                                "raw": "'lock'"
                              },
                              "value": "lock"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2267,
                            "end": 2283,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 6
                              },
                              "end": {
                                "line": 79,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2267,
                              "end": 2278,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 6
                                },
                                "end": {
                                  "line": 79,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{arrowup}",
                                "raw": "\"{arrowup}\""
                              },
                              "value": "{arrowup}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2280,
                              "end": 2283,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 19
                                },
                                "end": {
                                  "line": 79,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "↑",
                                "raw": "\"↑\""
                              },
                              "value": "↑"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2292,
                            "end": 2310,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 6
                              },
                              "end": {
                                "line": 80,
                                "column": 24
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2292,
                              "end": 2305,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 6
                                },
                                "end": {
                                  "line": 80,
                                  "column": 19
                                }
                              },
                              "extra": {
                                "rawValue": "{arrowleft}",
                                "raw": "\"{arrowleft}\""
                              },
                              "value": "{arrowleft}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2307,
                              "end": 2310,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 21
                                },
                                "end": {
                                  "line": 80,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "←",
                                "raw": "\"←\""
                              },
                              "value": "←"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2319,
                            "end": 2337,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 6
                              },
                              "end": {
                                "line": 81,
                                "column": 24
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2319,
                              "end": 2332,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 6
                                },
                                "end": {
                                  "line": 81,
                                  "column": 19
                                }
                              },
                              "extra": {
                                "rawValue": "{arrowdown}",
                                "raw": "\"{arrowdown}\""
                              },
                              "value": "{arrowdown}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2334,
                              "end": 2337,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 21
                                },
                                "end": {
                                  "line": 81,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "↓",
                                "raw": "\"↓\""
                              },
                              "value": "↓"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2346,
                            "end": 2365,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 6
                              },
                              "end": {
                                "line": 82,
                                "column": 25
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2346,
                              "end": 2360,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 6
                                },
                                "end": {
                                  "line": 82,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "{arrowright}",
                                "raw": "\"{arrowright}\""
                              },
                              "value": "{arrowright}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2362,
                              "end": 2365,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 22
                                },
                                "end": {
                                  "line": 82,
                                  "column": 25
                                }
                              },
                              "extra": {
                                "rawValue": "→",
                                "raw": "\"→\""
                              },
                              "value": "→"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2374,
                            "end": 2393,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 6
                              },
                              "end": {
                                "line": 83,
                                "column": 25
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2374,
                              "end": 2384,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 6
                                },
                                "end": {
                                  "line": 83,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{prtscr}",
                                "raw": "\"{prtscr}\""
                              },
                              "value": "{prtscr}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2386,
                              "end": 2393,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 18
                                },
                                "end": {
                                  "line": 83,
                                  "column": 25
                                }
                              },
                              "extra": {
                                "rawValue": "print",
                                "raw": "\"print\""
                              },
                              "value": "print"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2402,
                            "end": 2426,
                            "loc": {
                              "start": {
                                "line": 84,
                                "column": 6
                              },
                              "end": {
                                "line": 84,
                                "column": 30
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2402,
                              "end": 2416,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 6
                                },
                                "end": {
                                  "line": 84,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "{scrolllock}",
                                "raw": "\"{scrolllock}\""
                              },
                              "value": "{scrolllock}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2418,
                              "end": 2426,
                              "loc": {
                                "start": {
                                  "line": 84,
                                  "column": 22
                                },
                                "end": {
                                  "line": 84,
                                  "column": 30
                                }
                              },
                              "extra": {
                                "rawValue": "scroll",
                                "raw": "\"scroll\""
                              },
                              "value": "scroll"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2435,
                            "end": 2453,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 6
                              },
                              "end": {
                                "line": 85,
                                "column": 24
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2435,
                              "end": 2444,
                              "loc": {
                                "start": {
                                  "line": 85,
                                  "column": 6
                                },
                                "end": {
                                  "line": 85,
                                  "column": 15
                                }
                              },
                              "extra": {
                                "rawValue": "{pause}",
                                "raw": "\"{pause}\""
                              },
                              "value": "{pause}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2446,
                              "end": 2453,
                              "loc": {
                                "start": {
                                  "line": 85,
                                  "column": 17
                                },
                                "end": {
                                  "line": 85,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "pause",
                                "raw": "\"pause\""
                              },
                              "value": "pause"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2462,
                            "end": 2479,
                            "loc": {
                              "start": {
                                "line": 86,
                                "column": 6
                              },
                              "end": {
                                "line": 86,
                                "column": 23
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2462,
                              "end": 2472,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 6
                                },
                                "end": {
                                  "line": 86,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{insert}",
                                "raw": "\"{insert}\""
                              },
                              "value": "{insert}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2474,
                              "end": 2479,
                              "loc": {
                                "start": {
                                  "line": 86,
                                  "column": 18
                                },
                                "end": {
                                  "line": 86,
                                  "column": 23
                                }
                              },
                              "extra": {
                                "rawValue": "ins",
                                "raw": "\"ins\""
                              },
                              "value": "ins"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2488,
                            "end": 2504,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 6
                              },
                              "end": {
                                "line": 87,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2488,
                              "end": 2496,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 6
                                },
                                "end": {
                                  "line": 87,
                                  "column": 14
                                }
                              },
                              "extra": {
                                "rawValue": "{home}",
                                "raw": "\"{home}\""
                              },
                              "value": "{home}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2498,
                              "end": 2504,
                              "loc": {
                                "start": {
                                  "line": 87,
                                  "column": 16
                                },
                                "end": {
                                  "line": 87,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "home",
                                "raw": "\"home\""
                              },
                              "value": "home"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2513,
                            "end": 2529,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 6
                              },
                              "end": {
                                "line": 88,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2513,
                              "end": 2523,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 6
                                },
                                "end": {
                                  "line": 88,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{pageup}",
                                "raw": "\"{pageup}\""
                              },
                              "value": "{pageup}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2525,
                              "end": 2529,
                              "loc": {
                                "start": {
                                  "line": 88,
                                  "column": 18
                                },
                                "end": {
                                  "line": 88,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "up",
                                "raw": "\"up\""
                              },
                              "value": "up"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2538,
                            "end": 2555,
                            "loc": {
                              "start": {
                                "line": 89,
                                "column": 6
                              },
                              "end": {
                                "line": 89,
                                "column": 23
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2538,
                              "end": 2548,
                              "loc": {
                                "start": {
                                  "line": 89,
                                  "column": 6
                                },
                                "end": {
                                  "line": 89,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{delete}",
                                "raw": "\"{delete}\""
                              },
                              "value": "{delete}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2550,
                              "end": 2555,
                              "loc": {
                                "start": {
                                  "line": 89,
                                  "column": 18
                                },
                                "end": {
                                  "line": 89,
                                  "column": 23
                                }
                              },
                              "extra": {
                                "rawValue": "del",
                                "raw": "\"del\""
                              },
                              "value": "del"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2564,
                            "end": 2578,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 6
                              },
                              "end": {
                                "line": 90,
                                "column": 20
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2564,
                              "end": 2571,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 6
                                },
                                "end": {
                                  "line": 90,
                                  "column": 13
                                }
                              },
                              "extra": {
                                "rawValue": "{end}",
                                "raw": "\"{end}\""
                              },
                              "value": "{end}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2573,
                              "end": 2578,
                              "loc": {
                                "start": {
                                  "line": 90,
                                  "column": 15
                                },
                                "end": {
                                  "line": 90,
                                  "column": 20
                                }
                              },
                              "extra": {
                                "rawValue": "end",
                                "raw": "\"end\""
                              },
                              "value": "end"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2587,
                            "end": 2607,
                            "loc": {
                              "start": {
                                "line": 91,
                                "column": 6
                              },
                              "end": {
                                "line": 91,
                                "column": 26
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2587,
                              "end": 2599,
                              "loc": {
                                "start": {
                                  "line": 91,
                                  "column": 6
                                },
                                "end": {
                                  "line": 91,
                                  "column": 18
                                }
                              },
                              "extra": {
                                "rawValue": "{pagedown}",
                                "raw": "\"{pagedown}\""
                              },
                              "value": "{pagedown}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2601,
                              "end": 2607,
                              "loc": {
                                "start": {
                                  "line": 91,
                                  "column": 20
                                },
                                "end": {
                                  "line": 91,
                                  "column": 26
                                }
                              },
                              "extra": {
                                "rawValue": "down",
                                "raw": "\"down\""
                              },
                              "value": "down"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2616,
                            "end": 2639,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 6
                              },
                              "end": {
                                "line": 92,
                                "column": 29
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2616,
                              "end": 2634,
                              "loc": {
                                "start": {
                                  "line": 92,
                                  "column": 6
                                },
                                "end": {
                                  "line": 92,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "{numpadmultiply}",
                                "raw": "\"{numpadmultiply}\""
                              },
                              "value": "{numpadmultiply}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2636,
                              "end": 2639,
                              "loc": {
                                "start": {
                                  "line": 92,
                                  "column": 26
                                },
                                "end": {
                                  "line": 92,
                                  "column": 29
                                }
                              },
                              "extra": {
                                "rawValue": "*",
                                "raw": "\"*\""
                              },
                              "value": "*"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2648,
                            "end": 2671,
                            "loc": {
                              "start": {
                                "line": 93,
                                "column": 6
                              },
                              "end": {
                                "line": 93,
                                "column": 29
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2648,
                              "end": 2666,
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 6
                                },
                                "end": {
                                  "line": 93,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "{numpadsubtract}",
                                "raw": "\"{numpadsubtract}\""
                              },
                              "value": "{numpadsubtract}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2668,
                              "end": 2671,
                              "loc": {
                                "start": {
                                  "line": 93,
                                  "column": 26
                                },
                                "end": {
                                  "line": 93,
                                  "column": 29
                                }
                              },
                              "extra": {
                                "rawValue": "-",
                                "raw": "\"-\""
                              },
                              "value": "-"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2680,
                            "end": 2698,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 6
                              },
                              "end": {
                                "line": 94,
                                "column": 24
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2680,
                              "end": 2693,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 6
                                },
                                "end": {
                                  "line": 94,
                                  "column": 19
                                }
                              },
                              "extra": {
                                "rawValue": "{numpadadd}",
                                "raw": "\"{numpadadd}\""
                              },
                              "value": "{numpadadd}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2695,
                              "end": 2698,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 21
                                },
                                "end": {
                                  "line": 94,
                                  "column": 24
                                }
                              },
                              "extra": {
                                "rawValue": "+",
                                "raw": "\"+\""
                              },
                              "value": "+"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2707,
                            "end": 2731,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 6
                              },
                              "end": {
                                "line": 95,
                                "column": 30
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2707,
                              "end": 2722,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 6
                                },
                                "end": {
                                  "line": 95,
                                  "column": 21
                                }
                              },
                              "extra": {
                                "rawValue": "{numpadenter}",
                                "raw": "\"{numpadenter}\""
                              },
                              "value": "{numpadenter}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2724,
                              "end": 2731,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 23
                                },
                                "end": {
                                  "line": 95,
                                  "column": 30
                                }
                              },
                              "extra": {
                                "rawValue": "enter",
                                "raw": "\"enter\""
                              },
                              "value": "enter"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2740,
                            "end": 2755,
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 6
                              },
                              "end": {
                                "line": 96,
                                "column": 21
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2740,
                              "end": 2750,
                              "loc": {
                                "start": {
                                  "line": 96,
                                  "column": 6
                                },
                                "end": {
                                  "line": 96,
                                  "column": 16
                                }
                              },
                              "extra": {
                                "rawValue": "{period}",
                                "raw": "\"{period}\""
                              },
                              "value": "{period}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2752,
                              "end": 2755,
                              "loc": {
                                "start": {
                                  "line": 96,
                                  "column": 18
                                },
                                "end": {
                                  "line": 96,
                                  "column": 21
                                }
                              },
                              "extra": {
                                "rawValue": ".",
                                "raw": "\".\""
                              },
                              "value": "."
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2764,
                            "end": 2786,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 6
                              },
                              "end": {
                                "line": 97,
                                "column": 28
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2764,
                              "end": 2781,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 6
                                },
                                "end": {
                                  "line": 97,
                                  "column": 23
                                }
                              },
                              "extra": {
                                "rawValue": "{numpaddecimal}",
                                "raw": "\"{numpaddecimal}\""
                              },
                              "value": "{numpaddecimal}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2783,
                              "end": 2786,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 25
                                },
                                "end": {
                                  "line": 97,
                                  "column": 28
                                }
                              },
                              "extra": {
                                "rawValue": ".",
                                "raw": "\".\""
                              },
                              "value": "."
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2795,
                            "end": 2811,
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 6
                              },
                              "end": {
                                "line": 98,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2795,
                              "end": 2806,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 6
                                },
                                "end": {
                                  "line": 98,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad0}",
                                "raw": "\"{numpad0}\""
                              },
                              "value": "{numpad0}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2808,
                              "end": 2811,
                              "loc": {
                                "start": {
                                  "line": 98,
                                  "column": 19
                                },
                                "end": {
                                  "line": 98,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "0",
                                "raw": "\"0\""
                              },
                              "value": "0"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2820,
                            "end": 2836,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 6
                              },
                              "end": {
                                "line": 99,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2820,
                              "end": 2831,
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 6
                                },
                                "end": {
                                  "line": 99,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad1}",
                                "raw": "\"{numpad1}\""
                              },
                              "value": "{numpad1}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2833,
                              "end": 2836,
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 19
                                },
                                "end": {
                                  "line": 99,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "1",
                                "raw": "\"1\""
                              },
                              "value": "1"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2845,
                            "end": 2861,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 6
                              },
                              "end": {
                                "line": 100,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2845,
                              "end": 2856,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 6
                                },
                                "end": {
                                  "line": 100,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad2}",
                                "raw": "\"{numpad2}\""
                              },
                              "value": "{numpad2}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2858,
                              "end": 2861,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 19
                                },
                                "end": {
                                  "line": 100,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "2",
                                "raw": "\"2\""
                              },
                              "value": "2"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2870,
                            "end": 2886,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 6
                              },
                              "end": {
                                "line": 101,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2870,
                              "end": 2881,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 6
                                },
                                "end": {
                                  "line": 101,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad3}",
                                "raw": "\"{numpad3}\""
                              },
                              "value": "{numpad3}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2883,
                              "end": 2886,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 19
                                },
                                "end": {
                                  "line": 101,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "3",
                                "raw": "\"3\""
                              },
                              "value": "3"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2895,
                            "end": 2911,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 6
                              },
                              "end": {
                                "line": 102,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2895,
                              "end": 2906,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 6
                                },
                                "end": {
                                  "line": 102,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad4}",
                                "raw": "\"{numpad4}\""
                              },
                              "value": "{numpad4}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2908,
                              "end": 2911,
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 19
                                },
                                "end": {
                                  "line": 102,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "4",
                                "raw": "\"4\""
                              },
                              "value": "4"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2920,
                            "end": 2936,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 6
                              },
                              "end": {
                                "line": 103,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2920,
                              "end": 2931,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 6
                                },
                                "end": {
                                  "line": 103,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad5}",
                                "raw": "\"{numpad5}\""
                              },
                              "value": "{numpad5}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2933,
                              "end": 2936,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 19
                                },
                                "end": {
                                  "line": 103,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "5",
                                "raw": "\"5\""
                              },
                              "value": "5"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2945,
                            "end": 2961,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 6
                              },
                              "end": {
                                "line": 104,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2945,
                              "end": 2956,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 6
                                },
                                "end": {
                                  "line": 104,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad6}",
                                "raw": "\"{numpad6}\""
                              },
                              "value": "{numpad6}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2958,
                              "end": 2961,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 19
                                },
                                "end": {
                                  "line": 104,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "6",
                                "raw": "\"6\""
                              },
                              "value": "6"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2970,
                            "end": 2986,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 6
                              },
                              "end": {
                                "line": 105,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2970,
                              "end": 2981,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 6
                                },
                                "end": {
                                  "line": 105,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad7}",
                                "raw": "\"{numpad7}\""
                              },
                              "value": "{numpad7}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 2983,
                              "end": 2986,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 19
                                },
                                "end": {
                                  "line": 105,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "7",
                                "raw": "\"7\""
                              },
                              "value": "7"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 2995,
                            "end": 3011,
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 6
                              },
                              "end": {
                                "line": 106,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 2995,
                              "end": 3006,
                              "loc": {
                                "start": {
                                  "line": 106,
                                  "column": 6
                                },
                                "end": {
                                  "line": 106,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad8}",
                                "raw": "\"{numpad8}\""
                              },
                              "value": "{numpad8}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 3008,
                              "end": 3011,
                              "loc": {
                                "start": {
                                  "line": 106,
                                  "column": 19
                                },
                                "end": {
                                  "line": 106,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "8",
                                "raw": "\"8\""
                              },
                              "value": "8"
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 3020,
                            "end": 3036,
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 6
                              },
                              "end": {
                                "line": 107,
                                "column": 22
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "StringLiteral",
                              "start": 3020,
                              "end": 3031,
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 6
                                },
                                "end": {
                                  "line": 107,
                                  "column": 17
                                }
                              },
                              "extra": {
                                "rawValue": "{numpad9}",
                                "raw": "\"{numpad9}\""
                              },
                              "value": "{numpad9}"
                            },
                            "value": {
                              "type": "StringLiteral",
                              "start": 3033,
                              "end": 3036,
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 19
                                },
                                "end": {
                                  "line": 107,
                                  "column": 22
                                }
                              },
                              "extra": {
                                "rawValue": "9",
                                "raw": "\"9\""
                              },
                              "value": "9"
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Default button display labels\r\n   ",
                    "start": 1432,
                    "end": 1478,
                    "loc": {
                      "start": {
                        "line": 44,
                        "column": 2
                      },
                      "end": {
                        "line": 46,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
                    "start": 3054,
                    "end": 3352,
                    "loc": {
                      "start": {
                        "line": 110,
                        "column": 2
                      },
                      "end": {
                        "line": 116,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3356,
                "end": 3621,
                "loc": {
                  "start": {
                    "line": 117,
                    "column": 2
                  },
                  "end": {
                    "line": 125,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3356,
                  "end": 3376,
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 2
                    },
                    "end": {
                      "line": 117,
                      "column": 22
                    },
                    "identifierName": "getButtonDisplayName"
                  },
                  "name": "getButtonDisplayName",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 3377,
                    "end": 3383,
                    "loc": {
                      "start": {
                        "line": 117,
                        "column": 23
                      },
                      "end": {
                        "line": 117,
                        "column": 29
                      },
                      "identifierName": "button"
                    },
                    "name": "button"
                  },
                  {
                    "type": "Identifier",
                    "start": 3385,
                    "end": 3392,
                    "loc": {
                      "start": {
                        "line": 117,
                        "column": 31
                      },
                      "end": {
                        "line": 117,
                        "column": 38
                      },
                      "identifierName": "display"
                    },
                    "name": "display"
                  },
                  {
                    "type": "Identifier",
                    "start": 3394,
                    "end": 3406,
                    "loc": {
                      "start": {
                        "line": 117,
                        "column": 40
                      },
                      "end": {
                        "line": 117,
                        "column": 52
                      },
                      "identifierName": "mergeDisplay"
                    },
                    "name": "mergeDisplay"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 3407,
                  "end": 3621,
                  "loc": {
                    "start": {
                      "line": 117,
                      "column": 53
                    },
                    "end": {
                      "line": 125,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 3414,
                      "end": 3575,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 4
                        },
                        "end": {
                          "line": 122,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 3417,
                        "end": 3429,
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 7
                          },
                          "end": {
                            "line": 118,
                            "column": 19
                          },
                          "identifierName": "mergeDisplay"
                        },
                        "name": "mergeDisplay"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 3430,
                        "end": 3508,
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 20
                          },
                          "end": {
                            "line": 120,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 3439,
                            "end": 3501,
                            "loc": {
                              "start": {
                                "line": 119,
                                "column": 6
                              },
                              "end": {
                                "line": 119,
                                "column": 68
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 3439,
                              "end": 3500,
                              "loc": {
                                "start": {
                                  "line": 119,
                                  "column": 6
                                },
                                "end": {
                                  "line": 119,
                                  "column": 67
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 3439,
                                "end": 3446,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 13
                                  },
                                  "identifierName": "display"
                                },
                                "name": "display"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 3449,
                                "end": 3500,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 67
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 3449,
                                  "end": 3462,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3449,
                                    "end": 3455,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 22
                                      },
                                      "identifierName": "Object"
                                    },
                                    "name": "Object"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3456,
                                    "end": 3462,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 29
                                      },
                                      "identifierName": "assign"
                                    },
                                    "name": "assign"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "ObjectExpression",
                                    "start": 3463,
                                    "end": 3465,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 32
                                      }
                                    },
                                    "properties": []
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 3467,
                                    "end": 3490,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 57
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 3467,
                                      "end": 3488,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 55
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 3467,
                                        "end": 3471,
                                        "loc": {
                                          "start": {
                                            "line": 119,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 119,
                                            "column": 38
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3472,
                                        "end": 3488,
                                        "loc": {
                                          "start": {
                                            "line": 119,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 119,
                                            "column": 55
                                          },
                                          "identifierName": "getDefaultDiplay"
                                        },
                                        "name": "getDefaultDiplay"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 3492,
                                    "end": 3499,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 66
                                      },
                                      "identifierName": "display"
                                    },
                                    "name": "display"
                                  }
                                ]
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 3514,
                        "end": 3575,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 11
                          },
                          "end": {
                            "line": 122,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 3523,
                            "end": 3568,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 6
                              },
                              "end": {
                                "line": 121,
                                "column": 51
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 3523,
                              "end": 3567,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 6
                                },
                                "end": {
                                  "line": 121,
                                  "column": 50
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 3523,
                                "end": 3530,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 13
                                  },
                                  "identifierName": "display"
                                },
                                "name": "display"
                              },
                              "right": {
                                "type": "LogicalExpression",
                                "start": 3533,
                                "end": 3567,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 3533,
                                  "end": 3540,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 23
                                    },
                                    "identifierName": "display"
                                  },
                                  "name": "display"
                                },
                                "operator": "||",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 3544,
                                  "end": 3567,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 50
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 3544,
                                    "end": 3565,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3544,
                                      "end": 3548,
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3549,
                                      "end": 3565,
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 48
                                        },
                                        "identifierName": "getDefaultDiplay"
                                      },
                                      "name": "getDefaultDiplay"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 3583,
                      "end": 3616,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 4
                        },
                        "end": {
                          "line": 124,
                          "column": 37
                        }
                      },
                      "argument": {
                        "type": "LogicalExpression",
                        "start": 3590,
                        "end": 3615,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 11
                          },
                          "end": {
                            "line": 124,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 3590,
                          "end": 3605,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 11
                            },
                            "end": {
                              "line": 124,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3590,
                            "end": 3597,
                            "loc": {
                              "start": {
                                "line": 124,
                                "column": 11
                              },
                              "end": {
                                "line": 124,
                                "column": 18
                              },
                              "identifierName": "display"
                            },
                            "name": "display"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3598,
                            "end": 3604,
                            "loc": {
                              "start": {
                                "line": 124,
                                "column": 19
                              },
                              "end": {
                                "line": 124,
                                "column": 25
                              },
                              "identifierName": "button"
                            },
                            "name": "button"
                          },
                          "computed": true
                        },
                        "operator": "||",
                        "right": {
                          "type": "Identifier",
                          "start": 3609,
                          "end": 3615,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 30
                            },
                            "end": {
                              "line": 124,
                              "column": 36
                            },
                            "identifierName": "button"
                          },
                          "name": "button"
                        }
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
                    "start": 3054,
                    "end": 3352,
                    "loc": {
                      "start": {
                        "line": 110,
                        "column": 2
                      },
                      "end": {
                        "line": 116,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 3631,
                    "end": 4025,
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 2
                      },
                      "end": {
                        "line": 136,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4029,
                "end": 5749,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 2
                  },
                  "end": {
                    "line": 178,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4029,
                  "end": 4044,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 2
                    },
                    "end": {
                      "line": 137,
                      "column": 17
                    },
                    "identifierName": "getUpdatedInput"
                  },
                  "name": "getUpdatedInput",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4045,
                    "end": 4051,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 18
                      },
                      "end": {
                        "line": 137,
                        "column": 24
                      },
                      "identifierName": "button"
                    },
                    "name": "button"
                  },
                  {
                    "type": "Identifier",
                    "start": 4053,
                    "end": 4058,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 26
                      },
                      "end": {
                        "line": 137,
                        "column": 31
                      },
                      "identifierName": "input"
                    },
                    "name": "input"
                  },
                  {
                    "type": "Identifier",
                    "start": 4060,
                    "end": 4067,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 33
                      },
                      "end": {
                        "line": 137,
                        "column": 40
                      },
                      "identifierName": "options"
                    },
                    "name": "options"
                  },
                  {
                    "type": "Identifier",
                    "start": 4069,
                    "end": 4077,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 42
                      },
                      "end": {
                        "line": 137,
                        "column": 50
                      },
                      "identifierName": "caretPos"
                    },
                    "name": "caretPos"
                  },
                  {
                    "type": "Identifier",
                    "start": 4079,
                    "end": 4088,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 52
                      },
                      "end": {
                        "line": 137,
                        "column": 61
                      },
                      "identifierName": "moveCaret"
                    },
                    "name": "moveCaret"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4089,
                  "end": 5749,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 62
                    },
                    "end": {
                      "line": 178,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 4102,
                      "end": 4121,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 4
                        },
                        "end": {
                          "line": 139,
                          "column": 23
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4106,
                          "end": 4120,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 8
                            },
                            "end": {
                              "line": 139,
                              "column": 22
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4106,
                            "end": 4112,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 8
                              },
                              "end": {
                                "line": 139,
                                "column": 14
                              },
                              "identifierName": "output"
                            },
                            "name": "output"
                          },
                          "init": {
                            "type": "Identifier",
                            "start": 4115,
                            "end": 4120,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 17
                              },
                              "end": {
                                "line": 139,
                                "column": 22
                              },
                              "identifierName": "input"
                            },
                            "name": "input"
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 4129,
                      "end": 5722,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 4
                        },
                        "end": {
                          "line": 175,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 4132,
                        "end": 4202,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 7
                          },
                          "end": {
                            "line": 141,
                            "column": 77
                          }
                        },
                        "left": {
                          "type": "LogicalExpression",
                          "start": 4133,
                          "end": 4180,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 8
                            },
                            "end": {
                              "line": 141,
                              "column": 55
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 4133,
                            "end": 4152,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 8
                              },
                              "end": {
                                "line": 141,
                                "column": 27
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4133,
                              "end": 4139,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 8
                                },
                                "end": {
                                  "line": 141,
                                  "column": 14
                                },
                                "identifierName": "button"
                              },
                              "name": "button"
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 4144,
                              "end": 4152,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 19
                                },
                                "end": {
                                  "line": 141,
                                  "column": 27
                                }
                              },
                              "extra": {
                                "rawValue": "{bksp}",
                                "raw": "\"{bksp}\""
                              },
                              "value": "{bksp}"
                            }
                          },
                          "operator": "||",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 4156,
                            "end": 4180,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 31
                              },
                              "end": {
                                "line": 141,
                                "column": 55
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4156,
                              "end": 4162,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 31
                                },
                                "end": {
                                  "line": 141,
                                  "column": 37
                                },
                                "identifierName": "button"
                              },
                              "name": "button"
                            },
                            "operator": "===",
                            "right": {
                              "type": "StringLiteral",
                              "start": 4167,
                              "end": 4180,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 42
                                },
                                "end": {
                                  "line": 141,
                                  "column": 55
                                }
                              },
                              "extra": {
                                "rawValue": "{backspace}",
                                "raw": "\"{backspace}\""
                              },
                              "value": "{backspace}"
                            }
                          },
                          "extra": {
                            "parenthesized": true,
                            "parenStart": 4132
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 4185,
                          "end": 4202,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 60
                            },
                            "end": {
                              "line": 141,
                              "column": 77
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 4185,
                            "end": 4198,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 60
                              },
                              "end": {
                                "line": 141,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 4185,
                              "end": 4191,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 60
                                },
                                "end": {
                                  "line": 141,
                                  "column": 66
                                },
                                "identifierName": "output"
                              },
                              "name": "output"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4192,
                              "end": 4198,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 67
                                },
                                "end": {
                                  "line": 141,
                                  "column": 73
                                },
                                "identifierName": "length"
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "operator": ">",
                          "right": {
                            "type": "NumericLiteral",
                            "start": 4201,
                            "end": 4202,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 76
                              },
                              "end": {
                                "line": 141,
                                "column": 77
                              }
                            },
                            "extra": {
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "value": 0
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 4203,
                        "end": 4273,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 78
                          },
                          "end": {
                            "line": 144,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 4212,
                            "end": 4264,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 6
                              },
                              "end": {
                                "line": 142,
                                "column": 58
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 4212,
                              "end": 4263,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 6
                                },
                                "end": {
                                  "line": 142,
                                  "column": 57
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 4212,
                                "end": 4218,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 12
                                  },
                                  "identifierName": "output"
                                },
                                "name": "output"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 4221,
                                "end": 4263,
                                "loc": {
                                  "start": {
                                    "line": 142,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 142,
                                    "column": 57
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4221,
                                  "end": 4234,
                                  "loc": {
                                    "start": {
                                      "line": 142,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 142,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4221,
                                    "end": 4225,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4226,
                                    "end": 4234,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 28
                                      },
                                      "identifierName": "removeAt"
                                    },
                                    "name": "removeAt"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 4235,
                                    "end": 4241,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 35
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 4243,
                                    "end": 4251,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 45
                                      },
                                      "identifierName": "caretPos"
                                    },
                                    "name": "caretPos"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 4253,
                                    "end": 4262,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 142,
                                        "column": 56
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  }
                                ]
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 4279,
                        "end": 5722,
                        "loc": {
                          "start": {
                            "line": 144,
                            "column": 11
                          },
                          "end": {
                            "line": 175,
                            "column": 69
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 4282,
                          "end": 4302,
                          "loc": {
                            "start": {
                              "line": 144,
                              "column": 14
                            },
                            "end": {
                              "line": 144,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 4282,
                            "end": 4288,
                            "loc": {
                              "start": {
                                "line": 144,
                                "column": 14
                              },
                              "end": {
                                "line": 144,
                                "column": 20
                              },
                              "identifierName": "button"
                            },
                            "name": "button"
                          },
                          "operator": "===",
                          "right": {
                            "type": "StringLiteral",
                            "start": 4293,
                            "end": 4302,
                            "loc": {
                              "start": {
                                "line": 144,
                                "column": 25
                              },
                              "end": {
                                "line": 144,
                                "column": 34
                              }
                            },
                            "extra": {
                              "rawValue": "{space}",
                              "raw": "\"{space}\""
                            },
                            "value": "{space}"
                          }
                        },
                        "consequent": {
                          "type": "ExpressionStatement",
                          "start": 4311,
                          "end": 4371,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 6
                            },
                            "end": {
                              "line": 145,
                              "column": 66
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4311,
                            "end": 4370,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 6
                              },
                              "end": {
                                "line": 145,
                                "column": 65
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 4311,
                              "end": 4317,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 6
                                },
                                "end": {
                                  "line": 145,
                                  "column": 12
                                },
                                "identifierName": "output"
                              },
                              "name": "output"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 4320,
                              "end": 4370,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 15
                                },
                                "end": {
                                  "line": 145,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4320,
                                "end": 4336,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4320,
                                  "end": 4324,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4325,
                                  "end": 4336,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 31
                                    },
                                    "identifierName": "addStringAt"
                                  },
                                  "name": "addStringAt"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4337,
                                  "end": 4343,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 38
                                    },
                                    "identifierName": "output"
                                  },
                                  "name": "output"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 4345,
                                  "end": 4348,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 43
                                    }
                                  },
                                  "extra": {
                                    "rawValue": " ",
                                    "raw": "\" \""
                                  },
                                  "value": " "
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4350,
                                  "end": 4358,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 53
                                    },
                                    "identifierName": "caretPos"
                                  },
                                  "name": "caretPos"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4360,
                                  "end": 4369,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 64
                                    },
                                    "identifierName": "moveCaret"
                                  },
                                  "name": "moveCaret"
                                }
                              ]
                            }
                          }
                        },
                        "alternate": {
                          "type": "IfStatement",
                          "start": 4384,
                          "end": 5722,
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 9
                            },
                            "end": {
                              "line": 175,
                              "column": 69
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 4387,
                            "end": 4487,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 12
                              },
                              "end": {
                                "line": 147,
                                "column": 112
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 4387,
                              "end": 4405,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 12
                                },
                                "end": {
                                  "line": 147,
                                  "column": 30
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4387,
                                "end": 4393,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 18
                                  },
                                  "identifierName": "button"
                                },
                                "name": "button"
                              },
                              "operator": "===",
                              "right": {
                                "type": "StringLiteral",
                                "start": 4398,
                                "end": 4405,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 30
                                  }
                                },
                                "extra": {
                                  "rawValue": "{tab}",
                                  "raw": "\"{tab}\""
                                },
                                "value": "{tab}"
                              }
                            },
                            "operator": "&&",
                            "right": {
                              "type": "UnaryExpression",
                              "start": 4409,
                              "end": 4487,
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 34
                                },
                                "end": {
                                  "line": 147,
                                  "column": 112
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "LogicalExpression",
                                "start": 4411,
                                "end": 4486,
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 111
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 4411,
                                  "end": 4452,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 77
                                    }
                                  },
                                  "left": {
                                    "type": "UnaryExpression",
                                    "start": 4411,
                                    "end": 4438,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 63
                                      }
                                    },
                                    "operator": "typeof",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 4418,
                                      "end": 4438,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 63
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 4418,
                                        "end": 4425,
                                        "loc": {
                                          "start": {
                                            "line": 147,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 147,
                                            "column": 50
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4426,
                                        "end": 4438,
                                        "loc": {
                                          "start": {
                                            "line": 147,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 147,
                                            "column": 63
                                          },
                                          "identifierName": "tabCharOnTab"
                                        },
                                        "name": "tabCharOnTab"
                                      },
                                      "computed": false
                                    },
                                    "extra": {
                                      "parenthesizedArgument": false
                                    }
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 4443,
                                    "end": 4452,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 77
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "boolean",
                                      "raw": "\"boolean\""
                                    },
                                    "value": "boolean"
                                  }
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 4456,
                                  "end": 4486,
                                  "loc": {
                                    "start": {
                                      "line": 147,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 147,
                                      "column": 111
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 4456,
                                    "end": 4476,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 81
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 101
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4456,
                                      "end": 4463,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 81
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 88
                                        },
                                        "identifierName": "options"
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4464,
                                      "end": 4476,
                                      "loc": {
                                        "start": {
                                          "line": 147,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 147,
                                          "column": 101
                                        },
                                        "identifierName": "tabCharOnTab"
                                      },
                                      "name": "tabCharOnTab"
                                    },
                                    "computed": false
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 4481,
                                    "end": 4486,
                                    "loc": {
                                      "start": {
                                        "line": 147,
                                        "column": 106
                                      },
                                      "end": {
                                        "line": 147,
                                        "column": 111
                                      }
                                    },
                                    "value": false
                                  }
                                },
                                "extra": {
                                  "parenthesized": true,
                                  "parenStart": 4410
                                }
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              }
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4488,
                            "end": 4567,
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 113
                              },
                              "end": {
                                "line": 150,
                                "column": 5
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 4497,
                                "end": 4558,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 67
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 4497,
                                  "end": 4557,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 66
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 4497,
                                    "end": 4503,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 12
                                      },
                                      "identifierName": "output"
                                    },
                                    "name": "output"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 4506,
                                    "end": 4557,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 66
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4506,
                                      "end": 4522,
                                      "loc": {
                                        "start": {
                                          "line": 148,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 148,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 4506,
                                        "end": 4510,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4511,
                                        "end": 4522,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 31
                                          },
                                          "identifierName": "addStringAt"
                                        },
                                        "name": "addStringAt"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 4523,
                                        "end": 4529,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 38
                                          },
                                          "identifierName": "output"
                                        },
                                        "name": "output"
                                      },
                                      {
                                        "type": "StringLiteral",
                                        "start": 4531,
                                        "end": 4535,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 44
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "\t",
                                          "raw": "\"\\t\""
                                        },
                                        "value": "\t"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4537,
                                        "end": 4545,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 54
                                          },
                                          "identifierName": "caretPos"
                                        },
                                        "name": "caretPos"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 4547,
                                        "end": 4556,
                                        "loc": {
                                          "start": {
                                            "line": 148,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 148,
                                            "column": 65
                                          },
                                          "identifierName": "moveCaret"
                                        },
                                        "name": "moveCaret"
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "IfStatement",
                            "start": 4573,
                            "end": 5722,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 11
                              },
                              "end": {
                                "line": 175,
                                "column": 69
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 4576,
                              "end": 4654,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 14
                                },
                                "end": {
                                  "line": 150,
                                  "column": 92
                                }
                              },
                              "left": {
                                "type": "LogicalExpression",
                                "start": 4577,
                                "end": 4627,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 4577,
                                  "end": 4597,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 35
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 4577,
                                    "end": 4583,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 21
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 4588,
                                    "end": 4597,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 35
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{enter}",
                                      "raw": "\"{enter}\""
                                    },
                                    "value": "{enter}"
                                  }
                                },
                                "operator": "||",
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 4601,
                                  "end": 4627,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 65
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 4601,
                                    "end": 4607,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 45
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 4612,
                                    "end": 4627,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 65
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{numpadenter}",
                                      "raw": "\"{numpadenter}\""
                                    },
                                    "value": "{numpadenter}"
                                  }
                                },
                                "extra": {
                                  "parenthesized": true,
                                  "parenStart": 4576
                                }
                              },
                              "operator": "&&",
                              "right": {
                                "type": "MemberExpression",
                                "start": 4632,
                                "end": 4654,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 92
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4632,
                                  "end": 4639,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 77
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4640,
                                  "end": 4654,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 92
                                    },
                                    "identifierName": "newLineOnEnter"
                                  },
                                  "name": "newLineOnEnter"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 4663,
                              "end": 4724,
                              "loc": {
                                "start": {
                                  "line": 151,
                                  "column": 6
                                },
                                "end": {
                                  "line": 151,
                                  "column": 67
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 4663,
                                "end": 4723,
                                "loc": {
                                  "start": {
                                    "line": 151,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 151,
                                    "column": 66
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "Identifier",
                                  "start": 4663,
                                  "end": 4669,
                                  "loc": {
                                    "start": {
                                      "line": 151,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 151,
                                      "column": 12
                                    },
                                    "identifierName": "output"
                                  },
                                  "name": "output"
                                },
                                "right": {
                                  "type": "CallExpression",
                                  "start": 4672,
                                  "end": 4723,
                                  "loc": {
                                    "start": {
                                      "line": 151,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 151,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 4672,
                                    "end": 4688,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 4672,
                                      "end": 4676,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4677,
                                      "end": 4688,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 31
                                        },
                                        "identifierName": "addStringAt"
                                      },
                                      "name": "addStringAt"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 4689,
                                      "end": 4695,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 38
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    {
                                      "type": "StringLiteral",
                                      "start": 4697,
                                      "end": 4701,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 44
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "\n",
                                        "raw": "\"\\n\""
                                      },
                                      "value": "\n"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 4703,
                                      "end": 4711,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 54
                                        },
                                        "identifierName": "caretPos"
                                      },
                                      "name": "caretPos"
                                    },
                                    {
                                      "type": "Identifier",
                                      "start": 4713,
                                      "end": 4722,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 65
                                        },
                                        "identifierName": "moveCaret"
                                      },
                                      "name": "moveCaret"
                                    }
                                  ]
                                }
                              }
                            },
                            "alternate": {
                              "type": "IfStatement",
                              "start": 4737,
                              "end": 5722,
                              "loc": {
                                "start": {
                                  "line": 153,
                                  "column": 9
                                },
                                "end": {
                                  "line": 175,
                                  "column": 69
                                }
                              },
                              "test": {
                                "type": "LogicalExpression",
                                "start": 4740,
                                "end": 4820,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 153,
                                    "column": 92
                                  }
                                },
                                "left": {
                                  "type": "CallExpression",
                                  "start": 4740,
                                  "end": 4765,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 37
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 4740,
                                    "end": 4755,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4740,
                                      "end": 4746,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 18
                                        },
                                        "identifierName": "button"
                                      },
                                      "name": "button"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4747,
                                      "end": 4755,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 27
                                        },
                                        "identifierName": "includes"
                                      },
                                      "name": "includes"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 4756,
                                      "end": 4764,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 36
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "numpad",
                                        "raw": "\"numpad\""
                                      },
                                      "value": "numpad"
                                    }
                                  ]
                                },
                                "operator": "&&",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 4769,
                                  "end": 4820,
                                  "loc": {
                                    "start": {
                                      "line": 153,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 153,
                                      "column": 92
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 4769,
                                    "end": 4785,
                                    "loc": {
                                      "start": {
                                        "line": 153,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 153,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 4769,
                                      "end": 4775,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 47
                                        },
                                        "identifierName": "Number"
                                      },
                                      "name": "Number"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4776,
                                      "end": 4785,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 48
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 57
                                        },
                                        "identifierName": "isInteger"
                                      },
                                      "name": "isInteger"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "start": 4786,
                                      "end": 4819,
                                      "loc": {
                                        "start": {
                                          "line": 153,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 153,
                                          "column": 91
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 4786,
                                        "end": 4792,
                                        "loc": {
                                          "start": {
                                            "line": 153,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 153,
                                            "column": 64
                                          },
                                          "identifierName": "Number"
                                        },
                                        "name": "Number"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 4793,
                                          "end": 4818,
                                          "loc": {
                                            "start": {
                                              "line": 153,
                                              "column": 65
                                            },
                                            "end": {
                                              "line": 153,
                                              "column": 90
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 4793,
                                            "end": 4799,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 71
                                              },
                                              "identifierName": "button"
                                            },
                                            "name": "button"
                                          },
                                          "property": {
                                            "type": "BinaryExpression",
                                            "start": 4800,
                                            "end": 4817,
                                            "loc": {
                                              "start": {
                                                "line": 153,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 153,
                                                "column": 89
                                              }
                                            },
                                            "left": {
                                              "type": "MemberExpression",
                                              "start": 4800,
                                              "end": 4813,
                                              "loc": {
                                                "start": {
                                                  "line": 153,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 153,
                                                  "column": 85
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 4800,
                                                "end": 4806,
                                                "loc": {
                                                  "start": {
                                                    "line": 153,
                                                    "column": 72
                                                  },
                                                  "end": {
                                                    "line": 153,
                                                    "column": 78
                                                  },
                                                  "identifierName": "button"
                                                },
                                                "name": "button"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4807,
                                                "end": 4813,
                                                "loc": {
                                                  "start": {
                                                    "line": 153,
                                                    "column": 79
                                                  },
                                                  "end": {
                                                    "line": 153,
                                                    "column": 85
                                                  },
                                                  "identifierName": "length"
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 4816,
                                              "end": 4817,
                                              "loc": {
                                                "start": {
                                                  "line": 153,
                                                  "column": 88
                                                },
                                                "end": {
                                                  "line": 153,
                                                  "column": 89
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "value": 2
                                            }
                                          },
                                          "computed": true
                                        }
                                      ]
                                    }
                                  ]
                                }
                              },
                              "consequent": {
                                "type": "BlockStatement",
                                "start": 4821,
                                "end": 4908,
                                "loc": {
                                  "start": {
                                    "line": 153,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 5
                                  }
                                },
                                "body": [
                                  {
                                    "type": "ExpressionStatement",
                                    "start": 4830,
                                    "end": 4901,
                                    "loc": {
                                      "start": {
                                        "line": 154,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 154,
                                        "column": 77
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 4830,
                                      "end": 4900,
                                      "loc": {
                                        "start": {
                                          "line": 154,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 154,
                                          "column": 76
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 4830,
                                        "end": 4836,
                                        "loc": {
                                          "start": {
                                            "line": 154,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 154,
                                            "column": 12
                                          },
                                          "identifierName": "output"
                                        },
                                        "name": "output"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 4839,
                                        "end": 4900,
                                        "loc": {
                                          "start": {
                                            "line": 154,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 154,
                                            "column": 76
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 4839,
                                          "end": 4855,
                                          "loc": {
                                            "start": {
                                              "line": 154,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 154,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 4839,
                                            "end": 4843,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 19
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4844,
                                            "end": 4855,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 31
                                              },
                                              "identifierName": "addStringAt"
                                            },
                                            "name": "addStringAt"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 4856,
                                            "end": 4862,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 38
                                              },
                                              "identifierName": "output"
                                            },
                                            "name": "output"
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 4864,
                                            "end": 4889,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 65
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 4864,
                                              "end": 4870,
                                              "loc": {
                                                "start": {
                                                  "line": 154,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 154,
                                                  "column": 46
                                                },
                                                "identifierName": "button"
                                              },
                                              "name": "button"
                                            },
                                            "property": {
                                              "type": "BinaryExpression",
                                              "start": 4871,
                                              "end": 4888,
                                              "loc": {
                                                "start": {
                                                  "line": 154,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 154,
                                                  "column": 64
                                                }
                                              },
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 4871,
                                                "end": 4884,
                                                "loc": {
                                                  "start": {
                                                    "line": 154,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 154,
                                                    "column": 60
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 4871,
                                                  "end": 4877,
                                                  "loc": {
                                                    "start": {
                                                      "line": 154,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 154,
                                                      "column": 53
                                                    },
                                                    "identifierName": "button"
                                                  },
                                                  "name": "button"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4878,
                                                  "end": 4884,
                                                  "loc": {
                                                    "start": {
                                                      "line": 154,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 154,
                                                      "column": 60
                                                    },
                                                    "identifierName": "length"
                                                  },
                                                  "name": "length"
                                                },
                                                "computed": false
                                              },
                                              "operator": "-",
                                              "right": {
                                                "type": "NumericLiteral",
                                                "start": 4887,
                                                "end": 4888,
                                                "loc": {
                                                  "start": {
                                                    "line": 154,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 154,
                                                    "column": 64
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": 2,
                                                  "raw": "2"
                                                },
                                                "value": 2
                                              }
                                            },
                                            "computed": true
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 4891,
                                            "end": 4899,
                                            "loc": {
                                              "start": {
                                                "line": 154,
                                                "column": 67
                                              },
                                              "end": {
                                                "line": 154,
                                                "column": 75
                                              },
                                              "identifierName": "caretPos"
                                            },
                                            "name": "caretPos"
                                          }
                                        ]
                                      }
                                    }
                                  }
                                ],
                                "directives": []
                              },
                              "alternate": {
                                "type": "IfStatement",
                                "start": 4919,
                                "end": 5722,
                                "loc": {
                                  "start": {
                                    "line": 156,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 69
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 4922,
                                  "end": 4949,
                                  "loc": {
                                    "start": {
                                      "line": 156,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 156,
                                      "column": 39
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 4922,
                                    "end": 4928,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 18
                                      },
                                      "identifierName": "button"
                                    },
                                    "name": "button"
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 4933,
                                    "end": 4949,
                                    "loc": {
                                      "start": {
                                        "line": 156,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 156,
                                        "column": 39
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "{numpaddivide}",
                                      "raw": "\"{numpaddivide}\""
                                    },
                                    "value": "{numpaddivide}"
                                  }
                                },
                                "consequent": {
                                  "type": "ExpressionStatement",
                                  "start": 4958,
                                  "end": 5018,
                                  "loc": {
                                    "start": {
                                      "line": 157,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 157,
                                      "column": 66
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 4958,
                                    "end": 5017,
                                    "loc": {
                                      "start": {
                                        "line": 157,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 157,
                                        "column": 65
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 4958,
                                      "end": 4964,
                                      "loc": {
                                        "start": {
                                          "line": 157,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 157,
                                          "column": 12
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 4967,
                                      "end": 5017,
                                      "loc": {
                                        "start": {
                                          "line": 157,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 157,
                                          "column": 65
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 4967,
                                        "end": 4983,
                                        "loc": {
                                          "start": {
                                            "line": 157,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 157,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 4967,
                                          "end": 4971,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4972,
                                          "end": 4983,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 31
                                            },
                                            "identifierName": "addStringAt"
                                          },
                                          "name": "addStringAt"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 4984,
                                          "end": 4990,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 38
                                            },
                                            "identifierName": "output"
                                          },
                                          "name": "output"
                                        },
                                        {
                                          "type": "StringLiteral",
                                          "start": 4992,
                                          "end": 4995,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "/",
                                            "raw": "'/'"
                                          },
                                          "value": "/"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 4997,
                                          "end": 5005,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 53
                                            },
                                            "identifierName": "caretPos"
                                          },
                                          "name": "caretPos"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 5007,
                                          "end": 5016,
                                          "loc": {
                                            "start": {
                                              "line": 157,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 157,
                                              "column": 64
                                            },
                                            "identifierName": "moveCaret"
                                          },
                                          "name": "moveCaret"
                                        }
                                      ]
                                    }
                                  }
                                },
                                "alternate": {
                                  "type": "IfStatement",
                                  "start": 5031,
                                  "end": 5722,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 9
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 69
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 5034,
                                    "end": 5063,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 41
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 5034,
                                      "end": 5040,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 18
                                        },
                                        "identifierName": "button"
                                      },
                                      "name": "button"
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "StringLiteral",
                                      "start": 5045,
                                      "end": 5063,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 41
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "{numpadmultiply}",
                                        "raw": "\"{numpadmultiply}\""
                                      },
                                      "value": "{numpadmultiply}"
                                    }
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 5072,
                                    "end": 5132,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 66
                                      }
                                    },
                                    "expression": {
                                      "type": "AssignmentExpression",
                                      "start": 5072,
                                      "end": 5131,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 65
                                        }
                                      },
                                      "operator": "=",
                                      "left": {
                                        "type": "Identifier",
                                        "start": 5072,
                                        "end": 5078,
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 12
                                          },
                                          "identifierName": "output"
                                        },
                                        "name": "output"
                                      },
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 5081,
                                        "end": 5131,
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 65
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5081,
                                          "end": 5097,
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5081,
                                            "end": 5085,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 19
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5086,
                                            "end": 5097,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 31
                                              },
                                              "identifierName": "addStringAt"
                                            },
                                            "name": "addStringAt"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 5098,
                                            "end": 5104,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 38
                                              },
                                              "identifierName": "output"
                                            },
                                            "name": "output"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 5106,
                                            "end": 5109,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 40
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 43
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "*",
                                              "raw": "'*'"
                                            },
                                            "value": "*"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5111,
                                            "end": 5119,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 53
                                              },
                                              "identifierName": "caretPos"
                                            },
                                            "name": "caretPos"
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 5121,
                                            "end": 5130,
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 64
                                              },
                                              "identifierName": "moveCaret"
                                            },
                                            "name": "moveCaret"
                                          }
                                        ]
                                      }
                                    }
                                  },
                                  "alternate": {
                                    "type": "IfStatement",
                                    "start": 5145,
                                    "end": 5722,
                                    "loc": {
                                      "start": {
                                        "line": 162,
                                        "column": 9
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 69
                                      }
                                    },
                                    "test": {
                                      "type": "BinaryExpression",
                                      "start": 5148,
                                      "end": 5177,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 41
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 5148,
                                        "end": 5154,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 18
                                          },
                                          "identifierName": "button"
                                        },
                                        "name": "button"
                                      },
                                      "operator": "===",
                                      "right": {
                                        "type": "StringLiteral",
                                        "start": 5159,
                                        "end": 5177,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 41
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "{numpadsubtract}",
                                          "raw": "\"{numpadsubtract}\""
                                        },
                                        "value": "{numpadsubtract}"
                                      }
                                    },
                                    "consequent": {
                                      "type": "ExpressionStatement",
                                      "start": 5186,
                                      "end": 5246,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 66
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 5186,
                                        "end": 5245,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 65
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "Identifier",
                                          "start": 5186,
                                          "end": 5192,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 12
                                            },
                                            "identifierName": "output"
                                          },
                                          "name": "output"
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 5195,
                                          "end": 5245,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 65
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 5195,
                                            "end": 5211,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5195,
                                              "end": 5199,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 19
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5200,
                                              "end": 5211,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 31
                                                },
                                                "identifierName": "addStringAt"
                                              },
                                              "name": "addStringAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 5212,
                                              "end": 5218,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 38
                                                },
                                                "identifierName": "output"
                                              },
                                              "name": "output"
                                            },
                                            {
                                              "type": "StringLiteral",
                                              "start": 5220,
                                              "end": 5223,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 40
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 43
                                                }
                                              },
                                              "extra": {
                                                "rawValue": "-",
                                                "raw": "'-'"
                                              },
                                              "value": "-"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5225,
                                              "end": 5233,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 53
                                                },
                                                "identifierName": "caretPos"
                                              },
                                              "name": "caretPos"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 5235,
                                              "end": 5244,
                                              "loc": {
                                                "start": {
                                                  "line": 163,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 163,
                                                  "column": 64
                                                },
                                                "identifierName": "moveCaret"
                                              },
                                              "name": "moveCaret"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    "alternate": {
                                      "type": "IfStatement",
                                      "start": 5259,
                                      "end": 5722,
                                      "loc": {
                                        "start": {
                                          "line": 165,
                                          "column": 9
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 69
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 5262,
                                        "end": 5286,
                                        "loc": {
                                          "start": {
                                            "line": 165,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 165,
                                            "column": 36
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 5262,
                                          "end": 5268,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 18
                                            },
                                            "identifierName": "button"
                                          },
                                          "name": "button"
                                        },
                                        "operator": "===",
                                        "right": {
                                          "type": "StringLiteral",
                                          "start": 5273,
                                          "end": 5286,
                                          "loc": {
                                            "start": {
                                              "line": 165,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 165,
                                              "column": 36
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "{numpadadd}",
                                            "raw": "\"{numpadadd}\""
                                          },
                                          "value": "{numpadadd}"
                                        }
                                      },
                                      "consequent": {
                                        "type": "ExpressionStatement",
                                        "start": 5295,
                                        "end": 5355,
                                        "loc": {
                                          "start": {
                                            "line": 166,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 166,
                                            "column": 66
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 5295,
                                          "end": 5354,
                                          "loc": {
                                            "start": {
                                              "line": 166,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 166,
                                              "column": 65
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "Identifier",
                                            "start": 5295,
                                            "end": 5301,
                                            "loc": {
                                              "start": {
                                                "line": 166,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 166,
                                                "column": 12
                                              },
                                              "identifierName": "output"
                                            },
                                            "name": "output"
                                          },
                                          "right": {
                                            "type": "CallExpression",
                                            "start": 5304,
                                            "end": 5354,
                                            "loc": {
                                              "start": {
                                                "line": 166,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 166,
                                                "column": 65
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 5304,
                                              "end": 5320,
                                              "loc": {
                                                "start": {
                                                  "line": 166,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 166,
                                                  "column": 31
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 5304,
                                                "end": 5308,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 19
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 5309,
                                                "end": 5320,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 31
                                                  },
                                                  "identifierName": "addStringAt"
                                                },
                                                "name": "addStringAt"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 5321,
                                                "end": 5327,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 38
                                                  },
                                                  "identifierName": "output"
                                                },
                                                "name": "output"
                                              },
                                              {
                                                "type": "StringLiteral",
                                                "start": 5329,
                                                "end": 5332,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 43
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": "+",
                                                  "raw": "'+'"
                                                },
                                                "value": "+"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 5334,
                                                "end": 5342,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 53
                                                  },
                                                  "identifierName": "caretPos"
                                                },
                                                "name": "caretPos"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 5344,
                                                "end": 5353,
                                                "loc": {
                                                  "start": {
                                                    "line": 166,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 166,
                                                    "column": 64
                                                  },
                                                  "identifierName": "moveCaret"
                                                },
                                                "name": "moveCaret"
                                              }
                                            ]
                                          }
                                        }
                                      },
                                      "alternate": {
                                        "type": "IfStatement",
                                        "start": 5368,
                                        "end": 5722,
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 9
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 69
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 5371,
                                          "end": 5399,
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 40
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 5371,
                                            "end": 5377,
                                            "loc": {
                                              "start": {
                                                "line": 168,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 168,
                                                "column": 18
                                              },
                                              "identifierName": "button"
                                            },
                                            "name": "button"
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "StringLiteral",
                                            "start": 5382,
                                            "end": 5399,
                                            "loc": {
                                              "start": {
                                                "line": 168,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 168,
                                                "column": 40
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "{numpaddecimal}",
                                              "raw": "\"{numpaddecimal}\""
                                            },
                                            "value": "{numpaddecimal}"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 5408,
                                          "end": 5468,
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 6
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 66
                                            }
                                          },
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "start": 5408,
                                            "end": 5467,
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 65
                                              }
                                            },
                                            "operator": "=",
                                            "left": {
                                              "type": "Identifier",
                                              "start": 5408,
                                              "end": 5414,
                                              "loc": {
                                                "start": {
                                                  "line": 169,
                                                  "column": 6
                                                },
                                                "end": {
                                                  "line": 169,
                                                  "column": 12
                                                },
                                                "identifierName": "output"
                                              },
                                              "name": "output"
                                            },
                                            "right": {
                                              "type": "CallExpression",
                                              "start": 5417,
                                              "end": 5467,
                                              "loc": {
                                                "start": {
                                                  "line": 169,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 169,
                                                  "column": 65
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 5417,
                                                "end": 5433,
                                                "loc": {
                                                  "start": {
                                                    "line": 169,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 169,
                                                    "column": 31
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 5417,
                                                  "end": 5421,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 19
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 5422,
                                                  "end": 5433,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 31
                                                    },
                                                    "identifierName": "addStringAt"
                                                  },
                                                  "name": "addStringAt"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 5434,
                                                  "end": 5440,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 38
                                                    },
                                                    "identifierName": "output"
                                                  },
                                                  "name": "output"
                                                },
                                                {
                                                  "type": "StringLiteral",
                                                  "start": 5442,
                                                  "end": 5445,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 43
                                                    }
                                                  },
                                                  "extra": {
                                                    "rawValue": ".",
                                                    "raw": "'.'"
                                                  },
                                                  "value": "."
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 5447,
                                                  "end": 5455,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 45
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 53
                                                    },
                                                    "identifierName": "caretPos"
                                                  },
                                                  "name": "caretPos"
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 5457,
                                                  "end": 5466,
                                                  "loc": {
                                                    "start": {
                                                      "line": 169,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 169,
                                                      "column": 64
                                                    },
                                                    "identifierName": "moveCaret"
                                                  },
                                                  "name": "moveCaret"
                                                }
                                              ]
                                            }
                                          }
                                        },
                                        "alternate": {
                                          "type": "IfStatement",
                                          "start": 5481,
                                          "end": 5722,
                                          "loc": {
                                            "start": {
                                              "line": 171,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 175,
                                              "column": 69
                                            }
                                          },
                                          "test": {
                                            "type": "LogicalExpression",
                                            "start": 5484,
                                            "end": 5516,
                                            "loc": {
                                              "start": {
                                                "line": 171,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 171,
                                                "column": 44
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 5484,
                                              "end": 5498,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 26
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 5484,
                                                "end": 5490,
                                                "loc": {
                                                  "start": {
                                                    "line": 171,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 171,
                                                    "column": 18
                                                  },
                                                  "identifierName": "button"
                                                },
                                                "name": "button"
                                              },
                                              "operator": "===",
                                              "right": {
                                                "type": "StringLiteral",
                                                "start": 5495,
                                                "end": 5498,
                                                "loc": {
                                                  "start": {
                                                    "line": 171,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 171,
                                                    "column": 26
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": "{",
                                                  "raw": "\"{\""
                                                },
                                                "value": "{"
                                              }
                                            },
                                            "operator": "||",
                                            "right": {
                                              "type": "BinaryExpression",
                                              "start": 5502,
                                              "end": 5516,
                                              "loc": {
                                                "start": {
                                                  "line": 171,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 171,
                                                  "column": 44
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 5502,
                                                "end": 5508,
                                                "loc": {
                                                  "start": {
                                                    "line": 171,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 171,
                                                    "column": 36
                                                  },
                                                  "identifierName": "button"
                                                },
                                                "name": "button"
                                              },
                                              "operator": "===",
                                              "right": {
                                                "type": "StringLiteral",
                                                "start": 5513,
                                                "end": 5516,
                                                "loc": {
                                                  "start": {
                                                    "line": 171,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 171,
                                                    "column": 44
                                                  }
                                                },
                                                "extra": {
                                                  "rawValue": "}",
                                                  "raw": "\"}\""
                                                },
                                                "value": "}"
                                              }
                                            }
                                          },
                                          "consequent": {
                                            "type": "ExpressionStatement",
                                            "start": 5525,
                                            "end": 5588,
                                            "loc": {
                                              "start": {
                                                "line": 172,
                                                "column": 6
                                              },
                                              "end": {
                                                "line": 172,
                                                "column": 69
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 5525,
                                              "end": 5587,
                                              "loc": {
                                                "start": {
                                                  "line": 172,
                                                  "column": 6
                                                },
                                                "end": {
                                                  "line": 172,
                                                  "column": 68
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "Identifier",
                                                "start": 5525,
                                                "end": 5531,
                                                "loc": {
                                                  "start": {
                                                    "line": 172,
                                                    "column": 6
                                                  },
                                                  "end": {
                                                    "line": 172,
                                                    "column": 12
                                                  },
                                                  "identifierName": "output"
                                                },
                                                "name": "output"
                                              },
                                              "right": {
                                                "type": "CallExpression",
                                                "start": 5534,
                                                "end": 5587,
                                                "loc": {
                                                  "start": {
                                                    "line": 172,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 172,
                                                    "column": 68
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 5534,
                                                  "end": 5550,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 31
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 5534,
                                                    "end": 5538,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 15
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 19
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5539,
                                                    "end": 5550,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 20
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 31
                                                      },
                                                      "identifierName": "addStringAt"
                                                    },
                                                    "name": "addStringAt"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5551,
                                                    "end": 5557,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 32
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 38
                                                      },
                                                      "identifierName": "output"
                                                    },
                                                    "name": "output"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5559,
                                                    "end": 5565,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 46
                                                      },
                                                      "identifierName": "button"
                                                    },
                                                    "name": "button"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5567,
                                                    "end": 5575,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 48
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 56
                                                      },
                                                      "identifierName": "caretPos"
                                                    },
                                                    "name": "caretPos"
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 5577,
                                                    "end": 5586,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 67
                                                      },
                                                      "identifierName": "moveCaret"
                                                    },
                                                    "name": "moveCaret"
                                                  }
                                                ]
                                              }
                                            }
                                          },
                                          "alternate": {
                                            "type": "IfStatement",
                                            "start": 5601,
                                            "end": 5722,
                                            "loc": {
                                              "start": {
                                                "line": 174,
                                                "column": 9
                                              },
                                              "end": {
                                                "line": 175,
                                                "column": 69
                                              }
                                            },
                                            "test": {
                                              "type": "LogicalExpression",
                                              "start": 5604,
                                              "end": 5650,
                                              "loc": {
                                                "start": {
                                                  "line": 174,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 174,
                                                  "column": 58
                                                }
                                              },
                                              "left": {
                                                "type": "UnaryExpression",
                                                "start": 5604,
                                                "end": 5625,
                                                "loc": {
                                                  "start": {
                                                    "line": 174,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 174,
                                                    "column": 33
                                                  }
                                                },
                                                "operator": "!",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "CallExpression",
                                                  "start": 5605,
                                                  "end": 5625,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 13
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 33
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 5605,
                                                    "end": 5620,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 13
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 28
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 5605,
                                                      "end": 5611,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 13
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 19
                                                        },
                                                        "identifierName": "button"
                                                      },
                                                      "name": "button"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5612,
                                                      "end": 5620,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 28
                                                        },
                                                        "identifierName": "includes"
                                                      },
                                                      "name": "includes"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "StringLiteral",
                                                      "start": 5621,
                                                      "end": 5624,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 32
                                                        }
                                                      },
                                                      "extra": {
                                                        "rawValue": "{",
                                                        "raw": "\"{\""
                                                      },
                                                      "value": "{"
                                                    }
                                                  ]
                                                },
                                                "extra": {
                                                  "parenthesizedArgument": false
                                                }
                                              },
                                              "operator": "&&",
                                              "right": {
                                                "type": "UnaryExpression",
                                                "start": 5629,
                                                "end": 5650,
                                                "loc": {
                                                  "start": {
                                                    "line": 174,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 174,
                                                    "column": 58
                                                  }
                                                },
                                                "operator": "!",
                                                "prefix": true,
                                                "argument": {
                                                  "type": "CallExpression",
                                                  "start": 5630,
                                                  "end": 5650,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 58
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 5630,
                                                    "end": 5645,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 53
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 5630,
                                                      "end": 5636,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 38
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 44
                                                        },
                                                        "identifierName": "button"
                                                      },
                                                      "name": "button"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5637,
                                                      "end": 5645,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 45
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 53
                                                        },
                                                        "identifierName": "includes"
                                                      },
                                                      "name": "includes"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "StringLiteral",
                                                      "start": 5646,
                                                      "end": 5649,
                                                      "loc": {
                                                        "start": {
                                                          "line": 174,
                                                          "column": 54
                                                        },
                                                        "end": {
                                                          "line": 174,
                                                          "column": 57
                                                        }
                                                      },
                                                      "extra": {
                                                        "rawValue": "}",
                                                        "raw": "\"}\""
                                                      },
                                                      "value": "}"
                                                    }
                                                  ]
                                                },
                                                "extra": {
                                                  "parenthesizedArgument": false
                                                }
                                              }
                                            },
                                            "consequent": {
                                              "type": "ExpressionStatement",
                                              "start": 5659,
                                              "end": 5722,
                                              "loc": {
                                                "start": {
                                                  "line": 175,
                                                  "column": 6
                                                },
                                                "end": {
                                                  "line": 175,
                                                  "column": 69
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 5659,
                                                "end": 5721,
                                                "loc": {
                                                  "start": {
                                                    "line": 175,
                                                    "column": 6
                                                  },
                                                  "end": {
                                                    "line": 175,
                                                    "column": 68
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "Identifier",
                                                  "start": 5659,
                                                  "end": 5665,
                                                  "loc": {
                                                    "start": {
                                                      "line": 175,
                                                      "column": 6
                                                    },
                                                    "end": {
                                                      "line": 175,
                                                      "column": 12
                                                    },
                                                    "identifierName": "output"
                                                  },
                                                  "name": "output"
                                                },
                                                "right": {
                                                  "type": "CallExpression",
                                                  "start": 5668,
                                                  "end": 5721,
                                                  "loc": {
                                                    "start": {
                                                      "line": 175,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 175,
                                                      "column": 68
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 5668,
                                                    "end": 5684,
                                                    "loc": {
                                                      "start": {
                                                        "line": 175,
                                                        "column": 15
                                                      },
                                                      "end": {
                                                        "line": 175,
                                                        "column": 31
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5668,
                                                      "end": 5672,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 15
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 19
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5673,
                                                      "end": 5684,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 31
                                                        },
                                                        "identifierName": "addStringAt"
                                                      },
                                                      "name": "addStringAt"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 5685,
                                                      "end": 5691,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 32
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 38
                                                        },
                                                        "identifierName": "output"
                                                      },
                                                      "name": "output"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 5693,
                                                      "end": 5699,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 40
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 46
                                                        },
                                                        "identifierName": "button"
                                                      },
                                                      "name": "button"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 5701,
                                                      "end": 5709,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 48
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 56
                                                        },
                                                        "identifierName": "caretPos"
                                                      },
                                                      "name": "caretPos"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 5711,
                                                      "end": 5720,
                                                      "loc": {
                                                        "start": {
                                                          "line": 175,
                                                          "column": 58
                                                        },
                                                        "end": {
                                                          "line": 175,
                                                          "column": 67
                                                        },
                                                        "identifierName": "moveCaret"
                                                      },
                                                      "name": "moveCaret"
                                                    }
                                                  ]
                                                }
                                              }
                                            },
                                            "alternate": null
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5730,
                      "end": 5744,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 4
                        },
                        "end": {
                          "line": 177,
                          "column": 18
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 5737,
                        "end": 5743,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 11
                          },
                          "end": {
                            "line": 177,
                            "column": 17
                          },
                          "identifierName": "output"
                        },
                        "name": "output"
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 3631,
                    "end": 4025,
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 2
                      },
                      "end": {
                        "line": 136,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                    "start": 5755,
                    "end": 5997,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 2
                      },
                      "end": {
                        "line": 185,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6001,
                "end": 6330,
                "loc": {
                  "start": {
                    "line": 186,
                    "column": 2
                  },
                  "end": {
                    "line": 194,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6001,
                  "end": 6015,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 2
                    },
                    "end": {
                      "line": 186,
                      "column": 16
                    },
                    "identifierName": "updateCaretPos"
                  },
                  "name": "updateCaretPos",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6016,
                    "end": 6022,
                    "loc": {
                      "start": {
                        "line": 186,
                        "column": 17
                      },
                      "end": {
                        "line": 186,
                        "column": 23
                      },
                      "identifierName": "length"
                    },
                    "name": "length"
                  },
                  {
                    "type": "Identifier",
                    "start": 6024,
                    "end": 6029,
                    "loc": {
                      "start": {
                        "line": 186,
                        "column": 25
                      },
                      "end": {
                        "line": 186,
                        "column": 30
                      },
                      "identifierName": "minus"
                    },
                    "name": "minus"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6030,
                  "end": 6330,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 31
                    },
                    "end": {
                      "line": 194,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6037,
                      "end": 6325,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 4
                        },
                        "end": {
                          "line": 193,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6040,
                        "end": 6094,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 7
                          },
                          "end": {
                            "line": 187,
                            "column": 61
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6040,
                          "end": 6075,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 7
                            },
                            "end": {
                              "line": 187,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6040,
                            "end": 6067,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 7
                              },
                              "end": {
                                "line": 187,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6040,
                              "end": 6044,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 7
                                },
                                "end": {
                                  "line": 187,
                                  "column": 11
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6045,
                              "end": 6067,
                              "loc": {
                                "start": {
                                  "line": 187,
                                  "column": 12
                                },
                                "end": {
                                  "line": 187,
                                  "column": 34
                                },
                                "identifierName": "simpleKeyboardInstance"
                              },
                              "name": "simpleKeyboardInstance"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6068,
                            "end": 6075,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 35
                              },
                              "end": {
                                "line": 187,
                                "column": 42
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6076,
                          "end": 6094,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 43
                            },
                            "end": {
                              "line": 187,
                              "column": 61
                            },
                            "identifierName": "syncInstanceInputs"
                          },
                          "name": "syncInstanceInputs"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6095,
                        "end": 6233,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 62
                          },
                          "end": {
                            "line": 191,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6104,
                            "end": 6226,
                            "loc": {
                              "start": {
                                "line": 188,
                                "column": 6
                              },
                              "end": {
                                "line": 190,
                                "column": 9
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6104,
                              "end": 6225,
                              "loc": {
                                "start": {
                                  "line": 188,
                                  "column": 6
                                },
                                "end": {
                                  "line": 190,
                                  "column": 8
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6104,
                                "end": 6140,
                                "loc": {
                                  "start": {
                                    "line": 188,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 6104,
                                  "end": 6131,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 6104,
                                    "end": 6108,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6109,
                                    "end": 6131,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 188,
                                        "column": 33
                                      },
                                      "identifierName": "simpleKeyboardInstance"
                                    },
                                    "name": "simpleKeyboardInstance"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6132,
                                  "end": 6140,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 42
                                    },
                                    "identifierName": "dispatch"
                                  },
                                  "name": "dispatch"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 6141,
                                  "end": 6224,
                                  "loc": {
                                    "start": {
                                      "line": 188,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 190,
                                      "column": 7
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 6141,
                                      "end": 6149,
                                      "loc": {
                                        "start": {
                                          "line": 188,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 188,
                                          "column": 51
                                        },
                                        "identifierName": "instance"
                                      },
                                      "name": "instance"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 6153,
                                    "end": 6224,
                                    "loc": {
                                      "start": {
                                        "line": 188,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 190,
                                        "column": 7
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 6164,
                                        "end": 6215,
                                        "loc": {
                                          "start": {
                                            "line": 189,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 189,
                                            "column": 59
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 6164,
                                          "end": 6214,
                                          "loc": {
                                            "start": {
                                              "line": 189,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 189,
                                              "column": 58
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 6164,
                                            "end": 6189,
                                            "loc": {
                                              "start": {
                                                "line": 189,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 189,
                                                "column": 33
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 6164,
                                              "end": 6168,
                                              "loc": {
                                                "start": {
                                                  "line": 189,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 189,
                                                  "column": 12
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6169,
                                              "end": 6189,
                                              "loc": {
                                                "start": {
                                                  "line": 189,
                                                  "column": 13
                                                },
                                                "end": {
                                                  "line": 189,
                                                  "column": 33
                                                },
                                                "identifierName": "updateCaretPosAction"
                                              },
                                              "name": "updateCaretPosAction"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 6190,
                                              "end": 6198,
                                              "loc": {
                                                "start": {
                                                  "line": 189,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 189,
                                                  "column": 42
                                                },
                                                "identifierName": "instance"
                                              },
                                              "name": "instance"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 6200,
                                              "end": 6206,
                                              "loc": {
                                                "start": {
                                                  "line": 189,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 189,
                                                  "column": 50
                                                },
                                                "identifierName": "length"
                                              },
                                              "name": "length"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 6208,
                                              "end": 6213,
                                              "loc": {
                                                "start": {
                                                  "line": 189,
                                                  "column": 52
                                                },
                                                "end": {
                                                  "line": 189,
                                                  "column": 57
                                                },
                                                "identifierName": "minus"
                                              },
                                              "name": "minus"
                                            }
                                          ]
                                        }
                                      }
                                    ],
                                    "directives": []
                                  }
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 6239,
                        "end": 6325,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 11
                          },
                          "end": {
                            "line": 193,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6248,
                            "end": 6318,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 6
                              },
                              "end": {
                                "line": 192,
                                "column": 76
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6248,
                              "end": 6317,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 6
                                },
                                "end": {
                                  "line": 192,
                                  "column": 75
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6248,
                                "end": 6273,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6248,
                                  "end": 6252,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6253,
                                  "end": 6273,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 31
                                    },
                                    "identifierName": "updateCaretPosAction"
                                  },
                                  "name": "updateCaretPosAction"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 6274,
                                  "end": 6301,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 59
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 6274,
                                    "end": 6278,
                                    "loc": {
                                      "start": {
                                        "line": 192,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 192,
                                        "column": 36
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6279,
                                    "end": 6301,
                                    "loc": {
                                      "start": {
                                        "line": 192,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 192,
                                        "column": 59
                                      },
                                      "identifierName": "simpleKeyboardInstance"
                                    },
                                    "name": "simpleKeyboardInstance"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6303,
                                  "end": 6309,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 67
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 6311,
                                  "end": 6316,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 192,
                                      "column": 74
                                    },
                                    "identifierName": "minus"
                                  },
                                  "name": "minus"
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                    "start": 5755,
                    "end": 5997,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 2
                      },
                      "end": {
                        "line": 185,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                    "start": 6336,
                    "end": 6644,
                    "loc": {
                      "start": {
                        "line": 196,
                        "column": 2
                      },
                      "end": {
                        "line": 202,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 6648,
                "end": 7056,
                "loc": {
                  "start": {
                    "line": 203,
                    "column": 2
                  },
                  "end": {
                    "line": 214,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 6648,
                  "end": 6668,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 2
                    },
                    "end": {
                      "line": 203,
                      "column": 22
                    },
                    "identifierName": "updateCaretPosAction"
                  },
                  "name": "updateCaretPosAction",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6669,
                    "end": 6677,
                    "loc": {
                      "start": {
                        "line": 203,
                        "column": 23
                      },
                      "end": {
                        "line": 203,
                        "column": 31
                      },
                      "identifierName": "instance"
                    },
                    "name": "instance"
                  },
                  {
                    "type": "Identifier",
                    "start": 6679,
                    "end": 6685,
                    "loc": {
                      "start": {
                        "line": 203,
                        "column": 33
                      },
                      "end": {
                        "line": 203,
                        "column": 39
                      },
                      "identifierName": "length"
                    },
                    "name": "length"
                  },
                  {
                    "type": "Identifier",
                    "start": 6687,
                    "end": 6692,
                    "loc": {
                      "start": {
                        "line": 203,
                        "column": 41
                      },
                      "end": {
                        "line": 203,
                        "column": 46
                      },
                      "identifierName": "minus"
                    },
                    "name": "minus"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6693,
                  "end": 7056,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 47
                    },
                    "end": {
                      "line": 214,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6700,
                      "end": 6899,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 4
                        },
                        "end": {
                          "line": 209,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 6703,
                        "end": 6708,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 7
                          },
                          "end": {
                            "line": 204,
                            "column": 12
                          },
                          "identifierName": "minus"
                        },
                        "name": "minus"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6709,
                        "end": 6820,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 13
                          },
                          "end": {
                            "line": 207,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 6718,
                            "end": 6813,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 6
                              },
                              "end": {
                                "line": 206,
                                "column": 63
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 6721,
                              "end": 6747,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 9
                                },
                                "end": {
                                  "line": 205,
                                  "column": 35
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 6721,
                                "end": 6743,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6721,
                                  "end": 6729,
                                  "loc": {
                                    "start": {
                                      "line": 205,
                                      "column": 9
                                    },
                                    "end": {
                                      "line": 205,
                                      "column": 17
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6730,
                                  "end": 6743,
                                  "loc": {
                                    "start": {
                                      "line": 205,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 205,
                                      "column": 31
                                    },
                                    "identifierName": "caretPosition"
                                  },
                                  "name": "caretPosition"
                                },
                                "computed": false
                              },
                              "operator": ">",
                              "right": {
                                "type": "NumericLiteral",
                                "start": 6746,
                                "end": 6747,
                                "loc": {
                                  "start": {
                                    "line": 205,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 205,
                                    "column": 35
                                  }
                                },
                                "extra": {
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "value": 0
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 6756,
                              "end": 6813,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 6
                                },
                                "end": {
                                  "line": 206,
                                  "column": 63
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 6756,
                                "end": 6812,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 62
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 6756,
                                  "end": 6778,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 28
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6756,
                                    "end": 6764,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 14
                                      },
                                      "identifierName": "instance"
                                    },
                                    "name": "instance"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6765,
                                    "end": 6778,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 28
                                      },
                                      "identifierName": "caretPosition"
                                    },
                                    "name": "caretPosition"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 6781,
                                  "end": 6812,
                                  "loc": {
                                    "start": {
                                      "line": 206,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 206,
                                      "column": 62
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 6781,
                                    "end": 6803,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 53
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 6781,
                                      "end": 6789,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 39
                                        },
                                        "identifierName": "instance"
                                      },
                                      "name": "instance"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6790,
                                      "end": 6803,
                                      "loc": {
                                        "start": {
                                          "line": 206,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 206,
                                          "column": 53
                                        },
                                        "identifierName": "caretPosition"
                                      },
                                      "name": "caretPosition"
                                    },
                                    "computed": false
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 6806,
                                    "end": 6812,
                                    "loc": {
                                      "start": {
                                        "line": 206,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 206,
                                        "column": 62
                                      },
                                      "identifierName": "length"
                                    },
                                    "name": "length"
                                  }
                                }
                              }
                            },
                            "alternate": null
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 6826,
                        "end": 6899,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 11
                          },
                          "end": {
                            "line": 209,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6835,
                            "end": 6892,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 6
                              },
                              "end": {
                                "line": 208,
                                "column": 63
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 6835,
                              "end": 6891,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 6
                                },
                                "end": {
                                  "line": 208,
                                  "column": 62
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 6835,
                                "end": 6857,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6835,
                                  "end": 6843,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 14
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6844,
                                  "end": 6857,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 28
                                    },
                                    "identifierName": "caretPosition"
                                  },
                                  "name": "caretPosition"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 6860,
                                "end": 6891,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 62
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 6860,
                                  "end": 6882,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6860,
                                    "end": 6868,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 39
                                      },
                                      "identifierName": "instance"
                                    },
                                    "name": "instance"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6869,
                                    "end": 6882,
                                    "loc": {
                                      "start": {
                                        "line": 208,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 208,
                                        "column": 53
                                      },
                                      "identifierName": "caretPosition"
                                    },
                                    "name": "caretPosition"
                                  },
                                  "computed": false
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 6885,
                                  "end": 6891,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 62
                                    },
                                    "identifierName": "length"
                                  },
                                  "name": "length"
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 6907,
                      "end": 7051,
                      "loc": {
                        "start": {
                          "line": 211,
                          "column": 4
                        },
                        "end": {
                          "line": 213,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 6910,
                        "end": 6951,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 7
                          },
                          "end": {
                            "line": 211,
                            "column": 48
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6910,
                          "end": 6945,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 7
                            },
                            "end": {
                              "line": 211,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 6910,
                            "end": 6937,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 7
                              },
                              "end": {
                                "line": 211,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6910,
                              "end": 6914,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 7
                                },
                                "end": {
                                  "line": 211,
                                  "column": 11
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6915,
                              "end": 6937,
                              "loc": {
                                "start": {
                                  "line": 211,
                                  "column": 12
                                },
                                "end": {
                                  "line": 211,
                                  "column": 34
                                },
                                "identifierName": "simpleKeyboardInstance"
                              },
                              "name": "simpleKeyboardInstance"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6938,
                            "end": 6945,
                            "loc": {
                              "start": {
                                "line": 211,
                                "column": 35
                              },
                              "end": {
                                "line": 211,
                                "column": 42
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6946,
                          "end": 6951,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 43
                            },
                            "end": {
                              "line": 211,
                              "column": 48
                            },
                            "identifierName": "debug"
                          },
                          "name": "debug"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 6952,
                        "end": 7051,
                        "loc": {
                          "start": {
                            "line": 211,
                            "column": 49
                          },
                          "end": {
                            "line": 213,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 6961,
                            "end": 7044,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 6
                              },
                              "end": {
                                "line": 212,
                                "column": 89
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 6961,
                              "end": 7043,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 6
                                },
                                "end": {
                                  "line": 212,
                                  "column": 88
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6961,
                                "end": 6972,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6961,
                                  "end": 6968,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 13
                                    },
                                    "identifierName": "console"
                                  },
                                  "name": "console"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6969,
                                  "end": 6972,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 17
                                    },
                                    "identifierName": "log"
                                  },
                                  "name": "log"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "StringLiteral",
                                  "start": 6973,
                                  "end": 6984,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 29
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "Caret at:",
                                    "raw": "\"Caret at:\""
                                  },
                                  "value": "Caret at:"
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 6986,
                                  "end": 7008,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6986,
                                    "end": 6994,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 39
                                      },
                                      "identifierName": "instance"
                                    },
                                    "name": "instance"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6995,
                                    "end": 7008,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 53
                                      },
                                      "identifierName": "caretPosition"
                                    },
                                    "name": "caretPosition"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "TemplateLiteral",
                                  "start": 7010,
                                  "end": 7042,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 87
                                    }
                                  },
                                  "expressions": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 7014,
                                      "end": 7039,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 84
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7014,
                                        "end": 7022,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 67
                                          },
                                          "identifierName": "instance"
                                        },
                                        "name": "instance"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7023,
                                        "end": 7039,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 84
                                          },
                                          "identifierName": "keyboardDOMClass"
                                        },
                                        "name": "keyboardDOMClass"
                                      },
                                      "computed": false
                                    }
                                  ],
                                  "quasis": [
                                    {
                                      "type": "TemplateElement",
                                      "start": 7011,
                                      "end": 7012,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 57
                                        }
                                      },
                                      "value": {
                                        "raw": "(",
                                        "cooked": "("
                                      },
                                      "tail": false
                                    },
                                    {
                                      "type": "TemplateElement",
                                      "start": 7040,
                                      "end": 7041,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 85
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 86
                                        }
                                      },
                                      "value": {
                                        "raw": ")",
                                        "cooked": ")"
                                      },
                                      "tail": true
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
                    "start": 6336,
                    "end": 6644,
                    "loc": {
                      "start": {
                        "line": 196,
                        "column": 2
                      },
                      "end": {
                        "line": 202,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 7062,
                    "end": 7391,
                    "loc": {
                      "start": {
                        "line": 216,
                        "column": 2
                      },
                      "end": {
                        "line": 223,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 7395,
                "end": 7861,
                "loc": {
                  "start": {
                    "line": 224,
                    "column": 2
                  },
                  "end": {
                    "line": 242,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 7395,
                  "end": 7406,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 2
                    },
                    "end": {
                      "line": 224,
                      "column": 13
                    },
                    "identifierName": "addStringAt"
                  },
                  "name": "addStringAt",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7407,
                    "end": 7413,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 14
                      },
                      "end": {
                        "line": 224,
                        "column": 20
                      },
                      "identifierName": "source"
                    },
                    "name": "source"
                  },
                  {
                    "type": "Identifier",
                    "start": 7415,
                    "end": 7421,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 22
                      },
                      "end": {
                        "line": 224,
                        "column": 28
                      },
                      "identifierName": "string"
                    },
                    "name": "string"
                  },
                  {
                    "type": "Identifier",
                    "start": 7423,
                    "end": 7431,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 30
                      },
                      "end": {
                        "line": 224,
                        "column": 38
                      },
                      "identifierName": "position"
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 7433,
                    "end": 7442,
                    "loc": {
                      "start": {
                        "line": 224,
                        "column": 40
                      },
                      "end": {
                        "line": 224,
                        "column": 49
                      },
                      "identifierName": "moveCaret"
                    },
                    "name": "moveCaret"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7443,
                  "end": 7861,
                  "loc": {
                    "start": {
                      "line": 224,
                      "column": 50
                    },
                    "end": {
                      "line": 242,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7450,
                      "end": 7461,
                      "loc": {
                        "start": {
                          "line": 225,
                          "column": 4
                        },
                        "end": {
                          "line": 225,
                          "column": 15
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7454,
                          "end": 7460,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 8
                            },
                            "end": {
                              "line": 225,
                              "column": 14
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7454,
                            "end": 7460,
                            "loc": {
                              "start": {
                                "line": 225,
                                "column": 8
                              },
                              "end": {
                                "line": 225,
                                "column": 14
                              },
                              "identifierName": "output"
                            },
                            "name": "output"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7469,
                      "end": 7834,
                      "loc": {
                        "start": {
                          "line": 227,
                          "column": 4
                        },
                        "end": {
                          "line": 239,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 7472,
                        "end": 7499,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 7
                          },
                          "end": {
                            "line": 227,
                            "column": 34
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 7472,
                          "end": 7481,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 7
                            },
                            "end": {
                              "line": 227,
                              "column": 16
                            }
                          },
                          "operator": "!",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 7473,
                            "end": 7481,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 8
                              },
                              "end": {
                                "line": 227,
                                "column": 16
                              },
                              "identifierName": "position"
                            },
                            "name": "position"
                          },
                          "extra": {
                            "parenthesizedArgument": false
                          }
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 7485,
                          "end": 7499,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 20
                            },
                            "end": {
                              "line": 227,
                              "column": 34
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 7485,
                            "end": 7493,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 20
                              },
                              "end": {
                                "line": 227,
                                "column": 28
                              },
                              "identifierName": "position"
                            },
                            "name": "position"
                          },
                          "operator": "!==",
                          "right": {
                            "type": "NumericLiteral",
                            "start": 7498,
                            "end": 7499,
                            "loc": {
                              "start": {
                                "line": 227,
                                "column": 33
                              },
                              "end": {
                                "line": 227,
                                "column": 34
                              }
                            },
                            "extra": {
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "value": 0
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 7500,
                        "end": 7541,
                        "loc": {
                          "start": {
                            "line": 227,
                            "column": 35
                          },
                          "end": {
                            "line": 229,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7509,
                            "end": 7534,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 6
                              },
                              "end": {
                                "line": 228,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7509,
                              "end": 7533,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 6
                                },
                                "end": {
                                  "line": 228,
                                  "column": 30
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 7509,
                                "end": 7515,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 12
                                  },
                                  "identifierName": "output"
                                },
                                "name": "output"
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 7518,
                                "end": 7533,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 30
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 7518,
                                  "end": 7524,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 21
                                    },
                                    "identifierName": "source"
                                  },
                                  "name": "source"
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 7527,
                                  "end": 7533,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 30
                                    },
                                    "identifierName": "string"
                                  },
                                  "name": "string"
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 7547,
                        "end": 7834,
                        "loc": {
                          "start": {
                            "line": 229,
                            "column": 11
                          },
                          "end": {
                            "line": 239,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 7556,
                            "end": 7634,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 6
                              },
                              "end": {
                                "line": 230,
                                "column": 84
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 7556,
                              "end": 7633,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 6
                                },
                                "end": {
                                  "line": 230,
                                  "column": 83
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 7556,
                                "end": 7562,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 12
                                  },
                                  "identifierName": "output"
                                },
                                "name": "output"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 7565,
                                "end": 7633,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 83
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7565,
                                  "end": 7629,
                                  "loc": {
                                    "start": {
                                      "line": 230,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 230,
                                      "column": 79
                                    }
                                  },
                                  "object": {
                                    "type": "ArrayExpression",
                                    "start": 7565,
                                    "end": 7624,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 74
                                      }
                                    },
                                    "elements": [
                                      {
                                        "type": "CallExpression",
                                        "start": 7566,
                                        "end": 7591,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7566,
                                          "end": 7578,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 28
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 7566,
                                            "end": 7572,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 22
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7573,
                                            "end": 7578,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 28
                                              },
                                              "identifierName": "slice"
                                            },
                                            "name": "slice"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "NumericLiteral",
                                            "start": 7579,
                                            "end": 7580,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 30
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "value": 0
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 7582,
                                            "end": 7590,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 40
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          }
                                        ]
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 7593,
                                        "end": 7599,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 49
                                          },
                                          "identifierName": "string"
                                        },
                                        "name": "string"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 7601,
                                        "end": 7623,
                                        "loc": {
                                          "start": {
                                            "line": 230,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 230,
                                            "column": 73
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7601,
                                          "end": 7613,
                                          "loc": {
                                            "start": {
                                              "line": 230,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 230,
                                              "column": 63
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 7601,
                                            "end": 7607,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 57
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7608,
                                            "end": 7613,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 63
                                              },
                                              "identifierName": "slice"
                                            },
                                            "name": "slice"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 7614,
                                            "end": 7622,
                                            "loc": {
                                              "start": {
                                                "line": 230,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 230,
                                                "column": 72
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7625,
                                    "end": 7629,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 75
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 79
                                      },
                                      "identifierName": "join"
                                    },
                                    "name": "join"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 7630,
                                    "end": 7632,
                                    "loc": {
                                      "start": {
                                        "line": 230,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 230,
                                        "column": 82
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "",
                                      "raw": "''"
                                    },
                                    "value": ""
                                  }
                                ]
                              }
                            },
                            "trailingComments": [
                              {
                                "type": "CommentBlock",
                                "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
                                "start": 7644,
                                "end": 7718,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 9
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 7726,
                            "end": 7825,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 6
                              },
                              "end": {
                                "line": 237,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "UnaryExpression",
                              "start": 7729,
                              "end": 7755,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 9
                                },
                                "end": {
                                  "line": 235,
                                  "column": 35
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "CallExpression",
                                "start": 7730,
                                "end": 7755,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 35
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7730,
                                  "end": 7753,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7730,
                                    "end": 7734,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 14
                                      }
                                    },
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7735,
                                    "end": 7753,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 33
                                      },
                                      "identifierName": "isMaxLengthReached"
                                    },
                                    "name": "isMaxLengthReached"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [],
                                "leadingComments": null
                              },
                              "extra": {
                                "parenthesizedArgument": false
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 7756,
                              "end": 7825,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 36
                                },
                                "end": {
                                  "line": 237,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 7767,
                                  "end": 7816,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 57
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 7770,
                                    "end": 7779,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 20
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 7781,
                                    "end": 7816,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 57
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 7781,
                                      "end": 7815,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 56
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 7781,
                                        "end": 7800,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 7781,
                                          "end": 7785,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7786,
                                          "end": 7800,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 41
                                            },
                                            "identifierName": "updateCaretPos"
                                          },
                                          "name": "updateCaretPos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 7801,
                                          "end": 7814,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 55
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 7801,
                                            "end": 7807,
                                            "loc": {
                                              "start": {
                                                "line": 236,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 236,
                                                "column": 48
                                              },
                                              "identifierName": "string"
                                            },
                                            "name": "string"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7808,
                                            "end": 7814,
                                            "loc": {
                                              "start": {
                                                "line": 236,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 236,
                                                "column": 55
                                              },
                                              "identifierName": "length"
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentBlock",
                                "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
                                "start": 7644,
                                "end": 7718,
                                "loc": {
                                  "start": {
                                    "line": 232,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 9
                                  }
                                }
                              }
                            ]
                          }
                        ],
                        "directives": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7842,
                      "end": 7856,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 4
                        },
                        "end": {
                          "line": 241,
                          "column": 18
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 7849,
                        "end": 7855,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 11
                          },
                          "end": {
                            "line": 241,
                            "column": 17
                          },
                          "identifierName": "output"
                        },
                        "name": "output"
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 7062,
                    "end": 7391,
                    "loc": {
                      "start": {
                        "line": 216,
                        "column": 2
                      },
                      "end": {
                        "line": 223,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 7867,
                    "end": 8164,
                    "loc": {
                      "start": {
                        "line": 244,
                        "column": 2
                      },
                      "end": {
                        "line": 250,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 8168,
                "end": 9465,
                "loc": {
                  "start": {
                    "line": 251,
                    "column": 2
                  },
                  "end": {
                    "line": 290,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 8168,
                  "end": 8176,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 2
                    },
                    "end": {
                      "line": 251,
                      "column": 10
                    },
                    "identifierName": "removeAt"
                  },
                  "name": "removeAt",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8177,
                    "end": 8183,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 11
                      },
                      "end": {
                        "line": 251,
                        "column": 17
                      },
                      "identifierName": "source"
                    },
                    "name": "source"
                  },
                  {
                    "type": "Identifier",
                    "start": 8185,
                    "end": 8193,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 19
                      },
                      "end": {
                        "line": 251,
                        "column": 27
                      },
                      "identifierName": "position"
                    },
                    "name": "position"
                  },
                  {
                    "type": "Identifier",
                    "start": 8195,
                    "end": 8204,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 29
                      },
                      "end": {
                        "line": 251,
                        "column": 38
                      },
                      "identifierName": "moveCaret"
                    },
                    "name": "moveCaret"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8205,
                  "end": 9465,
                  "loc": {
                    "start": {
                      "line": 251,
                      "column": 39
                    },
                    "end": {
                      "line": 290,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 8212,
                      "end": 8293,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 4
                        },
                        "end": {
                          "line": 254,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 8215,
                        "end": 8262,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 7
                          },
                          "end": {
                            "line": 252,
                            "column": 54
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 8215,
                          "end": 8256,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 7
                            },
                            "end": {
                              "line": 252,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8215,
                            "end": 8242,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 7
                              },
                              "end": {
                                "line": 252,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8215,
                              "end": 8219,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 7
                                },
                                "end": {
                                  "line": 252,
                                  "column": 11
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8220,
                              "end": 8242,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 12
                                },
                                "end": {
                                  "line": 252,
                                  "column": 34
                                },
                                "identifierName": "simpleKeyboardInstance"
                              },
                              "name": "simpleKeyboardInstance"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8243,
                            "end": 8256,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 35
                              },
                              "end": {
                                "line": 252,
                                "column": 48
                              },
                              "identifierName": "caretPosition"
                            },
                            "name": "caretPosition"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "NumericLiteral",
                          "start": 8261,
                          "end": 8262,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 53
                            },
                            "end": {
                              "line": 252,
                              "column": 54
                            }
                          },
                          "extra": {
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "value": 0
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8263,
                        "end": 8293,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 55
                          },
                          "end": {
                            "line": 254,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 8272,
                            "end": 8286,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 6
                              },
                              "end": {
                                "line": 253,
                                "column": 20
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 8279,
                              "end": 8285,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 13
                                },
                                "end": {
                                  "line": 253,
                                  "column": 19
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8301,
                      "end": 8312,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 4
                        },
                        "end": {
                          "line": 256,
                          "column": 15
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8305,
                          "end": 8311,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 8
                            },
                            "end": {
                              "line": 256,
                              "column": 14
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8305,
                            "end": 8311,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 8
                              },
                              "end": {
                                "line": 256,
                                "column": 14
                              },
                              "identifierName": "output"
                            },
                            "name": "output"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8318,
                      "end": 8335,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 4
                        },
                        "end": {
                          "line": 257,
                          "column": 21
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8322,
                          "end": 8334,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 20
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8322,
                            "end": 8334,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 8
                              },
                              "end": {
                                "line": 257,
                                "column": 20
                              },
                              "identifierName": "prevTwoChars"
                            },
                            "name": "prevTwoChars"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8341,
                      "end": 8358,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 4
                        },
                        "end": {
                          "line": 258,
                          "column": 21
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8345,
                          "end": 8357,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 8
                            },
                            "end": {
                              "line": 258,
                              "column": 20
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8345,
                            "end": 8357,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 8
                              },
                              "end": {
                                "line": 258,
                                "column": 20
                              },
                              "identifierName": "emojiMatched"
                            },
                            "name": "emojiMatched"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8364,
                      "end": 8422,
                      "loc": {
                        "start": {
                          "line": 259,
                          "column": 4
                        },
                        "end": {
                          "line": 259,
                          "column": 62
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8368,
                          "end": 8421,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 8
                            },
                            "end": {
                              "line": 259,
                              "column": 61
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8368,
                            "end": 8383,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 8
                              },
                              "end": {
                                "line": 259,
                                "column": 23
                              },
                              "identifierName": "emojiMatchedReg"
                            },
                            "name": "emojiMatchedReg"
                          },
                          "init": {
                            "type": "RegExpLiteral",
                            "start": 8386,
                            "end": 8421,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 26
                              },
                              "end": {
                                "line": 259,
                                "column": 61
                              }
                            },
                            "extra": {
                              "raw": "/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g"
                            },
                            "pattern": "([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])",
                            "flags": "g"
                          }
                        }
                      ],
                      "kind": "let",
                      "trailingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
                          "start": 8430,
                          "end": 8610,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 4
                            },
                            "end": {
                              "line": 264,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 8616,
                      "end": 9438,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 4
                        },
                        "end": {
                          "line": 287,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 8619,
                        "end": 8644,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 7
                          },
                          "end": {
                            "line": 265,
                            "column": 32
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8619,
                          "end": 8627,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 7
                            },
                            "end": {
                              "line": 265,
                              "column": 15
                            },
                            "identifierName": "position"
                          },
                          "name": "position",
                          "leadingComments": null
                        },
                        "operator": "&&",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 8631,
                          "end": 8644,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 19
                            },
                            "end": {
                              "line": 265,
                              "column": 32
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 8631,
                            "end": 8639,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 19
                              },
                              "end": {
                                "line": 265,
                                "column": 27
                              },
                              "identifierName": "position"
                            },
                            "name": "position"
                          },
                          "operator": ">=",
                          "right": {
                            "type": "NumericLiteral",
                            "start": 8643,
                            "end": 8644,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 31
                              },
                              "end": {
                                "line": 265,
                                "column": 32
                              }
                            },
                            "extra": {
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "value": 0
                          }
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 8645,
                        "end": 9089,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 33
                          },
                          "end": {
                            "line": 276,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 8654,
                            "end": 8709,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 6
                              },
                              "end": {
                                "line": 266,
                                "column": 61
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 8654,
                              "end": 8709,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 6
                                },
                                "end": {
                                  "line": 266,
                                  "column": 61
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 8654,
                                "end": 8666,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 18
                                  },
                                  "identifierName": "prevTwoChars"
                                },
                                "name": "prevTwoChars"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 8669,
                                "end": 8709,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 61
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8669,
                                  "end": 8685,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8669,
                                    "end": 8675,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 27
                                      },
                                      "identifierName": "source"
                                    },
                                    "name": "source"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8676,
                                    "end": 8685,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 37
                                      },
                                      "identifierName": "substring"
                                    },
                                    "name": "substring"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "BinaryExpression",
                                    "start": 8686,
                                    "end": 8698,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 50
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8686,
                                      "end": 8694,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 46
                                        },
                                        "identifierName": "position"
                                      },
                                      "name": "position"
                                    },
                                    "operator": "-",
                                    "right": {
                                      "type": "NumericLiteral",
                                      "start": 8697,
                                      "end": 8698,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 50
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "value": 2
                                    }
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 8700,
                                    "end": 8708,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 60
                                      },
                                      "identifierName": "position"
                                    },
                                    "name": "position"
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 8717,
                            "end": 8768,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 6
                              },
                              "end": {
                                "line": 267,
                                "column": 57
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 8717,
                              "end": 8767,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 6
                                },
                                "end": {
                                  "line": 267,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 8717,
                                "end": 8729,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 18
                                  },
                                  "identifierName": "emojiMatched"
                                },
                                "name": "emojiMatched"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 8732,
                                "end": 8767,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8732,
                                  "end": 8750,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8732,
                                    "end": 8744,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 33
                                      },
                                      "identifierName": "prevTwoChars"
                                    },
                                    "name": "prevTwoChars"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8745,
                                    "end": 8750,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 39
                                      },
                                      "identifierName": "match"
                                    },
                                    "name": "match"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 8751,
                                    "end": 8766,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 55
                                      },
                                      "identifierName": "emojiMatchedReg"
                                    },
                                    "name": "emojiMatchedReg"
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 8778,
                            "end": 9082,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 6
                              },
                              "end": {
                                "line": 275,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 8781,
                              "end": 8793,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 9
                                },
                                "end": {
                                  "line": 269,
                                  "column": 21
                                },
                                "identifierName": "emojiMatched"
                              },
                              "name": "emojiMatched"
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 8794,
                              "end": 8935,
                              "loc": {
                                "start": {
                                  "line": 269,
                                  "column": 22
                                },
                                "end": {
                                  "line": 272,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8805,
                                  "end": 8873,
                                  "loc": {
                                    "start": {
                                      "line": 270,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 270,
                                      "column": 76
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8805,
                                    "end": 8872,
                                    "loc": {
                                      "start": {
                                        "line": 270,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 270,
                                        "column": 75
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8805,
                                      "end": 8811,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 14
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 8814,
                                      "end": 8872,
                                      "loc": {
                                        "start": {
                                          "line": 270,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 270,
                                          "column": 75
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 8814,
                                        "end": 8846,
                                        "loc": {
                                          "start": {
                                            "line": 270,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 270,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8814,
                                          "end": 8827,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 30
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8814,
                                            "end": 8820,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 23
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8821,
                                            "end": 8827,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 30
                                              },
                                              "identifierName": "substr"
                                            },
                                            "name": "substr"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "NumericLiteral",
                                            "start": 8828,
                                            "end": 8829,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 32
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "value": 0
                                          },
                                          {
                                            "type": "BinaryExpression",
                                            "start": 8832,
                                            "end": 8844,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 8832,
                                              "end": 8840,
                                              "loc": {
                                                "start": {
                                                  "line": 270,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 270,
                                                  "column": 43
                                                },
                                                "identifierName": "position"
                                              },
                                              "name": "position"
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 8843,
                                              "end": 8844,
                                              "loc": {
                                                "start": {
                                                  "line": 270,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 270,
                                                  "column": 47
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 2,
                                                "raw": "2"
                                              },
                                              "value": 2
                                            },
                                            "extra": {
                                              "parenthesized": true,
                                              "parenStart": 8831
                                            }
                                          }
                                        ]
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 8849,
                                        "end": 8872,
                                        "loc": {
                                          "start": {
                                            "line": 270,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 270,
                                            "column": 75
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8849,
                                          "end": 8862,
                                          "loc": {
                                            "start": {
                                              "line": 270,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 270,
                                              "column": 65
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8849,
                                            "end": 8855,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 58
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8856,
                                            "end": 8862,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 65
                                              },
                                              "identifierName": "substr"
                                            },
                                            "name": "substr"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 8863,
                                            "end": 8871,
                                            "loc": {
                                              "start": {
                                                "line": 270,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 270,
                                                "column": 74
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          }
                                        ]
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 8883,
                                  "end": 8926,
                                  "loc": {
                                    "start": {
                                      "line": 271,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 271,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 8886,
                                    "end": 8895,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 20
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 8897,
                                    "end": 8926,
                                    "loc": {
                                      "start": {
                                        "line": 271,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 271,
                                        "column": 51
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 8897,
                                      "end": 8925,
                                      "loc": {
                                        "start": {
                                          "line": 271,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 271,
                                          "column": 50
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8897,
                                        "end": 8916,
                                        "loc": {
                                          "start": {
                                            "line": 271,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 271,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8897,
                                          "end": 8901,
                                          "loc": {
                                            "start": {
                                              "line": 271,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 271,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8902,
                                          "end": 8916,
                                          "loc": {
                                            "start": {
                                              "line": 271,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 271,
                                              "column": 41
                                            },
                                            "identifierName": "updateCaretPos"
                                          },
                                          "name": "updateCaretPos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 8917,
                                          "end": 8918,
                                          "loc": {
                                            "start": {
                                              "line": 271,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 271,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "value": 2
                                        },
                                        {
                                          "type": "BooleanLiteral",
                                          "start": 8920,
                                          "end": 8924,
                                          "loc": {
                                            "start": {
                                              "line": 271,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 271,
                                              "column": 49
                                            }
                                          },
                                          "value": true
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 8941,
                              "end": 9082,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 13
                                },
                                "end": {
                                  "line": 275,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8952,
                                  "end": 9020,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 76
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 8952,
                                    "end": 9019,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 75
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 8952,
                                      "end": 8958,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 14
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 8961,
                                      "end": 9019,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 75
                                        }
                                      },
                                      "left": {
                                        "type": "CallExpression",
                                        "start": 8961,
                                        "end": 8993,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 49
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8961,
                                          "end": 8974,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 30
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8961,
                                            "end": 8967,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 23
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8968,
                                            "end": 8974,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 30
                                              },
                                              "identifierName": "substr"
                                            },
                                            "name": "substr"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "NumericLiteral",
                                            "start": 8975,
                                            "end": 8976,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 32
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "value": 0
                                          },
                                          {
                                            "type": "BinaryExpression",
                                            "start": 8979,
                                            "end": 8991,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 8979,
                                              "end": 8987,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 43
                                                },
                                                "identifierName": "position"
                                              },
                                              "name": "position"
                                            },
                                            "operator": "-",
                                            "right": {
                                              "type": "NumericLiteral",
                                              "start": 8990,
                                              "end": 8991,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 47
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            },
                                            "extra": {
                                              "parenthesized": true,
                                              "parenStart": 8978
                                            }
                                          }
                                        ]
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "CallExpression",
                                        "start": 8996,
                                        "end": 9019,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 75
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 8996,
                                          "end": 9009,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 65
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 8996,
                                            "end": 9002,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 58
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9003,
                                            "end": 9009,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 65
                                              },
                                              "identifierName": "substr"
                                            },
                                            "name": "substr"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 9010,
                                            "end": 9018,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 74
                                              },
                                              "identifierName": "position"
                                            },
                                            "name": "position"
                                          }
                                        ]
                                      }
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 9030,
                                  "end": 9073,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 9033,
                                    "end": 9042,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 20
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9044,
                                    "end": 9073,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 51
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9044,
                                      "end": 9072,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 50
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9044,
                                        "end": 9063,
                                        "loc": {
                                          "start": {
                                            "line": 274,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 274,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9044,
                                          "end": 9048,
                                          "loc": {
                                            "start": {
                                              "line": 274,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 274,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9049,
                                          "end": 9063,
                                          "loc": {
                                            "start": {
                                              "line": 274,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 274,
                                              "column": 41
                                            },
                                            "identifierName": "updateCaretPos"
                                          },
                                          "name": "updateCaretPos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 9064,
                                          "end": 9065,
                                          "loc": {
                                            "start": {
                                              "line": 274,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 274,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "value": 1
                                        },
                                        {
                                          "type": "BooleanLiteral",
                                          "start": 9067,
                                          "end": 9071,
                                          "loc": {
                                            "start": {
                                              "line": 274,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 274,
                                              "column": 49
                                            }
                                          },
                                          "value": true
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 9095,
                        "end": 9438,
                        "loc": {
                          "start": {
                            "line": 276,
                            "column": 11
                          },
                          "end": {
                            "line": 287,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9104,
                            "end": 9136,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 6
                              },
                              "end": {
                                "line": 277,
                                "column": 38
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 9104,
                              "end": 9135,
                              "loc": {
                                "start": {
                                  "line": 277,
                                  "column": 6
                                },
                                "end": {
                                  "line": 277,
                                  "column": 37
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 9104,
                                "end": 9116,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 18
                                  },
                                  "identifierName": "prevTwoChars"
                                },
                                "name": "prevTwoChars"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 9119,
                                "end": 9135,
                                "loc": {
                                  "start": {
                                    "line": 277,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 277,
                                    "column": 37
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9119,
                                  "end": 9131,
                                  "loc": {
                                    "start": {
                                      "line": 277,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 277,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9119,
                                    "end": 9125,
                                    "loc": {
                                      "start": {
                                        "line": 277,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 277,
                                        "column": 27
                                      },
                                      "identifierName": "source"
                                    },
                                    "name": "source"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9126,
                                    "end": 9131,
                                    "loc": {
                                      "start": {
                                        "line": 277,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 277,
                                        "column": 33
                                      },
                                      "identifierName": "slice"
                                    },
                                    "name": "slice"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "UnaryExpression",
                                    "start": 9132,
                                    "end": 9134,
                                    "loc": {
                                      "start": {
                                        "line": 277,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 277,
                                        "column": 36
                                      }
                                    },
                                    "operator": "-",
                                    "prefix": true,
                                    "argument": {
                                      "type": "NumericLiteral",
                                      "start": 9133,
                                      "end": 9134,
                                      "loc": {
                                        "start": {
                                          "line": 277,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 277,
                                          "column": 36
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "value": 2
                                    },
                                    "extra": {
                                      "parenthesizedArgument": false
                                    }
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 9144,
                            "end": 9195,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 6
                              },
                              "end": {
                                "line": 278,
                                "column": 57
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 9144,
                              "end": 9194,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 6
                                },
                                "end": {
                                  "line": 278,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 9144,
                                "end": 9156,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 18
                                  },
                                  "identifierName": "emojiMatched"
                                },
                                "name": "emojiMatched"
                              },
                              "right": {
                                "type": "CallExpression",
                                "start": 9159,
                                "end": 9194,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9159,
                                  "end": 9177,
                                  "loc": {
                                    "start": {
                                      "line": 278,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 278,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9159,
                                    "end": 9171,
                                    "loc": {
                                      "start": {
                                        "line": 278,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 278,
                                        "column": 33
                                      },
                                      "identifierName": "prevTwoChars"
                                    },
                                    "name": "prevTwoChars"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9172,
                                    "end": 9177,
                                    "loc": {
                                      "start": {
                                        "line": 278,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 278,
                                        "column": 39
                                      },
                                      "identifierName": "match"
                                    },
                                    "name": "match"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 9178,
                                    "end": 9193,
                                    "loc": {
                                      "start": {
                                        "line": 278,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 278,
                                        "column": 55
                                      },
                                      "identifierName": "emojiMatchedReg"
                                    },
                                    "name": "emojiMatchedReg"
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "type": "IfStatement",
                            "start": 9205,
                            "end": 9431,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 6
                              },
                              "end": {
                                "line": 286,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 9208,
                              "end": 9220,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 9
                                },
                                "end": {
                                  "line": 280,
                                  "column": 21
                                },
                                "identifierName": "emojiMatched"
                              },
                              "name": "emojiMatched"
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 9221,
                              "end": 9323,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 22
                                },
                                "end": {
                                  "line": 283,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 9232,
                                  "end": 9261,
                                  "loc": {
                                    "start": {
                                      "line": 281,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 281,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 9232,
                                    "end": 9260,
                                    "loc": {
                                      "start": {
                                        "line": 281,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 281,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 9232,
                                      "end": 9238,
                                      "loc": {
                                        "start": {
                                          "line": 281,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 281,
                                          "column": 14
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 9241,
                                      "end": 9260,
                                      "loc": {
                                        "start": {
                                          "line": 281,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 281,
                                          "column": 36
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9241,
                                        "end": 9253,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 281,
                                            "column": 29
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 9241,
                                          "end": 9247,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 23
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9248,
                                          "end": 9253,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 29
                                            },
                                            "identifierName": "slice"
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 9254,
                                          "end": 9255,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 31
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "UnaryExpression",
                                          "start": 9257,
                                          "end": 9259,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 35
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "NumericLiteral",
                                            "start": 9258,
                                            "end": 9259,
                                            "loc": {
                                              "start": {
                                                "line": 281,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 281,
                                                "column": 35
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "value": 2
                                          },
                                          "extra": {
                                            "parenthesizedArgument": false
                                          }
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 9271,
                                  "end": 9314,
                                  "loc": {
                                    "start": {
                                      "line": 282,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 282,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 9274,
                                    "end": 9283,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 20
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9285,
                                    "end": 9314,
                                    "loc": {
                                      "start": {
                                        "line": 282,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 282,
                                        "column": 51
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9285,
                                      "end": 9313,
                                      "loc": {
                                        "start": {
                                          "line": 282,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 282,
                                          "column": 50
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9285,
                                        "end": 9304,
                                        "loc": {
                                          "start": {
                                            "line": 282,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9285,
                                          "end": 9289,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9290,
                                          "end": 9304,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 41
                                            },
                                            "identifierName": "updateCaretPos"
                                          },
                                          "name": "updateCaretPos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 9305,
                                          "end": 9306,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 2,
                                            "raw": "2"
                                          },
                                          "value": 2
                                        },
                                        {
                                          "type": "BooleanLiteral",
                                          "start": 9308,
                                          "end": 9312,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 49
                                            }
                                          },
                                          "value": true
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 9329,
                              "end": 9431,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 13
                                },
                                "end": {
                                  "line": 286,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 9340,
                                  "end": 9369,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 9340,
                                    "end": 9368,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "Identifier",
                                      "start": 9340,
                                      "end": 9346,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 14
                                        },
                                        "identifierName": "output"
                                      },
                                      "name": "output"
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 9349,
                                      "end": 9368,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 36
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9349,
                                        "end": 9361,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 29
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 9349,
                                          "end": 9355,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 23
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9356,
                                          "end": 9361,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 29
                                            },
                                            "identifierName": "slice"
                                          },
                                          "name": "slice"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 9362,
                                          "end": 9363,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 31
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "value": 0
                                        },
                                        {
                                          "type": "UnaryExpression",
                                          "start": 9365,
                                          "end": 9367,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 35
                                            }
                                          },
                                          "operator": "-",
                                          "prefix": true,
                                          "argument": {
                                            "type": "NumericLiteral",
                                            "start": 9366,
                                            "end": 9367,
                                            "loc": {
                                              "start": {
                                                "line": 284,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 284,
                                                "column": 35
                                              }
                                            },
                                            "extra": {
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "value": 1
                                          },
                                          "extra": {
                                            "parenthesizedArgument": false
                                          }
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 9379,
                                  "end": 9422,
                                  "loc": {
                                    "start": {
                                      "line": 285,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 285,
                                      "column": 51
                                    }
                                  },
                                  "test": {
                                    "type": "Identifier",
                                    "start": 9382,
                                    "end": 9391,
                                    "loc": {
                                      "start": {
                                        "line": 285,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 285,
                                        "column": 20
                                      },
                                      "identifierName": "moveCaret"
                                    },
                                    "name": "moveCaret"
                                  },
                                  "consequent": {
                                    "type": "ExpressionStatement",
                                    "start": 9393,
                                    "end": 9422,
                                    "loc": {
                                      "start": {
                                        "line": 285,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 285,
                                        "column": 51
                                      }
                                    },
                                    "expression": {
                                      "type": "CallExpression",
                                      "start": 9393,
                                      "end": 9421,
                                      "loc": {
                                        "start": {
                                          "line": 285,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 285,
                                          "column": 50
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 9393,
                                        "end": 9412,
                                        "loc": {
                                          "start": {
                                            "line": 285,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 285,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9393,
                                          "end": 9397,
                                          "loc": {
                                            "start": {
                                              "line": 285,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 285,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9398,
                                          "end": 9412,
                                          "loc": {
                                            "start": {
                                              "line": 285,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 285,
                                              "column": 41
                                            },
                                            "identifierName": "updateCaretPos"
                                          },
                                          "name": "updateCaretPos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "NumericLiteral",
                                          "start": 9413,
                                          "end": 9414,
                                          "loc": {
                                            "start": {
                                              "line": 285,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 285,
                                              "column": 43
                                            }
                                          },
                                          "extra": {
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "value": 1
                                        },
                                        {
                                          "type": "BooleanLiteral",
                                          "start": 9416,
                                          "end": 9420,
                                          "loc": {
                                            "start": {
                                              "line": 285,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 285,
                                              "column": 49
                                            }
                                          },
                                          "value": true
                                        }
                                      ]
                                    }
                                  },
                                  "alternate": null
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
                          "start": 8430,
                          "end": 8610,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 4
                            },
                            "end": {
                              "line": 264,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 9446,
                      "end": 9460,
                      "loc": {
                        "start": {
                          "line": 289,
                          "column": 4
                        },
                        "end": {
                          "line": 289,
                          "column": 18
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 9453,
                        "end": 9459,
                        "loc": {
                          "start": {
                            "line": 289,
                            "column": 11
                          },
                          "end": {
                            "line": 289,
                            "column": 17
                          },
                          "identifierName": "output"
                        },
                        "name": "output"
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
                    "start": 7867,
                    "end": 8164,
                    "loc": {
                      "start": {
                        "line": 244,
                        "column": 2
                      },
                      "end": {
                        "line": 250,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
                    "start": 9469,
                    "end": 9700,
                    "loc": {
                      "start": {
                        "line": 291,
                        "column": 2
                      },
                      "end": {
                        "line": 297,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 9704,
                "end": 10960,
                "loc": {
                  "start": {
                    "line": 298,
                    "column": 2
                  },
                  "end": {
                    "line": 345,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 9704,
                  "end": 9719,
                  "loc": {
                    "start": {
                      "line": 298,
                      "column": 2
                    },
                    "end": {
                      "line": 298,
                      "column": 17
                    },
                    "identifierName": "handleMaxLength"
                  },
                  "name": "handleMaxLength",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9720,
                    "end": 9728,
                    "loc": {
                      "start": {
                        "line": 298,
                        "column": 18
                      },
                      "end": {
                        "line": 298,
                        "column": 26
                      },
                      "identifierName": "inputObj"
                    },
                    "name": "inputObj"
                  },
                  {
                    "type": "Identifier",
                    "start": 9730,
                    "end": 9737,
                    "loc": {
                      "start": {
                        "line": 298,
                        "column": 28
                      },
                      "end": {
                        "line": 298,
                        "column": 35
                      },
                      "identifierName": "options"
                    },
                    "name": "options"
                  },
                  {
                    "type": "Identifier",
                    "start": 9739,
                    "end": 9751,
                    "loc": {
                      "start": {
                        "line": 298,
                        "column": 37
                      },
                      "end": {
                        "line": 298,
                        "column": 49
                      },
                      "identifierName": "updatedInput"
                    },
                    "name": "updatedInput"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9752,
                  "end": 10960,
                  "loc": {
                    "start": {
                      "line": 298,
                      "column": 50
                    },
                    "end": {
                      "line": 345,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9759,
                      "end": 9793,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 4
                        },
                        "end": {
                          "line": 299,
                          "column": 38
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9763,
                          "end": 9792,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 8
                            },
                            "end": {
                              "line": 299,
                              "column": 37
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9763,
                            "end": 9772,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 8
                              },
                              "end": {
                                "line": 299,
                                "column": 17
                              },
                              "identifierName": "maxLength"
                            },
                            "name": "maxLength"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9775,
                            "end": 9792,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 20
                              },
                              "end": {
                                "line": 299,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9775,
                              "end": 9782,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 20
                                },
                                "end": {
                                  "line": 299,
                                  "column": 27
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9783,
                              "end": 9792,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 28
                                },
                                "end": {
                                  "line": 299,
                                  "column": 37
                                },
                                "identifierName": "maxLength"
                              },
                              "name": "maxLength"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9799,
                      "end": 9846,
                      "loc": {
                        "start": {
                          "line": 300,
                          "column": 4
                        },
                        "end": {
                          "line": 300,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9803,
                          "end": 9845,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 8
                            },
                            "end": {
                              "line": 300,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9803,
                            "end": 9815,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 8
                              },
                              "end": {
                                "line": 300,
                                "column": 20
                              },
                              "identifierName": "currentInput"
                            },
                            "name": "currentInput"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 9818,
                            "end": 9845,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 23
                              },
                              "end": {
                                "line": 300,
                                "column": 50
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 9818,
                              "end": 9826,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 23
                                },
                                "end": {
                                  "line": 300,
                                  "column": 31
                                },
                                "identifierName": "inputObj"
                              },
                              "name": "inputObj"
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 9827,
                              "end": 9844,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 32
                                },
                                "end": {
                                  "line": 300,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9827,
                                "end": 9834,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 39
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9835,
                                "end": 9844,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 49
                                  },
                                  "identifierName": "inputName"
                                },
                                "name": "inputName"
                              },
                              "computed": false
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9852,
                      "end": 9902,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 4
                        },
                        "end": {
                          "line": 301,
                          "column": 54
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9856,
                          "end": 9901,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 8
                            },
                            "end": {
                              "line": 301,
                              "column": 53
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9856,
                            "end": 9865,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 8
                              },
                              "end": {
                                "line": 301,
                                "column": 17
                              },
                              "identifierName": "condition"
                            },
                            "name": "condition"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 9868,
                            "end": 9901,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 20
                              },
                              "end": {
                                "line": 301,
                                "column": 53
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 9868,
                              "end": 9887,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 20
                                },
                                "end": {
                                  "line": 301,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9868,
                                "end": 9880,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 32
                                  },
                                  "identifierName": "currentInput"
                                },
                                "name": "currentInput"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9881,
                                "end": 9887,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 39
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "Identifier",
                              "start": 9892,
                              "end": 9901,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 44
                                },
                                "end": {
                                  "line": 301,
                                  "column": 53
                                },
                                "identifierName": "maxLength"
                              },
                              "name": "maxLength"
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 9910,
                      "end": 10128,
                      "loc": {
                        "start": {
                          "line": 303,
                          "column": 4
                        },
                        "end": {
                          "line": 311,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 10050,
                        "end": 10092,
                        "loc": {
                          "start": {
                            "line": 308,
                            "column": 6
                          },
                          "end": {
                            "line": 308,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 10050,
                          "end": 10069,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 6
                            },
                            "end": {
                              "line": 308,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10050,
                            "end": 10062,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 6
                              },
                              "end": {
                                "line": 308,
                                "column": 18
                              },
                              "identifierName": "updatedInput"
                            },
                            "name": "updatedInput",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10063,
                            "end": 10069,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 19
                              },
                              "end": {
                                "line": 308,
                                "column": 25
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "operator": "<=",
                        "right": {
                          "type": "MemberExpression",
                          "start": 10073,
                          "end": 10092,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 29
                            },
                            "end": {
                              "line": 308,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10073,
                            "end": 10085,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 29
                              },
                              "end": {
                                "line": 308,
                                "column": 41
                              },
                              "identifierName": "currentInput"
                            },
                            "name": "currentInput"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10086,
                            "end": 10092,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 42
                              },
                              "end": {
                                "line": 308,
                                "column": 48
                              },
                              "identifierName": "length"
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "leadingComments": [
                          {
                            "type": "CommentBlock",
                            "value": "*\r\n       * If pressing this button won't add more characters\r\n       * We exit out of this limiter function\r\n       ",
                            "start": 9921,
                            "end": 10042,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 6
                              },
                              "end": {
                                "line": 307,
                                "column": 9
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 10099,
                        "end": 10128,
                        "loc": {
                          "start": {
                            "line": 309,
                            "column": 5
                          },
                          "end": {
                            "line": 311,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "start": 10108,
                            "end": 10121,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 6
                              },
                              "end": {
                                "line": 310,
                                "column": 19
                              }
                            },
                            "argument": {
                              "type": "BooleanLiteral",
                              "start": 10115,
                              "end": 10120,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 13
                                },
                                "end": {
                                  "line": 310,
                                  "column": 18
                                }
                              },
                              "value": false
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 10136,
                      "end": 10558,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 4
                        },
                        "end": {
                          "line": 328,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 10139,
                        "end": 10166,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 7
                          },
                          "end": {
                            "line": 313,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10139,
                          "end": 10155,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 7
                            },
                            "end": {
                              "line": 313,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10139,
                            "end": 10145,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 7
                              },
                              "end": {
                                "line": 313,
                                "column": 13
                              },
                              "identifierName": "Number"
                            },
                            "name": "Number"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10146,
                            "end": 10155,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 14
                              },
                              "end": {
                                "line": 313,
                                "column": 23
                              },
                              "identifierName": "isInteger"
                            },
                            "name": "isInteger"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10156,
                            "end": 10165,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 24
                              },
                              "end": {
                                "line": 313,
                                "column": 33
                              },
                              "identifierName": "maxLength"
                            },
                            "name": "maxLength"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 10167,
                        "end": 10558,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 35
                          },
                          "end": {
                            "line": 328,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 10176,
                            "end": 10264,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 6
                              },
                              "end": {
                                "line": 316,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 10179,
                              "end": 10192,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 9
                                },
                                "end": {
                                  "line": 314,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10179,
                                "end": 10186,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 16
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10187,
                                "end": 10192,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 22
                                  },
                                  "identifierName": "debug"
                                },
                                "name": "debug"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 10193,
                              "end": 10264,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 23
                                },
                                "end": {
                                  "line": 316,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10204,
                                  "end": 10255,
                                  "loc": {
                                    "start": {
                                      "line": 315,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 315,
                                      "column": 59
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 10204,
                                    "end": 10254,
                                    "loc": {
                                      "start": {
                                        "line": 315,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 315,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10204,
                                      "end": 10215,
                                      "loc": {
                                        "start": {
                                          "line": 315,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 315,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10204,
                                        "end": 10211,
                                        "loc": {
                                          "start": {
                                            "line": 315,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 315,
                                            "column": 15
                                          },
                                          "identifierName": "console"
                                        },
                                        "name": "console"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10212,
                                        "end": 10215,
                                        "loc": {
                                          "start": {
                                            "line": 315,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 315,
                                            "column": 19
                                          },
                                          "identifierName": "log"
                                        },
                                        "name": "log"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 10216,
                                        "end": 10242,
                                        "loc": {
                                          "start": {
                                            "line": 315,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 315,
                                            "column": 46
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "maxLength (num) reached:",
                                          "raw": "\"maxLength (num) reached:\""
                                        },
                                        "value": "maxLength (num) reached:"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 10244,
                                        "end": 10253,
                                        "loc": {
                                          "start": {
                                            "line": 315,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 315,
                                            "column": 57
                                          },
                                          "identifierName": "condition"
                                        },
                                        "name": "condition"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 10274,
                            "end": 10551,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 6
                              },
                              "end": {
                                "line": 327,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 10277,
                              "end": 10286,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 9
                                },
                                "end": {
                                  "line": 318,
                                  "column": 18
                                },
                                "identifierName": "condition"
                              },
                              "name": "condition"
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 10287,
                              "end": 10472,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 19
                                },
                                "end": {
                                  "line": 324,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10412,
                                  "end": 10441,
                                  "loc": {
                                    "start": {
                                      "line": 322,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 322,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 10412,
                                    "end": 10440,
                                    "loc": {
                                      "start": {
                                        "line": 322,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 322,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 10412,
                                      "end": 10433,
                                      "loc": {
                                        "start": {
                                          "line": 322,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 322,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10412,
                                        "end": 10416,
                                        "loc": {
                                          "start": {
                                            "line": 322,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 322,
                                            "column": 12
                                          }
                                        },
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10417,
                                        "end": 10433,
                                        "loc": {
                                          "start": {
                                            "line": 322,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 322,
                                            "column": 29
                                          },
                                          "identifierName": "maxLengthReached"
                                        },
                                        "name": "maxLengthReached"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 10436,
                                      "end": 10440,
                                      "loc": {
                                        "start": {
                                          "line": 322,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 322,
                                          "column": 36
                                        }
                                      },
                                      "value": true
                                    },
                                    "leadingComments": null
                                  },
                                  "leadingComments": [
                                    {
                                      "type": "CommentBlock",
                                      "value": "*\r\n         * @type {boolean} Boolean value that shows whether maxLength has been reached\r\n         ",
                                      "start": 10298,
                                      "end": 10402,
                                      "loc": {
                                        "start": {
                                          "line": 319,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 321,
                                          "column": 11
                                        }
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 10451,
                                  "end": 10463,
                                  "loc": {
                                    "start": {
                                      "line": 323,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 323,
                                      "column": 20
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 10458,
                                    "end": 10462,
                                    "loc": {
                                      "start": {
                                        "line": 323,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 323,
                                        "column": 19
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 10478,
                              "end": 10551,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 13
                                },
                                "end": {
                                  "line": 327,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10489,
                                  "end": 10519,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 38
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 10489,
                                    "end": 10518,
                                    "loc": {
                                      "start": {
                                        "line": 325,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 325,
                                        "column": 37
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 10489,
                                      "end": 10510,
                                      "loc": {
                                        "start": {
                                          "line": 325,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 325,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10489,
                                        "end": 10493,
                                        "loc": {
                                          "start": {
                                            "line": 325,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 325,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10494,
                                        "end": 10510,
                                        "loc": {
                                          "start": {
                                            "line": 325,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 325,
                                            "column": 29
                                          },
                                          "identifierName": "maxLengthReached"
                                        },
                                        "name": "maxLengthReached"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 10513,
                                      "end": 10518,
                                      "loc": {
                                        "start": {
                                          "line": 325,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 325,
                                          "column": 37
                                        }
                                      },
                                      "value": false
                                    }
                                  }
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 10529,
                                  "end": 10542,
                                  "loc": {
                                    "start": {
                                      "line": 326,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 326,
                                      "column": 21
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 10536,
                                    "end": 10541,
                                    "loc": {
                                      "start": {
                                        "line": 326,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 326,
                                        "column": 20
                                      }
                                    },
                                    "value": false
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 10566,
                      "end": 10955,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 4
                        },
                        "end": {
                          "line": 344,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 10569,
                        "end": 10598,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 7
                          },
                          "end": {
                            "line": 330,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "UnaryExpression",
                          "start": 10569,
                          "end": 10585,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 7
                            },
                            "end": {
                              "line": 330,
                              "column": 23
                            }
                          },
                          "operator": "typeof",
                          "prefix": true,
                          "argument": {
                            "type": "Identifier",
                            "start": 10576,
                            "end": 10585,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 14
                              },
                              "end": {
                                "line": 330,
                                "column": 23
                              },
                              "identifierName": "maxLength"
                            },
                            "name": "maxLength"
                          },
                          "extra": {
                            "parenthesizedArgument": false
                          }
                        },
                        "operator": "===",
                        "right": {
                          "type": "StringLiteral",
                          "start": 10590,
                          "end": 10598,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 28
                            },
                            "end": {
                              "line": 330,
                              "column": 36
                            }
                          },
                          "extra": {
                            "rawValue": "object",
                            "raw": "\"object\""
                          },
                          "value": "object"
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 10599,
                        "end": 10955,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 37
                          },
                          "end": {
                            "line": 344,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 10608,
                            "end": 10677,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 6
                              },
                              "end": {
                                "line": 331,
                                "column": 75
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 10612,
                                "end": 10676,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 74
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 10612,
                                  "end": 10621,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 19
                                    },
                                    "identifierName": "condition"
                                  },
                                  "name": "condition"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 10624,
                                  "end": 10676,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 10624,
                                    "end": 10643,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 10624,
                                      "end": 10636,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 34
                                        },
                                        "identifierName": "currentInput"
                                      },
                                      "name": "currentInput"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10637,
                                      "end": 10643,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 41
                                        },
                                        "identifierName": "length"
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 10648,
                                    "end": 10676,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 10648,
                                      "end": 10657,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 55
                                        },
                                        "identifierName": "maxLength"
                                      },
                                      "name": "maxLength"
                                    },
                                    "property": {
                                      "type": "MemberExpression",
                                      "start": 10658,
                                      "end": 10675,
                                      "loc": {
                                        "start": {
                                          "line": 331,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 331,
                                          "column": 73
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10658,
                                        "end": 10665,
                                        "loc": {
                                          "start": {
                                            "line": 331,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 331,
                                            "column": 63
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10666,
                                        "end": 10675,
                                        "loc": {
                                          "start": {
                                            "line": 331,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 331,
                                            "column": 73
                                          },
                                          "identifierName": "inputName"
                                        },
                                        "name": "inputName"
                                      },
                                      "computed": false
                                    },
                                    "computed": true
                                  }
                                }
                              }
                            ],
                            "kind": "let"
                          },
                          {
                            "type": "IfStatement",
                            "start": 10687,
                            "end": 10775,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 6
                              },
                              "end": {
                                "line": 335,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 10690,
                              "end": 10703,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 9
                                },
                                "end": {
                                  "line": 333,
                                  "column": 22
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10690,
                                "end": 10697,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 16
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10698,
                                "end": 10703,
                                "loc": {
                                  "start": {
                                    "line": 333,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 333,
                                    "column": 22
                                  },
                                  "identifierName": "debug"
                                },
                                "name": "debug"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 10704,
                              "end": 10775,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 23
                                },
                                "end": {
                                  "line": 335,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10715,
                                  "end": 10766,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 59
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 10715,
                                    "end": 10765,
                                    "loc": {
                                      "start": {
                                        "line": 334,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 334,
                                        "column": 58
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10715,
                                      "end": 10726,
                                      "loc": {
                                        "start": {
                                          "line": 334,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 334,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 10715,
                                        "end": 10722,
                                        "loc": {
                                          "start": {
                                            "line": 334,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 334,
                                            "column": 15
                                          },
                                          "identifierName": "console"
                                        },
                                        "name": "console"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10723,
                                        "end": 10726,
                                        "loc": {
                                          "start": {
                                            "line": 334,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 334,
                                            "column": 19
                                          },
                                          "identifierName": "log"
                                        },
                                        "name": "log"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 10727,
                                        "end": 10753,
                                        "loc": {
                                          "start": {
                                            "line": 334,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 334,
                                            "column": 46
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "maxLength (obj) reached:",
                                          "raw": "\"maxLength (obj) reached:\""
                                        },
                                        "value": "maxLength (obj) reached:"
                                      },
                                      {
                                        "type": "Identifier",
                                        "start": 10755,
                                        "end": 10764,
                                        "loc": {
                                          "start": {
                                            "line": 334,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 334,
                                            "column": 57
                                          },
                                          "identifierName": "condition"
                                        },
                                        "name": "condition"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null
                          },
                          {
                            "type": "IfStatement",
                            "start": 10785,
                            "end": 10948,
                            "loc": {
                              "start": {
                                "line": 337,
                                "column": 6
                              },
                              "end": {
                                "line": 343,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 10788,
                              "end": 10797,
                              "loc": {
                                "start": {
                                  "line": 337,
                                  "column": 9
                                },
                                "end": {
                                  "line": 337,
                                  "column": 18
                                },
                                "identifierName": "condition"
                              },
                              "name": "condition"
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 10798,
                              "end": 10869,
                              "loc": {
                                "start": {
                                  "line": 337,
                                  "column": 19
                                },
                                "end": {
                                  "line": 340,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10809,
                                  "end": 10838,
                                  "loc": {
                                    "start": {
                                      "line": 338,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 37
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 10809,
                                    "end": 10837,
                                    "loc": {
                                      "start": {
                                        "line": 338,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 338,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 10809,
                                      "end": 10830,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10809,
                                        "end": 10813,
                                        "loc": {
                                          "start": {
                                            "line": 338,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 338,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10814,
                                        "end": 10830,
                                        "loc": {
                                          "start": {
                                            "line": 338,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 338,
                                            "column": 29
                                          },
                                          "identifierName": "maxLengthReached"
                                        },
                                        "name": "maxLengthReached"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 10833,
                                      "end": 10837,
                                      "loc": {
                                        "start": {
                                          "line": 338,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 338,
                                          "column": 36
                                        }
                                      },
                                      "value": true
                                    }
                                  }
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 10848,
                                  "end": 10860,
                                  "loc": {
                                    "start": {
                                      "line": 339,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 339,
                                      "column": 20
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 10855,
                                    "end": 10859,
                                    "loc": {
                                      "start": {
                                        "line": 339,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 339,
                                        "column": 19
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 10875,
                              "end": 10948,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 13
                                },
                                "end": {
                                  "line": 343,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 10886,
                                  "end": 10916,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 38
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 10886,
                                    "end": 10915,
                                    "loc": {
                                      "start": {
                                        "line": 341,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 341,
                                        "column": 37
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 10886,
                                      "end": 10907,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10886,
                                        "end": 10890,
                                        "loc": {
                                          "start": {
                                            "line": 341,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 341,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10891,
                                        "end": 10907,
                                        "loc": {
                                          "start": {
                                            "line": 341,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 341,
                                            "column": 29
                                          },
                                          "identifierName": "maxLengthReached"
                                        },
                                        "name": "maxLengthReached"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 10910,
                                      "end": 10915,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 37
                                        }
                                      },
                                      "value": false
                                    }
                                  }
                                },
                                {
                                  "type": "ReturnStatement",
                                  "start": 10926,
                                  "end": 10939,
                                  "loc": {
                                    "start": {
                                      "line": 342,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 342,
                                      "column": 21
                                    }
                                  },
                                  "argument": {
                                    "type": "BooleanLiteral",
                                    "start": 10933,
                                    "end": 10938,
                                    "loc": {
                                      "start": {
                                        "line": 342,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 342,
                                        "column": 20
                                      }
                                    },
                                    "value": false
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
                    "start": 9469,
                    "end": 9700,
                    "loc": {
                      "start": {
                        "line": 291,
                        "column": 2
                      },
                      "end": {
                        "line": 297,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
                    "start": 10966,
                    "end": 11025,
                    "loc": {
                      "start": {
                        "line": 347,
                        "column": 2
                      },
                      "end": {
                        "line": 349,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 11029,
                "end": 11099,
                "loc": {
                  "start": {
                    "line": 350,
                    "column": 2
                  },
                  "end": {
                    "line": 352,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 11029,
                  "end": 11047,
                  "loc": {
                    "start": {
                      "line": 350,
                      "column": 2
                    },
                    "end": {
                      "line": 350,
                      "column": 20
                    },
                    "identifierName": "isMaxLengthReached"
                  },
                  "name": "isMaxLengthReached",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11049,
                  "end": 11099,
                  "loc": {
                    "start": {
                      "line": 350,
                      "column": 22
                    },
                    "end": {
                      "line": 352,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 11056,
                      "end": 11094,
                      "loc": {
                        "start": {
                          "line": 351,
                          "column": 4
                        },
                        "end": {
                          "line": 351,
                          "column": 42
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 11063,
                        "end": 11093,
                        "loc": {
                          "start": {
                            "line": 351,
                            "column": 11
                          },
                          "end": {
                            "line": 351,
                            "column": 41
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11063,
                          "end": 11070,
                          "loc": {
                            "start": {
                              "line": 351,
                              "column": 11
                            },
                            "end": {
                              "line": 351,
                              "column": 18
                            },
                            "identifierName": "Boolean"
                          },
                          "name": "Boolean"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11071,
                            "end": 11092,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 19
                              },
                              "end": {
                                "line": 351,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11071,
                              "end": 11075,
                              "loc": {
                                "start": {
                                  "line": 351,
                                  "column": 19
                                },
                                "end": {
                                  "line": 351,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11076,
                              "end": 11092,
                              "loc": {
                                "start": {
                                  "line": 351,
                                  "column": 24
                                },
                                "end": {
                                  "line": 351,
                                  "column": 40
                                },
                                "identifierName": "maxLengthReached"
                              },
                              "name": "maxLengthReached"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
                    "start": 10966,
                    "end": 11025,
                    "loc": {
                      "start": {
                        "line": 347,
                        "column": 2
                      },
                      "end": {
                        "line": 349,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
                    "start": 11105,
                    "end": 11227,
                    "loc": {
                      "start": {
                        "line": 354,
                        "column": 2
                      },
                      "end": {
                        "line": 358,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 11231,
                "end": 11387,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 2
                  },
                  "end": {
                    "line": 361,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 11231,
                  "end": 11240,
                  "loc": {
                    "start": {
                      "line": 359,
                      "column": 2
                    },
                    "end": {
                      "line": 359,
                      "column": 11
                    },
                    "identifierName": "camelCase"
                  },
                  "name": "camelCase",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11241,
                    "end": 11247,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 12
                      },
                      "end": {
                        "line": 359,
                        "column": 18
                      },
                      "identifierName": "string"
                    },
                    "name": "string"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11248,
                  "end": 11387,
                  "loc": {
                    "start": {
                      "line": 359,
                      "column": 19
                    },
                    "end": {
                      "line": 361,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 11255,
                      "end": 11382,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 4
                        },
                        "end": {
                          "line": 360,
                          "column": 131
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 11262,
                        "end": 11381,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 11
                          },
                          "end": {
                            "line": 360,
                            "column": 130
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11262,
                          "end": 11315,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 11
                            },
                            "end": {
                              "line": 360,
                              "column": 64
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 11262,
                            "end": 11308,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 11
                              },
                              "end": {
                                "line": 360,
                                "column": 57
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11262,
                              "end": 11295,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 11
                                },
                                "end": {
                                  "line": 360,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11262,
                                "end": 11289,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11262,
                                  "end": 11287,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 11262,
                                    "end": 11282,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 31
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11262,
                                      "end": 11280,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 11262,
                                        "end": 11268,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 17
                                          },
                                          "identifierName": "string"
                                        },
                                        "name": "string"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11269,
                                        "end": 11280,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 29
                                          },
                                          "identifierName": "toLowerCase"
                                        },
                                        "name": "toLowerCase"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11283,
                                    "end": 11287,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 36
                                      },
                                      "identifierName": "trim"
                                    },
                                    "name": "trim"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11290,
                                "end": 11295,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 44
                                  },
                                  "identifierName": "split"
                                },
                                "name": "split"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "RegExpLiteral",
                                "start": 11296,
                                "end": 11307,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 56
                                  }
                                },
                                "extra": {
                                  "raw": "/[.\\-_\\s]/g"
                                },
                                "pattern": "[.\\-_\\s]",
                                "flags": "g"
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11309,
                            "end": 11315,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 58
                              },
                              "end": {
                                "line": 360,
                                "column": 64
                              },
                              "identifierName": "reduce"
                            },
                            "name": "reduce"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11316,
                            "end": 11380,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 65
                              },
                              "end": {
                                "line": 360,
                                "column": 129
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11317,
                                "end": 11323,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 66
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 72
                                  },
                                  "identifierName": "string"
                                },
                                "name": "string"
                              },
                              {
                                "type": "Identifier",
                                "start": 11325,
                                "end": 11329,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 78
                                  },
                                  "identifierName": "word"
                                },
                                "name": "word"
                              }
                            ],
                            "body": {
                              "type": "BinaryExpression",
                              "start": 11334,
                              "end": 11380,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 83
                                },
                                "end": {
                                  "line": 360,
                                  "column": 129
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 11334,
                                "end": 11364,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 113
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 11334,
                                  "end": 11340,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 83
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 89
                                    },
                                    "identifierName": "string"
                                  },
                                  "name": "string"
                                },
                                "operator": "+",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 11343,
                                  "end": 11364,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 113
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 11343,
                                    "end": 11362,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 111
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 11343,
                                      "end": 11350,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 92
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 99
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 11343,
                                        "end": 11347,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 92
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 96
                                          },
                                          "identifierName": "word"
                                        },
                                        "name": "word"
                                      },
                                      "property": {
                                        "type": "NumericLiteral",
                                        "start": 11348,
                                        "end": 11349,
                                        "loc": {
                                          "start": {
                                            "line": 360,
                                            "column": 97
                                          },
                                          "end": {
                                            "line": 360,
                                            "column": 98
                                          }
                                        },
                                        "extra": {
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "value": 0
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11351,
                                      "end": 11362,
                                      "loc": {
                                        "start": {
                                          "line": 360,
                                          "column": 100
                                        },
                                        "end": {
                                          "line": 360,
                                          "column": 111
                                        },
                                        "identifierName": "toUpperCase"
                                      },
                                      "name": "toUpperCase"
                                    },
                                    "computed": false
                                  },
                                  "arguments": []
                                }
                              },
                              "operator": "+",
                              "right": {
                                "type": "CallExpression",
                                "start": 11367,
                                "end": 11380,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 116
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 129
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11367,
                                  "end": 11377,
                                  "loc": {
                                    "start": {
                                      "line": 360,
                                      "column": 116
                                    },
                                    "end": {
                                      "line": 360,
                                      "column": 126
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11367,
                                    "end": 11371,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 116
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 120
                                      },
                                      "identifierName": "word"
                                    },
                                    "name": "word"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11372,
                                    "end": 11377,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 121
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 126
                                      },
                                      "identifierName": "slice"
                                    },
                                    "name": "slice"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NumericLiteral",
                                    "start": 11378,
                                    "end": 11379,
                                    "loc": {
                                      "start": {
                                        "line": 360,
                                        "column": 127
                                      },
                                      "end": {
                                        "line": 360,
                                        "column": 128
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 1,
                                      "raw": "1"
                                    },
                                    "value": 1
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
                    "start": 11105,
                    "end": 11227,
                    "loc": {
                      "start": {
                        "line": 354,
                        "column": 2
                      },
                      "end": {
                        "line": 358,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 11578,
                "end": 11668,
                "loc": {
                  "start": {
                    "line": 369,
                    "column": 2
                  },
                  "end": {
                    "line": 371,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 11578,
                  "end": 11590,
                  "loc": {
                    "start": {
                      "line": 369,
                      "column": 2
                    },
                    "end": {
                      "line": 369,
                      "column": 14
                    },
                    "identifierName": "countInArray"
                  },
                  "name": "countInArray",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11591,
                    "end": 11596,
                    "loc": {
                      "start": {
                        "line": 369,
                        "column": 15
                      },
                      "end": {
                        "line": 369,
                        "column": 20
                      },
                      "identifierName": "array"
                    },
                    "name": "array"
                  },
                  {
                    "type": "Identifier",
                    "start": 11598,
                    "end": 11603,
                    "loc": {
                      "start": {
                        "line": 369,
                        "column": 22
                      },
                      "end": {
                        "line": 369,
                        "column": 27
                      },
                      "identifierName": "value"
                    },
                    "name": "value"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11604,
                  "end": 11668,
                  "loc": {
                    "start": {
                      "line": 369,
                      "column": 28
                    },
                    "end": {
                      "line": 371,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 11611,
                      "end": 11663,
                      "loc": {
                        "start": {
                          "line": 370,
                          "column": 4
                        },
                        "end": {
                          "line": 370,
                          "column": 56
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 11618,
                        "end": 11662,
                        "loc": {
                          "start": {
                            "line": 370,
                            "column": 11
                          },
                          "end": {
                            "line": 370,
                            "column": 55
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11618,
                          "end": 11630,
                          "loc": {
                            "start": {
                              "line": 370,
                              "column": 11
                            },
                            "end": {
                              "line": 370,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11618,
                            "end": 11623,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 11
                              },
                              "end": {
                                "line": 370,
                                "column": 16
                              },
                              "identifierName": "array"
                            },
                            "name": "array"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11624,
                            "end": 11630,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 17
                              },
                              "end": {
                                "line": 370,
                                "column": 23
                              },
                              "identifierName": "reduce"
                            },
                            "name": "reduce"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 11631,
                            "end": 11658,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 24
                              },
                              "end": {
                                "line": 370,
                                "column": 51
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 11632,
                                "end": 11633,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 26
                                  },
                                  "identifierName": "n"
                                },
                                "name": "n"
                              },
                              {
                                "type": "Identifier",
                                "start": 11635,
                                "end": 11636,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 29
                                  },
                                  "identifierName": "x"
                                },
                                "name": "x"
                              }
                            ],
                            "body": {
                              "type": "BinaryExpression",
                              "start": 11641,
                              "end": 11658,
                              "loc": {
                                "start": {
                                  "line": 370,
                                  "column": 34
                                },
                                "end": {
                                  "line": 370,
                                  "column": 51
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11641,
                                "end": 11642,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 35
                                  },
                                  "identifierName": "n"
                                },
                                "name": "n"
                              },
                              "operator": "+",
                              "right": {
                                "type": "BinaryExpression",
                                "start": 11646,
                                "end": 11657,
                                "loc": {
                                  "start": {
                                    "line": 370,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 370,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 11646,
                                  "end": 11647,
                                  "loc": {
                                    "start": {
                                      "line": 370,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 370,
                                      "column": 40
                                    },
                                    "identifierName": "x"
                                  },
                                  "name": "x"
                                },
                                "operator": "===",
                                "right": {
                                  "type": "Identifier",
                                  "start": 11652,
                                  "end": 11657,
                                  "loc": {
                                    "start": {
                                      "line": 370,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 370,
                                      "column": 50
                                    },
                                    "identifierName": "value"
                                  },
                                  "name": "value"
                                },
                                "extra": {
                                  "parenthesized": true,
                                  "parenStart": 11645
                                }
                              }
                            }
                          },
                          {
                            "type": "NumericLiteral",
                            "start": 11660,
                            "end": 11661,
                            "loc": {
                              "start": {
                                "line": 370,
                                "column": 53
                              },
                              "end": {
                                "line": 370,
                                "column": 54
                              }
                            },
                            "extra": {
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "value": 0
                          }
                        ]
                      }
                    }
                  ],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\r\n   * Counts the number of duplicates in a given array\r\n   * \r\n   * @param  {Array} array The haystack to search in\r\n   * @param  {string} value The needle to search for\r\n   ",
                    "start": 11394,
                    "end": 11574,
                    "loc": {
                      "start": {
                        "line": 363,
                        "column": 2
                      },
                      "end": {
                        "line": 368,
                        "column": 5
                      }
                    }
                  }
                ]
              }
            ]
          },
          "leadingComments": [
            {
              "type": "CommentBlock",
              "value": "*\r\n * Utility Service\r\n ",
              "start": 0,
              "end": 28,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 0
                },
                "end": {
                  "line": 3,
                  "column": 3
                }
              }
            }
          ],
          "__PseudoExport__": false,
          "trailingComments": []
        },
        "leadingComments": null
      }
    ],
    "directives": []
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": "*\r\n * Utility Service\r\n ",
      "start": 0,
      "end": 28,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Creates an instance of the Utility service\r\n   ",
      "start": 51,
      "end": 110,
      "loc": {
        "start": {
          "line": 5,
          "column": 2
        },
        "end": {
          "line": 7,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * @type {object} A simple-keyboard instance\r\n     ",
      "start": 156,
      "end": 218,
      "loc": {
        "start": {
          "line": 9,
          "column": 4
        },
        "end": {
          "line": 11,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * Bindings\r\n     ",
      "start": 285,
      "end": 314,
      "loc": {
        "start": {
          "line": 14,
          "column": 4
        },
        "end": {
          "line": 16,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
      "start": 817,
      "end": 995,
      "loc": {
        "start": {
          "line": 27,
          "column": 2
        },
        "end": {
          "line": 32,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Default button display labels\r\n   ",
      "start": 1432,
      "end": 1478,
      "loc": {
        "start": {
          "line": 44,
          "column": 2
        },
        "end": {
          "line": 46,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
      "start": 3054,
      "end": 3352,
      "loc": {
        "start": {
          "line": 110,
          "column": 2
        },
        "end": {
          "line": 116,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 3631,
      "end": 4025,
      "loc": {
        "start": {
          "line": 128,
          "column": 2
        },
        "end": {
          "line": 136,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
      "start": 5755,
      "end": 5997,
      "loc": {
        "start": {
          "line": 180,
          "column": 2
        },
        "end": {
          "line": 185,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
      "start": 6336,
      "end": 6644,
      "loc": {
        "start": {
          "line": 196,
          "column": 2
        },
        "end": {
          "line": 202,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 7062,
      "end": 7391,
      "loc": {
        "start": {
          "line": 216,
          "column": 2
        },
        "end": {
          "line": 223,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
      "start": 7644,
      "end": 7718,
      "loc": {
        "start": {
          "line": 232,
          "column": 6
        },
        "end": {
          "line": 234,
          "column": 9
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 7867,
      "end": 8164,
      "loc": {
        "start": {
          "line": 244,
          "column": 2
        },
        "end": {
          "line": 250,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
      "start": 8430,
      "end": 8610,
      "loc": {
        "start": {
          "line": 261,
          "column": 4
        },
        "end": {
          "line": 264,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
      "start": 9469,
      "end": 9700,
      "loc": {
        "start": {
          "line": 291,
          "column": 2
        },
        "end": {
          "line": 297,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n       * If pressing this button won't add more characters\r\n       * We exit out of this limiter function\r\n       ",
      "start": 9921,
      "end": 10042,
      "loc": {
        "start": {
          "line": 304,
          "column": 6
        },
        "end": {
          "line": 307,
          "column": 9
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n         * @type {boolean} Boolean value that shows whether maxLength has been reached\r\n         ",
      "start": 10298,
      "end": 10402,
      "loc": {
        "start": {
          "line": 319,
          "column": 8
        },
        "end": {
          "line": 321,
          "column": 11
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
      "start": 10966,
      "end": 11025,
      "loc": {
        "start": {
          "line": 347,
          "column": 2
        },
        "end": {
          "line": 349,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
      "start": 11105,
      "end": 11227,
      "loc": {
        "start": {
          "line": 354,
          "column": 2
        },
        "end": {
          "line": 358,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Counts the number of duplicates in a given array\r\n   * \r\n   * @param  {Array} array The haystack to search in\r\n   * @param  {string} value The needle to search for\r\n   ",
      "start": 11394,
      "end": 11574,
      "loc": {
        "start": {
          "line": 363,
          "column": 2
        },
        "end": {
          "line": 368,
          "column": 5
        }
      }
    }
  ],
  "tokens": [
    {
      "type": "CommentBlock",
      "value": "*\r\n * Utility Service\r\n ",
      "start": 0,
      "end": 28,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "class",
        "keyword": "class",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "class",
      "start": 30,
      "end": 35,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utilities",
      "start": 36,
      "end": 45,
      "loc": {
        "start": {
          "line": 4,
          "column": 6
        },
        "end": {
          "line": 4,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 46,
      "end": 47,
      "loc": {
        "start": {
          "line": 4,
          "column": 16
        },
        "end": {
          "line": 4,
          "column": 17
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Creates an instance of the Utility service\r\n   ",
      "start": 51,
      "end": 110,
      "loc": {
        "start": {
          "line": 5,
          "column": 2
        },
        "end": {
          "line": 7,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constructor",
      "start": 114,
      "end": 125,
      "loc": {
        "start": {
          "line": 8,
          "column": 2
        },
        "end": {
          "line": 8,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 125,
      "end": 126,
      "loc": {
        "start": {
          "line": 8,
          "column": 13
        },
        "end": {
          "line": 8,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 126,
      "end": 148,
      "loc": {
        "start": {
          "line": 8,
          "column": 14
        },
        "end": {
          "line": 8,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 148,
      "end": 149,
      "loc": {
        "start": {
          "line": 8,
          "column": 36
        },
        "end": {
          "line": 8,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 149,
      "end": 150,
      "loc": {
        "start": {
          "line": 8,
          "column": 37
        },
        "end": {
          "line": 8,
          "column": 38
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * @type {object} A simple-keyboard instance\r\n     ",
      "start": 156,
      "end": 218,
      "loc": {
        "start": {
          "line": 9,
          "column": 4
        },
        "end": {
          "line": 11,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 224,
      "end": 228,
      "loc": {
        "start": {
          "line": 12,
          "column": 4
        },
        "end": {
          "line": 12,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 228,
      "end": 229,
      "loc": {
        "start": {
          "line": 12,
          "column": 8
        },
        "end": {
          "line": 12,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 229,
      "end": 251,
      "loc": {
        "start": {
          "line": 12,
          "column": 9
        },
        "end": {
          "line": 12,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 252,
      "end": 253,
      "loc": {
        "start": {
          "line": 12,
          "column": 32
        },
        "end": {
          "line": 12,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 254,
      "end": 276,
      "loc": {
        "start": {
          "line": 12,
          "column": 34
        },
        "end": {
          "line": 12,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 276,
      "end": 277,
      "loc": {
        "start": {
          "line": 12,
          "column": 56
        },
        "end": {
          "line": 12,
          "column": 57
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * Bindings\r\n     ",
      "start": 285,
      "end": 314,
      "loc": {
        "start": {
          "line": 14,
          "column": 4
        },
        "end": {
          "line": 16,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 320,
      "end": 324,
      "loc": {
        "start": {
          "line": 17,
          "column": 4
        },
        "end": {
          "line": 17,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 324,
      "end": 325,
      "loc": {
        "start": {
          "line": 17,
          "column": 8
        },
        "end": {
          "line": 17,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonClass",
      "start": 325,
      "end": 339,
      "loc": {
        "start": {
          "line": 17,
          "column": 9
        },
        "end": {
          "line": 17,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 340,
      "end": 341,
      "loc": {
        "start": {
          "line": 17,
          "column": 24
        },
        "end": {
          "line": 17,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 342,
      "end": 346,
      "loc": {
        "start": {
          "line": 17,
          "column": 26
        },
        "end": {
          "line": 17,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 346,
      "end": 347,
      "loc": {
        "start": {
          "line": 17,
          "column": 30
        },
        "end": {
          "line": 17,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonClass",
      "start": 347,
      "end": 361,
      "loc": {
        "start": {
          "line": 17,
          "column": 31
        },
        "end": {
          "line": 17,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 361,
      "end": 362,
      "loc": {
        "start": {
          "line": 17,
          "column": 45
        },
        "end": {
          "line": 17,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 362,
      "end": 366,
      "loc": {
        "start": {
          "line": 17,
          "column": 46
        },
        "end": {
          "line": 17,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 366,
      "end": 367,
      "loc": {
        "start": {
          "line": 17,
          "column": 50
        },
        "end": {
          "line": 17,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 367,
      "end": 371,
      "loc": {
        "start": {
          "line": 17,
          "column": 51
        },
        "end": {
          "line": 17,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 371,
      "end": 372,
      "loc": {
        "start": {
          "line": 17,
          "column": 55
        },
        "end": {
          "line": 17,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 372,
      "end": 373,
      "loc": {
        "start": {
          "line": 17,
          "column": 56
        },
        "end": {
          "line": 17,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 379,
      "end": 383,
      "loc": {
        "start": {
          "line": 18,
          "column": 4
        },
        "end": {
          "line": 18,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 383,
      "end": 384,
      "loc": {
        "start": {
          "line": 18,
          "column": 8
        },
        "end": {
          "line": 18,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonDisplayName",
      "start": 384,
      "end": 404,
      "loc": {
        "start": {
          "line": 18,
          "column": 9
        },
        "end": {
          "line": 18,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 405,
      "end": 406,
      "loc": {
        "start": {
          "line": 18,
          "column": 30
        },
        "end": {
          "line": 18,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 407,
      "end": 411,
      "loc": {
        "start": {
          "line": 18,
          "column": 32
        },
        "end": {
          "line": 18,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 411,
      "end": 412,
      "loc": {
        "start": {
          "line": 18,
          "column": 36
        },
        "end": {
          "line": 18,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonDisplayName",
      "start": 412,
      "end": 432,
      "loc": {
        "start": {
          "line": 18,
          "column": 37
        },
        "end": {
          "line": 18,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 432,
      "end": 433,
      "loc": {
        "start": {
          "line": 18,
          "column": 57
        },
        "end": {
          "line": 18,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 433,
      "end": 437,
      "loc": {
        "start": {
          "line": 18,
          "column": 58
        },
        "end": {
          "line": 18,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 437,
      "end": 438,
      "loc": {
        "start": {
          "line": 18,
          "column": 62
        },
        "end": {
          "line": 18,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 438,
      "end": 442,
      "loc": {
        "start": {
          "line": 18,
          "column": 63
        },
        "end": {
          "line": 18,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 442,
      "end": 443,
      "loc": {
        "start": {
          "line": 18,
          "column": 67
        },
        "end": {
          "line": 18,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 443,
      "end": 444,
      "loc": {
        "start": {
          "line": 18,
          "column": 68
        },
        "end": {
          "line": 18,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 450,
      "end": 454,
      "loc": {
        "start": {
          "line": 19,
          "column": 4
        },
        "end": {
          "line": 19,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 454,
      "end": 455,
      "loc": {
        "start": {
          "line": 19,
          "column": 8
        },
        "end": {
          "line": 19,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getUpdatedInput",
      "start": 455,
      "end": 470,
      "loc": {
        "start": {
          "line": 19,
          "column": 9
        },
        "end": {
          "line": 19,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 471,
      "end": 472,
      "loc": {
        "start": {
          "line": 19,
          "column": 25
        },
        "end": {
          "line": 19,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 473,
      "end": 477,
      "loc": {
        "start": {
          "line": 19,
          "column": 27
        },
        "end": {
          "line": 19,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 477,
      "end": 478,
      "loc": {
        "start": {
          "line": 19,
          "column": 31
        },
        "end": {
          "line": 19,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getUpdatedInput",
      "start": 478,
      "end": 493,
      "loc": {
        "start": {
          "line": 19,
          "column": 32
        },
        "end": {
          "line": 19,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 493,
      "end": 494,
      "loc": {
        "start": {
          "line": 19,
          "column": 47
        },
        "end": {
          "line": 19,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 494,
      "end": 498,
      "loc": {
        "start": {
          "line": 19,
          "column": 48
        },
        "end": {
          "line": 19,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 498,
      "end": 499,
      "loc": {
        "start": {
          "line": 19,
          "column": 52
        },
        "end": {
          "line": 19,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 499,
      "end": 503,
      "loc": {
        "start": {
          "line": 19,
          "column": 53
        },
        "end": {
          "line": 19,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 503,
      "end": 504,
      "loc": {
        "start": {
          "line": 19,
          "column": 57
        },
        "end": {
          "line": 19,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 504,
      "end": 505,
      "loc": {
        "start": {
          "line": 19,
          "column": 58
        },
        "end": {
          "line": 19,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 511,
      "end": 515,
      "loc": {
        "start": {
          "line": 20,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 515,
      "end": 516,
      "loc": {
        "start": {
          "line": 20,
          "column": 8
        },
        "end": {
          "line": 20,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 516,
      "end": 530,
      "loc": {
        "start": {
          "line": 20,
          "column": 9
        },
        "end": {
          "line": 20,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 531,
      "end": 532,
      "loc": {
        "start": {
          "line": 20,
          "column": 24
        },
        "end": {
          "line": 20,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 533,
      "end": 537,
      "loc": {
        "start": {
          "line": 20,
          "column": 26
        },
        "end": {
          "line": 20,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 537,
      "end": 538,
      "loc": {
        "start": {
          "line": 20,
          "column": 30
        },
        "end": {
          "line": 20,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 538,
      "end": 552,
      "loc": {
        "start": {
          "line": 20,
          "column": 31
        },
        "end": {
          "line": 20,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 552,
      "end": 553,
      "loc": {
        "start": {
          "line": 20,
          "column": 45
        },
        "end": {
          "line": 20,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 553,
      "end": 557,
      "loc": {
        "start": {
          "line": 20,
          "column": 46
        },
        "end": {
          "line": 20,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 557,
      "end": 558,
      "loc": {
        "start": {
          "line": 20,
          "column": 50
        },
        "end": {
          "line": 20,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 558,
      "end": 562,
      "loc": {
        "start": {
          "line": 20,
          "column": 51
        },
        "end": {
          "line": 20,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 562,
      "end": 563,
      "loc": {
        "start": {
          "line": 20,
          "column": 55
        },
        "end": {
          "line": 20,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 563,
      "end": 564,
      "loc": {
        "start": {
          "line": 20,
          "column": 56
        },
        "end": {
          "line": 20,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 570,
      "end": 574,
      "loc": {
        "start": {
          "line": 21,
          "column": 4
        },
        "end": {
          "line": 21,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 574,
      "end": 575,
      "loc": {
        "start": {
          "line": 21,
          "column": 8
        },
        "end": {
          "line": 21,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPosAction",
      "start": 575,
      "end": 595,
      "loc": {
        "start": {
          "line": 21,
          "column": 9
        },
        "end": {
          "line": 21,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 596,
      "end": 597,
      "loc": {
        "start": {
          "line": 21,
          "column": 30
        },
        "end": {
          "line": 21,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 598,
      "end": 602,
      "loc": {
        "start": {
          "line": 21,
          "column": 32
        },
        "end": {
          "line": 21,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 602,
      "end": 603,
      "loc": {
        "start": {
          "line": 21,
          "column": 36
        },
        "end": {
          "line": 21,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPosAction",
      "start": 603,
      "end": 623,
      "loc": {
        "start": {
          "line": 21,
          "column": 37
        },
        "end": {
          "line": 21,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 623,
      "end": 624,
      "loc": {
        "start": {
          "line": 21,
          "column": 57
        },
        "end": {
          "line": 21,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 624,
      "end": 628,
      "loc": {
        "start": {
          "line": 21,
          "column": 58
        },
        "end": {
          "line": 21,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 628,
      "end": 629,
      "loc": {
        "start": {
          "line": 21,
          "column": 62
        },
        "end": {
          "line": 21,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 629,
      "end": 633,
      "loc": {
        "start": {
          "line": 21,
          "column": 63
        },
        "end": {
          "line": 21,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 633,
      "end": 634,
      "loc": {
        "start": {
          "line": 21,
          "column": 67
        },
        "end": {
          "line": 21,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 634,
      "end": 635,
      "loc": {
        "start": {
          "line": 21,
          "column": 68
        },
        "end": {
          "line": 21,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 641,
      "end": 645,
      "loc": {
        "start": {
          "line": 22,
          "column": 4
        },
        "end": {
          "line": 22,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 645,
      "end": 646,
      "loc": {
        "start": {
          "line": 22,
          "column": 8
        },
        "end": {
          "line": 22,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isMaxLengthReached",
      "start": 646,
      "end": 664,
      "loc": {
        "start": {
          "line": 22,
          "column": 9
        },
        "end": {
          "line": 22,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 665,
      "end": 666,
      "loc": {
        "start": {
          "line": 22,
          "column": 28
        },
        "end": {
          "line": 22,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 667,
      "end": 671,
      "loc": {
        "start": {
          "line": 22,
          "column": 30
        },
        "end": {
          "line": 22,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 671,
      "end": 672,
      "loc": {
        "start": {
          "line": 22,
          "column": 34
        },
        "end": {
          "line": 22,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isMaxLengthReached",
      "start": 672,
      "end": 690,
      "loc": {
        "start": {
          "line": 22,
          "column": 35
        },
        "end": {
          "line": 22,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 690,
      "end": 691,
      "loc": {
        "start": {
          "line": 22,
          "column": 53
        },
        "end": {
          "line": 22,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 691,
      "end": 695,
      "loc": {
        "start": {
          "line": 22,
          "column": 54
        },
        "end": {
          "line": 22,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 695,
      "end": 696,
      "loc": {
        "start": {
          "line": 22,
          "column": 58
        },
        "end": {
          "line": 22,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 696,
      "end": 700,
      "loc": {
        "start": {
          "line": 22,
          "column": 59
        },
        "end": {
          "line": 22,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 700,
      "end": 701,
      "loc": {
        "start": {
          "line": 22,
          "column": 63
        },
        "end": {
          "line": 22,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 701,
      "end": 702,
      "loc": {
        "start": {
          "line": 22,
          "column": 64
        },
        "end": {
          "line": 22,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 708,
      "end": 712,
      "loc": {
        "start": {
          "line": 23,
          "column": 4
        },
        "end": {
          "line": 23,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 712,
      "end": 713,
      "loc": {
        "start": {
          "line": 23,
          "column": 8
        },
        "end": {
          "line": 23,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "camelCase",
      "start": 713,
      "end": 722,
      "loc": {
        "start": {
          "line": 23,
          "column": 9
        },
        "end": {
          "line": 23,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 723,
      "end": 724,
      "loc": {
        "start": {
          "line": 23,
          "column": 19
        },
        "end": {
          "line": 23,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 725,
      "end": 729,
      "loc": {
        "start": {
          "line": 23,
          "column": 21
        },
        "end": {
          "line": 23,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 729,
      "end": 730,
      "loc": {
        "start": {
          "line": 23,
          "column": 25
        },
        "end": {
          "line": 23,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "camelCase",
      "start": 730,
      "end": 739,
      "loc": {
        "start": {
          "line": 23,
          "column": 26
        },
        "end": {
          "line": 23,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 739,
      "end": 740,
      "loc": {
        "start": {
          "line": 23,
          "column": 35
        },
        "end": {
          "line": 23,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 740,
      "end": 744,
      "loc": {
        "start": {
          "line": 23,
          "column": 36
        },
        "end": {
          "line": 23,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 744,
      "end": 745,
      "loc": {
        "start": {
          "line": 23,
          "column": 40
        },
        "end": {
          "line": 23,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 745,
      "end": 749,
      "loc": {
        "start": {
          "line": 23,
          "column": 41
        },
        "end": {
          "line": 23,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 749,
      "end": 750,
      "loc": {
        "start": {
          "line": 23,
          "column": 45
        },
        "end": {
          "line": 23,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 750,
      "end": 751,
      "loc": {
        "start": {
          "line": 23,
          "column": 46
        },
        "end": {
          "line": 23,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 757,
      "end": 761,
      "loc": {
        "start": {
          "line": 24,
          "column": 4
        },
        "end": {
          "line": 24,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 761,
      "end": 762,
      "loc": {
        "start": {
          "line": 24,
          "column": 8
        },
        "end": {
          "line": 24,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "countInArray",
      "start": 762,
      "end": 774,
      "loc": {
        "start": {
          "line": 24,
          "column": 9
        },
        "end": {
          "line": 24,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 775,
      "end": 776,
      "loc": {
        "start": {
          "line": 24,
          "column": 22
        },
        "end": {
          "line": 24,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 777,
      "end": 781,
      "loc": {
        "start": {
          "line": 24,
          "column": 24
        },
        "end": {
          "line": 24,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 781,
      "end": 782,
      "loc": {
        "start": {
          "line": 24,
          "column": 28
        },
        "end": {
          "line": 24,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "countInArray",
      "start": 782,
      "end": 794,
      "loc": {
        "start": {
          "line": 24,
          "column": 29
        },
        "end": {
          "line": 24,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 794,
      "end": 795,
      "loc": {
        "start": {
          "line": 24,
          "column": 41
        },
        "end": {
          "line": 24,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 795,
      "end": 799,
      "loc": {
        "start": {
          "line": 24,
          "column": 42
        },
        "end": {
          "line": 24,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 799,
      "end": 800,
      "loc": {
        "start": {
          "line": 24,
          "column": 46
        },
        "end": {
          "line": 24,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 800,
      "end": 804,
      "loc": {
        "start": {
          "line": 24,
          "column": 47
        },
        "end": {
          "line": 24,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 804,
      "end": 805,
      "loc": {
        "start": {
          "line": 24,
          "column": 51
        },
        "end": {
          "line": 24,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 805,
      "end": 806,
      "loc": {
        "start": {
          "line": 24,
          "column": 52
        },
        "end": {
          "line": 24,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 810,
      "end": 811,
      "loc": {
        "start": {
          "line": 25,
          "column": 2
        },
        "end": {
          "line": 25,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Adds default classes to a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @return {string} The classes to be added to the button\r\n   ",
      "start": 817,
      "end": 995,
      "loc": {
        "start": {
          "line": 27,
          "column": 2
        },
        "end": {
          "line": 32,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonClass",
      "start": 999,
      "end": 1013,
      "loc": {
        "start": {
          "line": 33,
          "column": 2
        },
        "end": {
          "line": 33,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1013,
      "end": 1014,
      "loc": {
        "start": {
          "line": 33,
          "column": 16
        },
        "end": {
          "line": 33,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 1014,
      "end": 1020,
      "loc": {
        "start": {
          "line": 33,
          "column": 17
        },
        "end": {
          "line": 33,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1020,
      "end": 1021,
      "loc": {
        "start": {
          "line": 33,
          "column": 23
        },
        "end": {
          "line": 33,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1021,
      "end": 1022,
      "loc": {
        "start": {
          "line": 33,
          "column": 24
        },
        "end": {
          "line": 33,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1028,
      "end": 1031,
      "loc": {
        "start": {
          "line": 34,
          "column": 4
        },
        "end": {
          "line": 34,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonTypeClass",
      "start": 1032,
      "end": 1047,
      "loc": {
        "start": {
          "line": 34,
          "column": 8
        },
        "end": {
          "line": 34,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1048,
      "end": 1049,
      "loc": {
        "start": {
          "line": 34,
          "column": 24
        },
        "end": {
          "line": 34,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1050,
      "end": 1051,
      "loc": {
        "start": {
          "line": 34,
          "column": 26
        },
        "end": {
          "line": 34,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 1051,
      "end": 1057,
      "loc": {
        "start": {
          "line": 34,
          "column": 27
        },
        "end": {
          "line": 34,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1057,
      "end": 1058,
      "loc": {
        "start": {
          "line": 34,
          "column": 33
        },
        "end": {
          "line": 34,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "includes",
      "start": 1058,
      "end": 1066,
      "loc": {
        "start": {
          "line": 34,
          "column": 34
        },
        "end": {
          "line": 34,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1066,
      "end": 1067,
      "loc": {
        "start": {
          "line": 34,
          "column": 42
        },
        "end": {
          "line": 34,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{",
      "start": 1067,
      "end": 1070,
      "loc": {
        "start": {
          "line": 34,
          "column": 43
        },
        "end": {
          "line": 34,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1070,
      "end": 1071,
      "loc": {
        "start": {
          "line": 34,
          "column": 46
        },
        "end": {
          "line": 34,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 1072,
      "end": 1074,
      "loc": {
        "start": {
          "line": 34,
          "column": 48
        },
        "end": {
          "line": 34,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 1075,
      "end": 1081,
      "loc": {
        "start": {
          "line": 34,
          "column": 51
        },
        "end": {
          "line": 34,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1081,
      "end": 1082,
      "loc": {
        "start": {
          "line": 34,
          "column": 57
        },
        "end": {
          "line": 34,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "includes",
      "start": 1082,
      "end": 1090,
      "loc": {
        "start": {
          "line": 34,
          "column": 58
        },
        "end": {
          "line": 34,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1090,
      "end": 1091,
      "loc": {
        "start": {
          "line": 34,
          "column": 66
        },
        "end": {
          "line": 34,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "}",
      "start": 1091,
      "end": 1094,
      "loc": {
        "start": {
          "line": 34,
          "column": 67
        },
        "end": {
          "line": 34,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1094,
      "end": 1095,
      "loc": {
        "start": {
          "line": 34,
          "column": 70
        },
        "end": {
          "line": 34,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 1096,
      "end": 1098,
      "loc": {
        "start": {
          "line": 34,
          "column": 72
        },
        "end": {
          "line": 34,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 1099,
      "end": 1105,
      "loc": {
        "start": {
          "line": 34,
          "column": 75
        },
        "end": {
          "line": 34,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 1106,
      "end": 1109,
      "loc": {
        "start": {
          "line": 34,
          "column": 82
        },
        "end": {
          "line": 34,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{//}",
      "start": 1110,
      "end": 1116,
      "loc": {
        "start": {
          "line": 34,
          "column": 86
        },
        "end": {
          "line": 34,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1116,
      "end": 1117,
      "loc": {
        "start": {
          "line": 34,
          "column": 92
        },
        "end": {
          "line": 34,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1118,
      "end": 1119,
      "loc": {
        "start": {
          "line": 34,
          "column": 94
        },
        "end": {
          "line": 34,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "functionBtn",
      "start": 1120,
      "end": 1133,
      "loc": {
        "start": {
          "line": 34,
          "column": 96
        },
        "end": {
          "line": 34,
          "column": 109
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1134,
      "end": 1135,
      "loc": {
        "start": {
          "line": 34,
          "column": 110
        },
        "end": {
          "line": 34,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "standardBtn",
      "start": 1136,
      "end": 1149,
      "loc": {
        "start": {
          "line": 34,
          "column": 112
        },
        "end": {
          "line": 34,
          "column": 125
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1149,
      "end": 1150,
      "loc": {
        "start": {
          "line": 34,
          "column": 125
        },
        "end": {
          "line": 34,
          "column": 126
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1156,
      "end": 1159,
      "loc": {
        "start": {
          "line": 35,
          "column": 4
        },
        "end": {
          "line": 35,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonWithoutBraces",
      "start": 1160,
      "end": 1179,
      "loc": {
        "start": {
          "line": 35,
          "column": 8
        },
        "end": {
          "line": 35,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1180,
      "end": 1181,
      "loc": {
        "start": {
          "line": 35,
          "column": 28
        },
        "end": {
          "line": 35,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 1182,
      "end": 1188,
      "loc": {
        "start": {
          "line": 35,
          "column": 30
        },
        "end": {
          "line": 35,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1188,
      "end": 1189,
      "loc": {
        "start": {
          "line": 35,
          "column": 36
        },
        "end": {
          "line": 35,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "replace",
      "start": 1189,
      "end": 1196,
      "loc": {
        "start": {
          "line": 35,
          "column": 37
        },
        "end": {
          "line": 35,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1196,
      "end": 1197,
      "loc": {
        "start": {
          "line": 35,
          "column": 44
        },
        "end": {
          "line": 35,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{",
      "start": 1197,
      "end": 1200,
      "loc": {
        "start": {
          "line": 35,
          "column": 45
        },
        "end": {
          "line": 35,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1200,
      "end": 1201,
      "loc": {
        "start": {
          "line": 35,
          "column": 48
        },
        "end": {
          "line": 35,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1202,
      "end": 1204,
      "loc": {
        "start": {
          "line": 35,
          "column": 50
        },
        "end": {
          "line": 35,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1204,
      "end": 1205,
      "loc": {
        "start": {
          "line": 35,
          "column": 52
        },
        "end": {
          "line": 35,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1205,
      "end": 1206,
      "loc": {
        "start": {
          "line": 35,
          "column": 53
        },
        "end": {
          "line": 35,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "replace",
      "start": 1206,
      "end": 1213,
      "loc": {
        "start": {
          "line": 35,
          "column": 54
        },
        "end": {
          "line": 35,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1213,
      "end": 1214,
      "loc": {
        "start": {
          "line": 35,
          "column": 61
        },
        "end": {
          "line": 35,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "}",
      "start": 1214,
      "end": 1217,
      "loc": {
        "start": {
          "line": 35,
          "column": 62
        },
        "end": {
          "line": 35,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1217,
      "end": 1218,
      "loc": {
        "start": {
          "line": 35,
          "column": 65
        },
        "end": {
          "line": 35,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1219,
      "end": 1221,
      "loc": {
        "start": {
          "line": 35,
          "column": 67
        },
        "end": {
          "line": 35,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1221,
      "end": 1222,
      "loc": {
        "start": {
          "line": 35,
          "column": 69
        },
        "end": {
          "line": 35,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1222,
      "end": 1223,
      "loc": {
        "start": {
          "line": 35,
          "column": 70
        },
        "end": {
          "line": 35,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1229,
      "end": 1232,
      "loc": {
        "start": {
          "line": 36,
          "column": 4
        },
        "end": {
          "line": 36,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonNormalized",
      "start": 1233,
      "end": 1249,
      "loc": {
        "start": {
          "line": 36,
          "column": 8
        },
        "end": {
          "line": 36,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1250,
      "end": 1251,
      "loc": {
        "start": {
          "line": 36,
          "column": 25
        },
        "end": {
          "line": 36,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1252,
      "end": 1254,
      "loc": {
        "start": {
          "line": 36,
          "column": 27
        },
        "end": {
          "line": 36,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1254,
      "end": 1255,
      "loc": {
        "start": {
          "line": 36,
          "column": 29
        },
        "end": {
          "line": 36,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1263,
      "end": 1265,
      "loc": {
        "start": {
          "line": 38,
          "column": 4
        },
        "end": {
          "line": 38,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1265,
      "end": 1266,
      "loc": {
        "start": {
          "line": 38,
          "column": 6
        },
        "end": {
          "line": 38,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonTypeClass",
      "start": 1266,
      "end": 1281,
      "loc": {
        "start": {
          "line": 38,
          "column": 7
        },
        "end": {
          "line": 38,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 1282,
      "end": 1285,
      "loc": {
        "start": {
          "line": 38,
          "column": 23
        },
        "end": {
          "line": 38,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "standardBtn",
      "start": 1286,
      "end": 1299,
      "loc": {
        "start": {
          "line": 38,
          "column": 27
        },
        "end": {
          "line": 38,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1299,
      "end": 1300,
      "loc": {
        "start": {
          "line": 38,
          "column": 40
        },
        "end": {
          "line": 38,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonNormalized",
      "start": 1308,
      "end": 1324,
      "loc": {
        "start": {
          "line": 39,
          "column": 6
        },
        "end": {
          "line": 39,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1325,
      "end": 1326,
      "loc": {
        "start": {
          "line": 39,
          "column": 23
        },
        "end": {
          "line": 39,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1327,
      "end": 1328,
      "loc": {
        "start": {
          "line": 39,
          "column": 25
        },
        "end": {
          "line": 39,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " hg-button-",
      "start": 1328,
      "end": 1339,
      "loc": {
        "start": {
          "line": 39,
          "column": 26
        },
        "end": {
          "line": 39,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1339,
      "end": 1341,
      "loc": {
        "start": {
          "line": 39,
          "column": 37
        },
        "end": {
          "line": 39,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonWithoutBraces",
      "start": 1341,
      "end": 1360,
      "loc": {
        "start": {
          "line": 39,
          "column": 39
        },
        "end": {
          "line": 39,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1360,
      "end": 1361,
      "loc": {
        "start": {
          "line": 39,
          "column": 58
        },
        "end": {
          "line": 39,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1361,
      "end": 1361,
      "loc": {
        "start": {
          "line": 39,
          "column": 59
        },
        "end": {
          "line": 39,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1361,
      "end": 1362,
      "loc": {
        "start": {
          "line": 39,
          "column": 59
        },
        "end": {
          "line": 39,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1362,
      "end": 1363,
      "loc": {
        "start": {
          "line": 39,
          "column": 60
        },
        "end": {
          "line": 39,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1371,
      "end": 1377,
      "loc": {
        "start": {
          "line": 41,
          "column": 4
        },
        "end": {
          "line": 41,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1378,
      "end": 1379,
      "loc": {
        "start": {
          "line": 41,
          "column": 11
        },
        "end": {
          "line": 41,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hg-",
      "start": 1379,
      "end": 1382,
      "loc": {
        "start": {
          "line": 41,
          "column": 12
        },
        "end": {
          "line": 41,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1382,
      "end": 1384,
      "loc": {
        "start": {
          "line": 41,
          "column": 15
        },
        "end": {
          "line": 41,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonTypeClass",
      "start": 1384,
      "end": 1399,
      "loc": {
        "start": {
          "line": 41,
          "column": 17
        },
        "end": {
          "line": 41,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1399,
      "end": 1400,
      "loc": {
        "start": {
          "line": 41,
          "column": 32
        },
        "end": {
          "line": 41,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1400,
      "end": 1400,
      "loc": {
        "start": {
          "line": 41,
          "column": 33
        },
        "end": {
          "line": 41,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1400,
      "end": 1402,
      "loc": {
        "start": {
          "line": 41,
          "column": 33
        },
        "end": {
          "line": 41,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "buttonNormalized",
      "start": 1402,
      "end": 1418,
      "loc": {
        "start": {
          "line": 41,
          "column": 35
        },
        "end": {
          "line": 41,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1418,
      "end": 1419,
      "loc": {
        "start": {
          "line": 41,
          "column": 51
        },
        "end": {
          "line": 41,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 1419,
      "end": 1419,
      "loc": {
        "start": {
          "line": 41,
          "column": 52
        },
        "end": {
          "line": 41,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1419,
      "end": 1420,
      "loc": {
        "start": {
          "line": 41,
          "column": 52
        },
        "end": {
          "line": 41,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1420,
      "end": 1421,
      "loc": {
        "start": {
          "line": 41,
          "column": 53
        },
        "end": {
          "line": 41,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1425,
      "end": 1426,
      "loc": {
        "start": {
          "line": 42,
          "column": 2
        },
        "end": {
          "line": 42,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Default button display labels\r\n   ",
      "start": 1432,
      "end": 1478,
      "loc": {
        "start": {
          "line": 44,
          "column": 2
        },
        "end": {
          "line": 46,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getDefaultDiplay",
      "start": 1482,
      "end": 1498,
      "loc": {
        "start": {
          "line": 47,
          "column": 2
        },
        "end": {
          "line": 47,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1498,
      "end": 1499,
      "loc": {
        "start": {
          "line": 47,
          "column": 18
        },
        "end": {
          "line": 47,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1499,
      "end": 1500,
      "loc": {
        "start": {
          "line": 47,
          "column": 19
        },
        "end": {
          "line": 47,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1500,
      "end": 1501,
      "loc": {
        "start": {
          "line": 47,
          "column": 20
        },
        "end": {
          "line": 47,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1507,
      "end": 1513,
      "loc": {
        "start": {
          "line": 48,
          "column": 4
        },
        "end": {
          "line": 48,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1514,
      "end": 1515,
      "loc": {
        "start": {
          "line": 48,
          "column": 11
        },
        "end": {
          "line": 48,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{bksp}",
      "start": 1523,
      "end": 1531,
      "loc": {
        "start": {
          "line": 49,
          "column": 6
        },
        "end": {
          "line": 49,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1531,
      "end": 1532,
      "loc": {
        "start": {
          "line": 49,
          "column": 14
        },
        "end": {
          "line": 49,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "backspace",
      "start": 1533,
      "end": 1544,
      "loc": {
        "start": {
          "line": 49,
          "column": 16
        },
        "end": {
          "line": 49,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1544,
      "end": 1545,
      "loc": {
        "start": {
          "line": 49,
          "column": 27
        },
        "end": {
          "line": 49,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{backspace}",
      "start": 1553,
      "end": 1566,
      "loc": {
        "start": {
          "line": 50,
          "column": 6
        },
        "end": {
          "line": 50,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1566,
      "end": 1567,
      "loc": {
        "start": {
          "line": 50,
          "column": 19
        },
        "end": {
          "line": 50,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "backspace",
      "start": 1568,
      "end": 1579,
      "loc": {
        "start": {
          "line": 50,
          "column": 21
        },
        "end": {
          "line": 50,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1579,
      "end": 1580,
      "loc": {
        "start": {
          "line": 50,
          "column": 32
        },
        "end": {
          "line": 50,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{enter}",
      "start": 1588,
      "end": 1597,
      "loc": {
        "start": {
          "line": 51,
          "column": 6
        },
        "end": {
          "line": 51,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1597,
      "end": 1598,
      "loc": {
        "start": {
          "line": 51,
          "column": 15
        },
        "end": {
          "line": 51,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "< enter",
      "start": 1599,
      "end": 1608,
      "loc": {
        "start": {
          "line": 51,
          "column": 17
        },
        "end": {
          "line": 51,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1608,
      "end": 1609,
      "loc": {
        "start": {
          "line": 51,
          "column": 26
        },
        "end": {
          "line": 51,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{shift}",
      "start": 1617,
      "end": 1626,
      "loc": {
        "start": {
          "line": 52,
          "column": 6
        },
        "end": {
          "line": 52,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1626,
      "end": 1627,
      "loc": {
        "start": {
          "line": 52,
          "column": 15
        },
        "end": {
          "line": 52,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "shift",
      "start": 1628,
      "end": 1635,
      "loc": {
        "start": {
          "line": 52,
          "column": 17
        },
        "end": {
          "line": 52,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1635,
      "end": 1636,
      "loc": {
        "start": {
          "line": 52,
          "column": 24
        },
        "end": {
          "line": 52,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{shiftleft}",
      "start": 1644,
      "end": 1657,
      "loc": {
        "start": {
          "line": 53,
          "column": 6
        },
        "end": {
          "line": 53,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1657,
      "end": 1658,
      "loc": {
        "start": {
          "line": 53,
          "column": 19
        },
        "end": {
          "line": 53,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "shift",
      "start": 1659,
      "end": 1666,
      "loc": {
        "start": {
          "line": 53,
          "column": 21
        },
        "end": {
          "line": 53,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1666,
      "end": 1667,
      "loc": {
        "start": {
          "line": 53,
          "column": 28
        },
        "end": {
          "line": 53,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{shiftright}",
      "start": 1675,
      "end": 1689,
      "loc": {
        "start": {
          "line": 54,
          "column": 6
        },
        "end": {
          "line": 54,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1689,
      "end": 1690,
      "loc": {
        "start": {
          "line": 54,
          "column": 20
        },
        "end": {
          "line": 54,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "shift",
      "start": 1691,
      "end": 1698,
      "loc": {
        "start": {
          "line": 54,
          "column": 22
        },
        "end": {
          "line": 54,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1698,
      "end": 1699,
      "loc": {
        "start": {
          "line": 54,
          "column": 29
        },
        "end": {
          "line": 54,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{alt}",
      "start": 1707,
      "end": 1714,
      "loc": {
        "start": {
          "line": 55,
          "column": 6
        },
        "end": {
          "line": 55,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1714,
      "end": 1715,
      "loc": {
        "start": {
          "line": 55,
          "column": 13
        },
        "end": {
          "line": 55,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "alt",
      "start": 1716,
      "end": 1721,
      "loc": {
        "start": {
          "line": 55,
          "column": 15
        },
        "end": {
          "line": 55,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1721,
      "end": 1722,
      "loc": {
        "start": {
          "line": 55,
          "column": 20
        },
        "end": {
          "line": 55,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{s}",
      "start": 1730,
      "end": 1735,
      "loc": {
        "start": {
          "line": 56,
          "column": 6
        },
        "end": {
          "line": 56,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1735,
      "end": 1736,
      "loc": {
        "start": {
          "line": 56,
          "column": 11
        },
        "end": {
          "line": 56,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "shift",
      "start": 1737,
      "end": 1744,
      "loc": {
        "start": {
          "line": 56,
          "column": 13
        },
        "end": {
          "line": 56,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1744,
      "end": 1745,
      "loc": {
        "start": {
          "line": 56,
          "column": 20
        },
        "end": {
          "line": 56,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{tab}",
      "start": 1753,
      "end": 1760,
      "loc": {
        "start": {
          "line": 57,
          "column": 6
        },
        "end": {
          "line": 57,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1760,
      "end": 1761,
      "loc": {
        "start": {
          "line": 57,
          "column": 13
        },
        "end": {
          "line": 57,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "tab",
      "start": 1762,
      "end": 1767,
      "loc": {
        "start": {
          "line": 57,
          "column": 15
        },
        "end": {
          "line": 57,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1767,
      "end": 1768,
      "loc": {
        "start": {
          "line": 57,
          "column": 20
        },
        "end": {
          "line": 57,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{lock}",
      "start": 1776,
      "end": 1784,
      "loc": {
        "start": {
          "line": 58,
          "column": 6
        },
        "end": {
          "line": 58,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1784,
      "end": 1785,
      "loc": {
        "start": {
          "line": 58,
          "column": 14
        },
        "end": {
          "line": 58,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "caps",
      "start": 1786,
      "end": 1792,
      "loc": {
        "start": {
          "line": 58,
          "column": 16
        },
        "end": {
          "line": 58,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1792,
      "end": 1793,
      "loc": {
        "start": {
          "line": 58,
          "column": 22
        },
        "end": {
          "line": 58,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{capslock}",
      "start": 1801,
      "end": 1813,
      "loc": {
        "start": {
          "line": 59,
          "column": 6
        },
        "end": {
          "line": 59,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1813,
      "end": 1814,
      "loc": {
        "start": {
          "line": 59,
          "column": 18
        },
        "end": {
          "line": 59,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "caps",
      "start": 1815,
      "end": 1821,
      "loc": {
        "start": {
          "line": 59,
          "column": 20
        },
        "end": {
          "line": 59,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1821,
      "end": 1822,
      "loc": {
        "start": {
          "line": 59,
          "column": 26
        },
        "end": {
          "line": 59,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{accept}",
      "start": 1830,
      "end": 1840,
      "loc": {
        "start": {
          "line": 60,
          "column": 6
        },
        "end": {
          "line": 60,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1840,
      "end": 1841,
      "loc": {
        "start": {
          "line": 60,
          "column": 16
        },
        "end": {
          "line": 60,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Submit",
      "start": 1842,
      "end": 1850,
      "loc": {
        "start": {
          "line": 60,
          "column": 18
        },
        "end": {
          "line": 60,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1850,
      "end": 1851,
      "loc": {
        "start": {
          "line": 60,
          "column": 26
        },
        "end": {
          "line": 60,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{space}",
      "start": 1859,
      "end": 1868,
      "loc": {
        "start": {
          "line": 61,
          "column": 6
        },
        "end": {
          "line": 61,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1868,
      "end": 1869,
      "loc": {
        "start": {
          "line": 61,
          "column": 15
        },
        "end": {
          "line": 61,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 1870,
      "end": 1873,
      "loc": {
        "start": {
          "line": 61,
          "column": 17
        },
        "end": {
          "line": 61,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1873,
      "end": 1874,
      "loc": {
        "start": {
          "line": 61,
          "column": 20
        },
        "end": {
          "line": 61,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{//}",
      "start": 1882,
      "end": 1888,
      "loc": {
        "start": {
          "line": 62,
          "column": 6
        },
        "end": {
          "line": 62,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1888,
      "end": 1889,
      "loc": {
        "start": {
          "line": 62,
          "column": 12
        },
        "end": {
          "line": 62,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 1890,
      "end": 1893,
      "loc": {
        "start": {
          "line": 62,
          "column": 14
        },
        "end": {
          "line": 62,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1893,
      "end": 1894,
      "loc": {
        "start": {
          "line": 62,
          "column": 17
        },
        "end": {
          "line": 62,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{esc}",
      "start": 1902,
      "end": 1909,
      "loc": {
        "start": {
          "line": 63,
          "column": 6
        },
        "end": {
          "line": 63,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1909,
      "end": 1910,
      "loc": {
        "start": {
          "line": 63,
          "column": 13
        },
        "end": {
          "line": 63,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "esc",
      "start": 1911,
      "end": 1916,
      "loc": {
        "start": {
          "line": 63,
          "column": 15
        },
        "end": {
          "line": 63,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1916,
      "end": 1917,
      "loc": {
        "start": {
          "line": 63,
          "column": 20
        },
        "end": {
          "line": 63,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{escape}",
      "start": 1925,
      "end": 1935,
      "loc": {
        "start": {
          "line": 64,
          "column": 6
        },
        "end": {
          "line": 64,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1935,
      "end": 1936,
      "loc": {
        "start": {
          "line": 64,
          "column": 16
        },
        "end": {
          "line": 64,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "esc",
      "start": 1937,
      "end": 1942,
      "loc": {
        "start": {
          "line": 64,
          "column": 18
        },
        "end": {
          "line": 64,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1942,
      "end": 1943,
      "loc": {
        "start": {
          "line": 64,
          "column": 23
        },
        "end": {
          "line": 64,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f1}",
      "start": 1951,
      "end": 1957,
      "loc": {
        "start": {
          "line": 65,
          "column": 6
        },
        "end": {
          "line": 65,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1957,
      "end": 1958,
      "loc": {
        "start": {
          "line": 65,
          "column": 12
        },
        "end": {
          "line": 65,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f1",
      "start": 1959,
      "end": 1963,
      "loc": {
        "start": {
          "line": 65,
          "column": 14
        },
        "end": {
          "line": 65,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1963,
      "end": 1964,
      "loc": {
        "start": {
          "line": 65,
          "column": 18
        },
        "end": {
          "line": 65,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f2}",
      "start": 1972,
      "end": 1978,
      "loc": {
        "start": {
          "line": 66,
          "column": 6
        },
        "end": {
          "line": 66,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1978,
      "end": 1979,
      "loc": {
        "start": {
          "line": 66,
          "column": 12
        },
        "end": {
          "line": 66,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f2",
      "start": 1980,
      "end": 1984,
      "loc": {
        "start": {
          "line": 66,
          "column": 14
        },
        "end": {
          "line": 66,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1984,
      "end": 1985,
      "loc": {
        "start": {
          "line": 66,
          "column": 18
        },
        "end": {
          "line": 66,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f3}",
      "start": 1993,
      "end": 1999,
      "loc": {
        "start": {
          "line": 67,
          "column": 6
        },
        "end": {
          "line": 67,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1999,
      "end": 2000,
      "loc": {
        "start": {
          "line": 67,
          "column": 12
        },
        "end": {
          "line": 67,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f3",
      "start": 2001,
      "end": 2005,
      "loc": {
        "start": {
          "line": 67,
          "column": 14
        },
        "end": {
          "line": 67,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2005,
      "end": 2006,
      "loc": {
        "start": {
          "line": 67,
          "column": 18
        },
        "end": {
          "line": 67,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f4}",
      "start": 2014,
      "end": 2020,
      "loc": {
        "start": {
          "line": 68,
          "column": 6
        },
        "end": {
          "line": 68,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2020,
      "end": 2021,
      "loc": {
        "start": {
          "line": 68,
          "column": 12
        },
        "end": {
          "line": 68,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f4",
      "start": 2022,
      "end": 2026,
      "loc": {
        "start": {
          "line": 68,
          "column": 14
        },
        "end": {
          "line": 68,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2026,
      "end": 2027,
      "loc": {
        "start": {
          "line": 68,
          "column": 18
        },
        "end": {
          "line": 68,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f5}",
      "start": 2035,
      "end": 2041,
      "loc": {
        "start": {
          "line": 69,
          "column": 6
        },
        "end": {
          "line": 69,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2041,
      "end": 2042,
      "loc": {
        "start": {
          "line": 69,
          "column": 12
        },
        "end": {
          "line": 69,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f5",
      "start": 2043,
      "end": 2047,
      "loc": {
        "start": {
          "line": 69,
          "column": 14
        },
        "end": {
          "line": 69,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2047,
      "end": 2048,
      "loc": {
        "start": {
          "line": 69,
          "column": 18
        },
        "end": {
          "line": 69,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f6}",
      "start": 2056,
      "end": 2062,
      "loc": {
        "start": {
          "line": 70,
          "column": 6
        },
        "end": {
          "line": 70,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2062,
      "end": 2063,
      "loc": {
        "start": {
          "line": 70,
          "column": 12
        },
        "end": {
          "line": 70,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f6",
      "start": 2064,
      "end": 2068,
      "loc": {
        "start": {
          "line": 70,
          "column": 14
        },
        "end": {
          "line": 70,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2068,
      "end": 2069,
      "loc": {
        "start": {
          "line": 70,
          "column": 18
        },
        "end": {
          "line": 70,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f7}",
      "start": 2077,
      "end": 2083,
      "loc": {
        "start": {
          "line": 71,
          "column": 6
        },
        "end": {
          "line": 71,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2083,
      "end": 2084,
      "loc": {
        "start": {
          "line": 71,
          "column": 12
        },
        "end": {
          "line": 71,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f7",
      "start": 2085,
      "end": 2089,
      "loc": {
        "start": {
          "line": 71,
          "column": 14
        },
        "end": {
          "line": 71,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2089,
      "end": 2090,
      "loc": {
        "start": {
          "line": 71,
          "column": 18
        },
        "end": {
          "line": 71,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f8}",
      "start": 2098,
      "end": 2104,
      "loc": {
        "start": {
          "line": 72,
          "column": 6
        },
        "end": {
          "line": 72,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2104,
      "end": 2105,
      "loc": {
        "start": {
          "line": 72,
          "column": 12
        },
        "end": {
          "line": 72,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f8",
      "start": 2106,
      "end": 2110,
      "loc": {
        "start": {
          "line": 72,
          "column": 14
        },
        "end": {
          "line": 72,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2110,
      "end": 2111,
      "loc": {
        "start": {
          "line": 72,
          "column": 18
        },
        "end": {
          "line": 72,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f9}",
      "start": 2119,
      "end": 2125,
      "loc": {
        "start": {
          "line": 73,
          "column": 6
        },
        "end": {
          "line": 73,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2125,
      "end": 2126,
      "loc": {
        "start": {
          "line": 73,
          "column": 12
        },
        "end": {
          "line": 73,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f9",
      "start": 2127,
      "end": 2131,
      "loc": {
        "start": {
          "line": 73,
          "column": 14
        },
        "end": {
          "line": 73,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2131,
      "end": 2132,
      "loc": {
        "start": {
          "line": 73,
          "column": 18
        },
        "end": {
          "line": 73,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f10}",
      "start": 2140,
      "end": 2147,
      "loc": {
        "start": {
          "line": 74,
          "column": 6
        },
        "end": {
          "line": 74,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2147,
      "end": 2148,
      "loc": {
        "start": {
          "line": 74,
          "column": 13
        },
        "end": {
          "line": 74,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f10",
      "start": 2149,
      "end": 2154,
      "loc": {
        "start": {
          "line": 74,
          "column": 15
        },
        "end": {
          "line": 74,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2154,
      "end": 2155,
      "loc": {
        "start": {
          "line": 74,
          "column": 20
        },
        "end": {
          "line": 74,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f11}",
      "start": 2163,
      "end": 2170,
      "loc": {
        "start": {
          "line": 75,
          "column": 6
        },
        "end": {
          "line": 75,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2170,
      "end": 2171,
      "loc": {
        "start": {
          "line": 75,
          "column": 13
        },
        "end": {
          "line": 75,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f11",
      "start": 2172,
      "end": 2177,
      "loc": {
        "start": {
          "line": 75,
          "column": 15
        },
        "end": {
          "line": 75,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2177,
      "end": 2178,
      "loc": {
        "start": {
          "line": 75,
          "column": 20
        },
        "end": {
          "line": 75,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{f12}",
      "start": 2186,
      "end": 2193,
      "loc": {
        "start": {
          "line": 76,
          "column": 6
        },
        "end": {
          "line": 76,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2193,
      "end": 2194,
      "loc": {
        "start": {
          "line": 76,
          "column": 13
        },
        "end": {
          "line": 76,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "f12",
      "start": 2195,
      "end": 2200,
      "loc": {
        "start": {
          "line": 76,
          "column": 15
        },
        "end": {
          "line": 76,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2200,
      "end": 2201,
      "loc": {
        "start": {
          "line": 76,
          "column": 20
        },
        "end": {
          "line": 76,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpaddivide}",
      "start": 2209,
      "end": 2225,
      "loc": {
        "start": {
          "line": 77,
          "column": 6
        },
        "end": {
          "line": 77,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2225,
      "end": 2226,
      "loc": {
        "start": {
          "line": 77,
          "column": 22
        },
        "end": {
          "line": 77,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "/",
      "start": 2227,
      "end": 2230,
      "loc": {
        "start": {
          "line": 77,
          "column": 24
        },
        "end": {
          "line": 77,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2230,
      "end": 2231,
      "loc": {
        "start": {
          "line": 77,
          "column": 27
        },
        "end": {
          "line": 77,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numlock}",
      "start": 2239,
      "end": 2250,
      "loc": {
        "start": {
          "line": 78,
          "column": 6
        },
        "end": {
          "line": 78,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2250,
      "end": 2251,
      "loc": {
        "start": {
          "line": 78,
          "column": 17
        },
        "end": {
          "line": 78,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "lock",
      "start": 2252,
      "end": 2258,
      "loc": {
        "start": {
          "line": 78,
          "column": 19
        },
        "end": {
          "line": 78,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2258,
      "end": 2259,
      "loc": {
        "start": {
          "line": 78,
          "column": 25
        },
        "end": {
          "line": 78,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{arrowup}",
      "start": 2267,
      "end": 2278,
      "loc": {
        "start": {
          "line": 79,
          "column": 6
        },
        "end": {
          "line": 79,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2278,
      "end": 2279,
      "loc": {
        "start": {
          "line": 79,
          "column": 17
        },
        "end": {
          "line": 79,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "↑",
      "start": 2280,
      "end": 2283,
      "loc": {
        "start": {
          "line": 79,
          "column": 19
        },
        "end": {
          "line": 79,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2283,
      "end": 2284,
      "loc": {
        "start": {
          "line": 79,
          "column": 22
        },
        "end": {
          "line": 79,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{arrowleft}",
      "start": 2292,
      "end": 2305,
      "loc": {
        "start": {
          "line": 80,
          "column": 6
        },
        "end": {
          "line": 80,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2305,
      "end": 2306,
      "loc": {
        "start": {
          "line": 80,
          "column": 19
        },
        "end": {
          "line": 80,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "←",
      "start": 2307,
      "end": 2310,
      "loc": {
        "start": {
          "line": 80,
          "column": 21
        },
        "end": {
          "line": 80,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2310,
      "end": 2311,
      "loc": {
        "start": {
          "line": 80,
          "column": 24
        },
        "end": {
          "line": 80,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{arrowdown}",
      "start": 2319,
      "end": 2332,
      "loc": {
        "start": {
          "line": 81,
          "column": 6
        },
        "end": {
          "line": 81,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2332,
      "end": 2333,
      "loc": {
        "start": {
          "line": 81,
          "column": 19
        },
        "end": {
          "line": 81,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "↓",
      "start": 2334,
      "end": 2337,
      "loc": {
        "start": {
          "line": 81,
          "column": 21
        },
        "end": {
          "line": 81,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2337,
      "end": 2338,
      "loc": {
        "start": {
          "line": 81,
          "column": 24
        },
        "end": {
          "line": 81,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{arrowright}",
      "start": 2346,
      "end": 2360,
      "loc": {
        "start": {
          "line": 82,
          "column": 6
        },
        "end": {
          "line": 82,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2360,
      "end": 2361,
      "loc": {
        "start": {
          "line": 82,
          "column": 20
        },
        "end": {
          "line": 82,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "→",
      "start": 2362,
      "end": 2365,
      "loc": {
        "start": {
          "line": 82,
          "column": 22
        },
        "end": {
          "line": 82,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2365,
      "end": 2366,
      "loc": {
        "start": {
          "line": 82,
          "column": 25
        },
        "end": {
          "line": 82,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{prtscr}",
      "start": 2374,
      "end": 2384,
      "loc": {
        "start": {
          "line": 83,
          "column": 6
        },
        "end": {
          "line": 83,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2384,
      "end": 2385,
      "loc": {
        "start": {
          "line": 83,
          "column": 16
        },
        "end": {
          "line": 83,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "print",
      "start": 2386,
      "end": 2393,
      "loc": {
        "start": {
          "line": 83,
          "column": 18
        },
        "end": {
          "line": 83,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2393,
      "end": 2394,
      "loc": {
        "start": {
          "line": 83,
          "column": 25
        },
        "end": {
          "line": 83,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{scrolllock}",
      "start": 2402,
      "end": 2416,
      "loc": {
        "start": {
          "line": 84,
          "column": 6
        },
        "end": {
          "line": 84,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2416,
      "end": 2417,
      "loc": {
        "start": {
          "line": 84,
          "column": 20
        },
        "end": {
          "line": 84,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "scroll",
      "start": 2418,
      "end": 2426,
      "loc": {
        "start": {
          "line": 84,
          "column": 22
        },
        "end": {
          "line": 84,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2426,
      "end": 2427,
      "loc": {
        "start": {
          "line": 84,
          "column": 30
        },
        "end": {
          "line": 84,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{pause}",
      "start": 2435,
      "end": 2444,
      "loc": {
        "start": {
          "line": 85,
          "column": 6
        },
        "end": {
          "line": 85,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2444,
      "end": 2445,
      "loc": {
        "start": {
          "line": 85,
          "column": 15
        },
        "end": {
          "line": 85,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "pause",
      "start": 2446,
      "end": 2453,
      "loc": {
        "start": {
          "line": 85,
          "column": 17
        },
        "end": {
          "line": 85,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2453,
      "end": 2454,
      "loc": {
        "start": {
          "line": 85,
          "column": 24
        },
        "end": {
          "line": 85,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{insert}",
      "start": 2462,
      "end": 2472,
      "loc": {
        "start": {
          "line": 86,
          "column": 6
        },
        "end": {
          "line": 86,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2472,
      "end": 2473,
      "loc": {
        "start": {
          "line": 86,
          "column": 16
        },
        "end": {
          "line": 86,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "ins",
      "start": 2474,
      "end": 2479,
      "loc": {
        "start": {
          "line": 86,
          "column": 18
        },
        "end": {
          "line": 86,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2479,
      "end": 2480,
      "loc": {
        "start": {
          "line": 86,
          "column": 23
        },
        "end": {
          "line": 86,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{home}",
      "start": 2488,
      "end": 2496,
      "loc": {
        "start": {
          "line": 87,
          "column": 6
        },
        "end": {
          "line": 87,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2496,
      "end": 2497,
      "loc": {
        "start": {
          "line": 87,
          "column": 14
        },
        "end": {
          "line": 87,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "home",
      "start": 2498,
      "end": 2504,
      "loc": {
        "start": {
          "line": 87,
          "column": 16
        },
        "end": {
          "line": 87,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2504,
      "end": 2505,
      "loc": {
        "start": {
          "line": 87,
          "column": 22
        },
        "end": {
          "line": 87,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{pageup}",
      "start": 2513,
      "end": 2523,
      "loc": {
        "start": {
          "line": 88,
          "column": 6
        },
        "end": {
          "line": 88,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2523,
      "end": 2524,
      "loc": {
        "start": {
          "line": 88,
          "column": 16
        },
        "end": {
          "line": 88,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "up",
      "start": 2525,
      "end": 2529,
      "loc": {
        "start": {
          "line": 88,
          "column": 18
        },
        "end": {
          "line": 88,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2529,
      "end": 2530,
      "loc": {
        "start": {
          "line": 88,
          "column": 22
        },
        "end": {
          "line": 88,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{delete}",
      "start": 2538,
      "end": 2548,
      "loc": {
        "start": {
          "line": 89,
          "column": 6
        },
        "end": {
          "line": 89,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2548,
      "end": 2549,
      "loc": {
        "start": {
          "line": 89,
          "column": 16
        },
        "end": {
          "line": 89,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "del",
      "start": 2550,
      "end": 2555,
      "loc": {
        "start": {
          "line": 89,
          "column": 18
        },
        "end": {
          "line": 89,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2555,
      "end": 2556,
      "loc": {
        "start": {
          "line": 89,
          "column": 23
        },
        "end": {
          "line": 89,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{end}",
      "start": 2564,
      "end": 2571,
      "loc": {
        "start": {
          "line": 90,
          "column": 6
        },
        "end": {
          "line": 90,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2571,
      "end": 2572,
      "loc": {
        "start": {
          "line": 90,
          "column": 13
        },
        "end": {
          "line": 90,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "end",
      "start": 2573,
      "end": 2578,
      "loc": {
        "start": {
          "line": 90,
          "column": 15
        },
        "end": {
          "line": 90,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2578,
      "end": 2579,
      "loc": {
        "start": {
          "line": 90,
          "column": 20
        },
        "end": {
          "line": 90,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{pagedown}",
      "start": 2587,
      "end": 2599,
      "loc": {
        "start": {
          "line": 91,
          "column": 6
        },
        "end": {
          "line": 91,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2599,
      "end": 2600,
      "loc": {
        "start": {
          "line": 91,
          "column": 18
        },
        "end": {
          "line": 91,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "down",
      "start": 2601,
      "end": 2607,
      "loc": {
        "start": {
          "line": 91,
          "column": 20
        },
        "end": {
          "line": 91,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2607,
      "end": 2608,
      "loc": {
        "start": {
          "line": 91,
          "column": 26
        },
        "end": {
          "line": 91,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadmultiply}",
      "start": 2616,
      "end": 2634,
      "loc": {
        "start": {
          "line": 92,
          "column": 6
        },
        "end": {
          "line": 92,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2634,
      "end": 2635,
      "loc": {
        "start": {
          "line": 92,
          "column": 24
        },
        "end": {
          "line": 92,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "*",
      "start": 2636,
      "end": 2639,
      "loc": {
        "start": {
          "line": 92,
          "column": 26
        },
        "end": {
          "line": 92,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2639,
      "end": 2640,
      "loc": {
        "start": {
          "line": 92,
          "column": 29
        },
        "end": {
          "line": 92,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadsubtract}",
      "start": 2648,
      "end": 2666,
      "loc": {
        "start": {
          "line": 93,
          "column": 6
        },
        "end": {
          "line": 93,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2666,
      "end": 2667,
      "loc": {
        "start": {
          "line": 93,
          "column": 24
        },
        "end": {
          "line": 93,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "-",
      "start": 2668,
      "end": 2671,
      "loc": {
        "start": {
          "line": 93,
          "column": 26
        },
        "end": {
          "line": 93,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2671,
      "end": 2672,
      "loc": {
        "start": {
          "line": 93,
          "column": 29
        },
        "end": {
          "line": 93,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadadd}",
      "start": 2680,
      "end": 2693,
      "loc": {
        "start": {
          "line": 94,
          "column": 6
        },
        "end": {
          "line": 94,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2693,
      "end": 2694,
      "loc": {
        "start": {
          "line": 94,
          "column": 19
        },
        "end": {
          "line": 94,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "+",
      "start": 2695,
      "end": 2698,
      "loc": {
        "start": {
          "line": 94,
          "column": 21
        },
        "end": {
          "line": 94,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2698,
      "end": 2699,
      "loc": {
        "start": {
          "line": 94,
          "column": 24
        },
        "end": {
          "line": 94,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadenter}",
      "start": 2707,
      "end": 2722,
      "loc": {
        "start": {
          "line": 95,
          "column": 6
        },
        "end": {
          "line": 95,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2722,
      "end": 2723,
      "loc": {
        "start": {
          "line": 95,
          "column": 21
        },
        "end": {
          "line": 95,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "enter",
      "start": 2724,
      "end": 2731,
      "loc": {
        "start": {
          "line": 95,
          "column": 23
        },
        "end": {
          "line": 95,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2731,
      "end": 2732,
      "loc": {
        "start": {
          "line": 95,
          "column": 30
        },
        "end": {
          "line": 95,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{period}",
      "start": 2740,
      "end": 2750,
      "loc": {
        "start": {
          "line": 96,
          "column": 6
        },
        "end": {
          "line": 96,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2750,
      "end": 2751,
      "loc": {
        "start": {
          "line": 96,
          "column": 16
        },
        "end": {
          "line": 96,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 2752,
      "end": 2755,
      "loc": {
        "start": {
          "line": 96,
          "column": 18
        },
        "end": {
          "line": 96,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2755,
      "end": 2756,
      "loc": {
        "start": {
          "line": 96,
          "column": 21
        },
        "end": {
          "line": 96,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpaddecimal}",
      "start": 2764,
      "end": 2781,
      "loc": {
        "start": {
          "line": 97,
          "column": 6
        },
        "end": {
          "line": 97,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2781,
      "end": 2782,
      "loc": {
        "start": {
          "line": 97,
          "column": 23
        },
        "end": {
          "line": 97,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 2783,
      "end": 2786,
      "loc": {
        "start": {
          "line": 97,
          "column": 25
        },
        "end": {
          "line": 97,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2786,
      "end": 2787,
      "loc": {
        "start": {
          "line": 97,
          "column": 28
        },
        "end": {
          "line": 97,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad0}",
      "start": 2795,
      "end": 2806,
      "loc": {
        "start": {
          "line": 98,
          "column": 6
        },
        "end": {
          "line": 98,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2806,
      "end": 2807,
      "loc": {
        "start": {
          "line": 98,
          "column": 17
        },
        "end": {
          "line": 98,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "0",
      "start": 2808,
      "end": 2811,
      "loc": {
        "start": {
          "line": 98,
          "column": 19
        },
        "end": {
          "line": 98,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2811,
      "end": 2812,
      "loc": {
        "start": {
          "line": 98,
          "column": 22
        },
        "end": {
          "line": 98,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad1}",
      "start": 2820,
      "end": 2831,
      "loc": {
        "start": {
          "line": 99,
          "column": 6
        },
        "end": {
          "line": 99,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2831,
      "end": 2832,
      "loc": {
        "start": {
          "line": 99,
          "column": 17
        },
        "end": {
          "line": 99,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "1",
      "start": 2833,
      "end": 2836,
      "loc": {
        "start": {
          "line": 99,
          "column": 19
        },
        "end": {
          "line": 99,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2836,
      "end": 2837,
      "loc": {
        "start": {
          "line": 99,
          "column": 22
        },
        "end": {
          "line": 99,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad2}",
      "start": 2845,
      "end": 2856,
      "loc": {
        "start": {
          "line": 100,
          "column": 6
        },
        "end": {
          "line": 100,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2856,
      "end": 2857,
      "loc": {
        "start": {
          "line": 100,
          "column": 17
        },
        "end": {
          "line": 100,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "2",
      "start": 2858,
      "end": 2861,
      "loc": {
        "start": {
          "line": 100,
          "column": 19
        },
        "end": {
          "line": 100,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2861,
      "end": 2862,
      "loc": {
        "start": {
          "line": 100,
          "column": 22
        },
        "end": {
          "line": 100,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad3}",
      "start": 2870,
      "end": 2881,
      "loc": {
        "start": {
          "line": 101,
          "column": 6
        },
        "end": {
          "line": 101,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2881,
      "end": 2882,
      "loc": {
        "start": {
          "line": 101,
          "column": 17
        },
        "end": {
          "line": 101,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "3",
      "start": 2883,
      "end": 2886,
      "loc": {
        "start": {
          "line": 101,
          "column": 19
        },
        "end": {
          "line": 101,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2886,
      "end": 2887,
      "loc": {
        "start": {
          "line": 101,
          "column": 22
        },
        "end": {
          "line": 101,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad4}",
      "start": 2895,
      "end": 2906,
      "loc": {
        "start": {
          "line": 102,
          "column": 6
        },
        "end": {
          "line": 102,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2906,
      "end": 2907,
      "loc": {
        "start": {
          "line": 102,
          "column": 17
        },
        "end": {
          "line": 102,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "4",
      "start": 2908,
      "end": 2911,
      "loc": {
        "start": {
          "line": 102,
          "column": 19
        },
        "end": {
          "line": 102,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2911,
      "end": 2912,
      "loc": {
        "start": {
          "line": 102,
          "column": 22
        },
        "end": {
          "line": 102,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad5}",
      "start": 2920,
      "end": 2931,
      "loc": {
        "start": {
          "line": 103,
          "column": 6
        },
        "end": {
          "line": 103,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2931,
      "end": 2932,
      "loc": {
        "start": {
          "line": 103,
          "column": 17
        },
        "end": {
          "line": 103,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "5",
      "start": 2933,
      "end": 2936,
      "loc": {
        "start": {
          "line": 103,
          "column": 19
        },
        "end": {
          "line": 103,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2936,
      "end": 2937,
      "loc": {
        "start": {
          "line": 103,
          "column": 22
        },
        "end": {
          "line": 103,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad6}",
      "start": 2945,
      "end": 2956,
      "loc": {
        "start": {
          "line": 104,
          "column": 6
        },
        "end": {
          "line": 104,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2956,
      "end": 2957,
      "loc": {
        "start": {
          "line": 104,
          "column": 17
        },
        "end": {
          "line": 104,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "6",
      "start": 2958,
      "end": 2961,
      "loc": {
        "start": {
          "line": 104,
          "column": 19
        },
        "end": {
          "line": 104,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2961,
      "end": 2962,
      "loc": {
        "start": {
          "line": 104,
          "column": 22
        },
        "end": {
          "line": 104,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad7}",
      "start": 2970,
      "end": 2981,
      "loc": {
        "start": {
          "line": 105,
          "column": 6
        },
        "end": {
          "line": 105,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2981,
      "end": 2982,
      "loc": {
        "start": {
          "line": 105,
          "column": 17
        },
        "end": {
          "line": 105,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "7",
      "start": 2983,
      "end": 2986,
      "loc": {
        "start": {
          "line": 105,
          "column": 19
        },
        "end": {
          "line": 105,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2986,
      "end": 2987,
      "loc": {
        "start": {
          "line": 105,
          "column": 22
        },
        "end": {
          "line": 105,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad8}",
      "start": 2995,
      "end": 3006,
      "loc": {
        "start": {
          "line": 106,
          "column": 6
        },
        "end": {
          "line": 106,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3006,
      "end": 3007,
      "loc": {
        "start": {
          "line": 106,
          "column": 17
        },
        "end": {
          "line": 106,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "8",
      "start": 3008,
      "end": 3011,
      "loc": {
        "start": {
          "line": 106,
          "column": 19
        },
        "end": {
          "line": 106,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3011,
      "end": 3012,
      "loc": {
        "start": {
          "line": 106,
          "column": 22
        },
        "end": {
          "line": 106,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpad9}",
      "start": 3020,
      "end": 3031,
      "loc": {
        "start": {
          "line": 107,
          "column": 6
        },
        "end": {
          "line": 107,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3031,
      "end": 3032,
      "loc": {
        "start": {
          "line": 107,
          "column": 17
        },
        "end": {
          "line": 107,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "9",
      "start": 3033,
      "end": 3036,
      "loc": {
        "start": {
          "line": 107,
          "column": 19
        },
        "end": {
          "line": 107,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3036,
      "end": 3037,
      "loc": {
        "start": {
          "line": 107,
          "column": 22
        },
        "end": {
          "line": 107,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3043,
      "end": 3044,
      "loc": {
        "start": {
          "line": 108,
          "column": 4
        },
        "end": {
          "line": 108,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3044,
      "end": 3045,
      "loc": {
        "start": {
          "line": 108,
          "column": 5
        },
        "end": {
          "line": 108,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3049,
      "end": 3050,
      "loc": {
        "start": {
          "line": 109,
          "column": 2
        },
        "end": {
          "line": 109,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Returns the display (label) name for a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {object} display The provided display option\r\n   * @param  {boolean} mergeDisplay Whether the provided param value should be merged with the default one.\r\n   ",
      "start": 3054,
      "end": 3352,
      "loc": {
        "start": {
          "line": 110,
          "column": 2
        },
        "end": {
          "line": 116,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getButtonDisplayName",
      "start": 3356,
      "end": 3376,
      "loc": {
        "start": {
          "line": 117,
          "column": 2
        },
        "end": {
          "line": 117,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3376,
      "end": 3377,
      "loc": {
        "start": {
          "line": 117,
          "column": 22
        },
        "end": {
          "line": 117,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 3377,
      "end": 3383,
      "loc": {
        "start": {
          "line": 117,
          "column": 23
        },
        "end": {
          "line": 117,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3383,
      "end": 3384,
      "loc": {
        "start": {
          "line": 117,
          "column": 29
        },
        "end": {
          "line": 117,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3385,
      "end": 3392,
      "loc": {
        "start": {
          "line": 117,
          "column": 31
        },
        "end": {
          "line": 117,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3392,
      "end": 3393,
      "loc": {
        "start": {
          "line": 117,
          "column": 38
        },
        "end": {
          "line": 117,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "mergeDisplay",
      "start": 3394,
      "end": 3406,
      "loc": {
        "start": {
          "line": 117,
          "column": 40
        },
        "end": {
          "line": 117,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3406,
      "end": 3407,
      "loc": {
        "start": {
          "line": 117,
          "column": 52
        },
        "end": {
          "line": 117,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3407,
      "end": 3408,
      "loc": {
        "start": {
          "line": 117,
          "column": 53
        },
        "end": {
          "line": 117,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3414,
      "end": 3416,
      "loc": {
        "start": {
          "line": 118,
          "column": 4
        },
        "end": {
          "line": 118,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3416,
      "end": 3417,
      "loc": {
        "start": {
          "line": 118,
          "column": 6
        },
        "end": {
          "line": 118,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "mergeDisplay",
      "start": 3417,
      "end": 3429,
      "loc": {
        "start": {
          "line": 118,
          "column": 7
        },
        "end": {
          "line": 118,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3429,
      "end": 3430,
      "loc": {
        "start": {
          "line": 118,
          "column": 19
        },
        "end": {
          "line": 118,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3430,
      "end": 3431,
      "loc": {
        "start": {
          "line": 118,
          "column": 20
        },
        "end": {
          "line": 118,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3439,
      "end": 3446,
      "loc": {
        "start": {
          "line": 119,
          "column": 6
        },
        "end": {
          "line": 119,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3447,
      "end": 3448,
      "loc": {
        "start": {
          "line": 119,
          "column": 14
        },
        "end": {
          "line": 119,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 3449,
      "end": 3455,
      "loc": {
        "start": {
          "line": 119,
          "column": 16
        },
        "end": {
          "line": 119,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3455,
      "end": 3456,
      "loc": {
        "start": {
          "line": 119,
          "column": 22
        },
        "end": {
          "line": 119,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 3456,
      "end": 3462,
      "loc": {
        "start": {
          "line": 119,
          "column": 23
        },
        "end": {
          "line": 119,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3462,
      "end": 3463,
      "loc": {
        "start": {
          "line": 119,
          "column": 29
        },
        "end": {
          "line": 119,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3463,
      "end": 3464,
      "loc": {
        "start": {
          "line": 119,
          "column": 30
        },
        "end": {
          "line": 119,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3464,
      "end": 3465,
      "loc": {
        "start": {
          "line": 119,
          "column": 31
        },
        "end": {
          "line": 119,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3465,
      "end": 3466,
      "loc": {
        "start": {
          "line": 119,
          "column": 32
        },
        "end": {
          "line": 119,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3467,
      "end": 3471,
      "loc": {
        "start": {
          "line": 119,
          "column": 34
        },
        "end": {
          "line": 119,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3471,
      "end": 3472,
      "loc": {
        "start": {
          "line": 119,
          "column": 38
        },
        "end": {
          "line": 119,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getDefaultDiplay",
      "start": 3472,
      "end": 3488,
      "loc": {
        "start": {
          "line": 119,
          "column": 39
        },
        "end": {
          "line": 119,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3488,
      "end": 3489,
      "loc": {
        "start": {
          "line": 119,
          "column": 55
        },
        "end": {
          "line": 119,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3489,
      "end": 3490,
      "loc": {
        "start": {
          "line": 119,
          "column": 56
        },
        "end": {
          "line": 119,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3490,
      "end": 3491,
      "loc": {
        "start": {
          "line": 119,
          "column": 57
        },
        "end": {
          "line": 119,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3492,
      "end": 3499,
      "loc": {
        "start": {
          "line": 119,
          "column": 59
        },
        "end": {
          "line": 119,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3499,
      "end": 3500,
      "loc": {
        "start": {
          "line": 119,
          "column": 66
        },
        "end": {
          "line": 119,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3500,
      "end": 3501,
      "loc": {
        "start": {
          "line": 119,
          "column": 67
        },
        "end": {
          "line": 119,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3507,
      "end": 3508,
      "loc": {
        "start": {
          "line": 120,
          "column": 4
        },
        "end": {
          "line": 120,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 3509,
      "end": 3513,
      "loc": {
        "start": {
          "line": 120,
          "column": 6
        },
        "end": {
          "line": 120,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3514,
      "end": 3515,
      "loc": {
        "start": {
          "line": 120,
          "column": 11
        },
        "end": {
          "line": 120,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3523,
      "end": 3530,
      "loc": {
        "start": {
          "line": 121,
          "column": 6
        },
        "end": {
          "line": 121,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3531,
      "end": 3532,
      "loc": {
        "start": {
          "line": 121,
          "column": 14
        },
        "end": {
          "line": 121,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3533,
      "end": 3540,
      "loc": {
        "start": {
          "line": 121,
          "column": 16
        },
        "end": {
          "line": 121,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 3541,
      "end": 3543,
      "loc": {
        "start": {
          "line": 121,
          "column": 24
        },
        "end": {
          "line": 121,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3544,
      "end": 3548,
      "loc": {
        "start": {
          "line": 121,
          "column": 27
        },
        "end": {
          "line": 121,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3548,
      "end": 3549,
      "loc": {
        "start": {
          "line": 121,
          "column": 31
        },
        "end": {
          "line": 121,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getDefaultDiplay",
      "start": 3549,
      "end": 3565,
      "loc": {
        "start": {
          "line": 121,
          "column": 32
        },
        "end": {
          "line": 121,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3565,
      "end": 3566,
      "loc": {
        "start": {
          "line": 121,
          "column": 48
        },
        "end": {
          "line": 121,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3566,
      "end": 3567,
      "loc": {
        "start": {
          "line": 121,
          "column": 49
        },
        "end": {
          "line": 121,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3567,
      "end": 3568,
      "loc": {
        "start": {
          "line": 121,
          "column": 50
        },
        "end": {
          "line": 121,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3574,
      "end": 3575,
      "loc": {
        "start": {
          "line": 122,
          "column": 4
        },
        "end": {
          "line": 122,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3583,
      "end": 3589,
      "loc": {
        "start": {
          "line": 124,
          "column": 4
        },
        "end": {
          "line": 124,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "display",
      "start": 3590,
      "end": 3597,
      "loc": {
        "start": {
          "line": 124,
          "column": 11
        },
        "end": {
          "line": 124,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3597,
      "end": 3598,
      "loc": {
        "start": {
          "line": 124,
          "column": 18
        },
        "end": {
          "line": 124,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 3598,
      "end": 3604,
      "loc": {
        "start": {
          "line": 124,
          "column": 19
        },
        "end": {
          "line": 124,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3604,
      "end": 3605,
      "loc": {
        "start": {
          "line": 124,
          "column": 25
        },
        "end": {
          "line": 124,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 3606,
      "end": 3608,
      "loc": {
        "start": {
          "line": 124,
          "column": 27
        },
        "end": {
          "line": 124,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 3609,
      "end": 3615,
      "loc": {
        "start": {
          "line": 124,
          "column": 30
        },
        "end": {
          "line": 124,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3615,
      "end": 3616,
      "loc": {
        "start": {
          "line": 124,
          "column": 36
        },
        "end": {
          "line": 124,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3620,
      "end": 3621,
      "loc": {
        "start": {
          "line": 125,
          "column": 2
        },
        "end": {
          "line": 125,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Returns the updated input resulting from clicking a given button\r\n   * \r\n   * @param  {string} button The button's layout name\r\n   * @param  {string} input The input string\r\n   * @param  {object} options The simple-keyboard options object\r\n   * @param  {number} caretPos The cursor's current position\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 3631,
      "end": 4025,
      "loc": {
        "start": {
          "line": 128,
          "column": 2
        },
        "end": {
          "line": 136,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getUpdatedInput",
      "start": 4029,
      "end": 4044,
      "loc": {
        "start": {
          "line": 137,
          "column": 2
        },
        "end": {
          "line": 137,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4044,
      "end": 4045,
      "loc": {
        "start": {
          "line": 137,
          "column": 17
        },
        "end": {
          "line": 137,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4045,
      "end": 4051,
      "loc": {
        "start": {
          "line": 137,
          "column": 18
        },
        "end": {
          "line": 137,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4051,
      "end": 4052,
      "loc": {
        "start": {
          "line": 137,
          "column": 24
        },
        "end": {
          "line": 137,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "input",
      "start": 4053,
      "end": 4058,
      "loc": {
        "start": {
          "line": 137,
          "column": 26
        },
        "end": {
          "line": 137,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4058,
      "end": 4059,
      "loc": {
        "start": {
          "line": 137,
          "column": 31
        },
        "end": {
          "line": 137,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4060,
      "end": 4067,
      "loc": {
        "start": {
          "line": 137,
          "column": 33
        },
        "end": {
          "line": 137,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4067,
      "end": 4068,
      "loc": {
        "start": {
          "line": 137,
          "column": 40
        },
        "end": {
          "line": 137,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4069,
      "end": 4077,
      "loc": {
        "start": {
          "line": 137,
          "column": 42
        },
        "end": {
          "line": 137,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4077,
      "end": 4078,
      "loc": {
        "start": {
          "line": 137,
          "column": 50
        },
        "end": {
          "line": 137,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 4079,
      "end": 4088,
      "loc": {
        "start": {
          "line": 137,
          "column": 52
        },
        "end": {
          "line": 137,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4088,
      "end": 4089,
      "loc": {
        "start": {
          "line": 137,
          "column": 61
        },
        "end": {
          "line": 137,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4089,
      "end": 4090,
      "loc": {
        "start": {
          "line": 137,
          "column": 62
        },
        "end": {
          "line": 137,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 4102,
      "end": 4105,
      "loc": {
        "start": {
          "line": 139,
          "column": 4
        },
        "end": {
          "line": 139,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4106,
      "end": 4112,
      "loc": {
        "start": {
          "line": 139,
          "column": 8
        },
        "end": {
          "line": 139,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4113,
      "end": 4114,
      "loc": {
        "start": {
          "line": 139,
          "column": 15
        },
        "end": {
          "line": 139,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "input",
      "start": 4115,
      "end": 4120,
      "loc": {
        "start": {
          "line": 139,
          "column": 17
        },
        "end": {
          "line": 139,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4120,
      "end": 4121,
      "loc": {
        "start": {
          "line": 139,
          "column": 22
        },
        "end": {
          "line": 139,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4129,
      "end": 4131,
      "loc": {
        "start": {
          "line": 141,
          "column": 4
        },
        "end": {
          "line": 141,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4131,
      "end": 4132,
      "loc": {
        "start": {
          "line": 141,
          "column": 6
        },
        "end": {
          "line": 141,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4132,
      "end": 4133,
      "loc": {
        "start": {
          "line": 141,
          "column": 7
        },
        "end": {
          "line": 141,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4133,
      "end": 4139,
      "loc": {
        "start": {
          "line": 141,
          "column": 8
        },
        "end": {
          "line": 141,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4140,
      "end": 4143,
      "loc": {
        "start": {
          "line": 141,
          "column": 15
        },
        "end": {
          "line": 141,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{bksp}",
      "start": 4144,
      "end": 4152,
      "loc": {
        "start": {
          "line": 141,
          "column": 19
        },
        "end": {
          "line": 141,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 4153,
      "end": 4155,
      "loc": {
        "start": {
          "line": 141,
          "column": 28
        },
        "end": {
          "line": 141,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4156,
      "end": 4162,
      "loc": {
        "start": {
          "line": 141,
          "column": 31
        },
        "end": {
          "line": 141,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4163,
      "end": 4166,
      "loc": {
        "start": {
          "line": 141,
          "column": 38
        },
        "end": {
          "line": 141,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{backspace}",
      "start": 4167,
      "end": 4180,
      "loc": {
        "start": {
          "line": 141,
          "column": 42
        },
        "end": {
          "line": 141,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4180,
      "end": 4181,
      "loc": {
        "start": {
          "line": 141,
          "column": 55
        },
        "end": {
          "line": 141,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 4182,
      "end": 4184,
      "loc": {
        "start": {
          "line": 141,
          "column": 57
        },
        "end": {
          "line": 141,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4185,
      "end": 4191,
      "loc": {
        "start": {
          "line": 141,
          "column": 60
        },
        "end": {
          "line": 141,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4191,
      "end": 4192,
      "loc": {
        "start": {
          "line": 141,
          "column": 66
        },
        "end": {
          "line": 141,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 4192,
      "end": 4198,
      "loc": {
        "start": {
          "line": 141,
          "column": 67
        },
        "end": {
          "line": 141,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 4199,
      "end": 4200,
      "loc": {
        "start": {
          "line": 141,
          "column": 74
        },
        "end": {
          "line": 141,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 4201,
      "end": 4202,
      "loc": {
        "start": {
          "line": 141,
          "column": 76
        },
        "end": {
          "line": 141,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4202,
      "end": 4203,
      "loc": {
        "start": {
          "line": 141,
          "column": 77
        },
        "end": {
          "line": 141,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4203,
      "end": 4204,
      "loc": {
        "start": {
          "line": 141,
          "column": 78
        },
        "end": {
          "line": 141,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4212,
      "end": 4218,
      "loc": {
        "start": {
          "line": 142,
          "column": 6
        },
        "end": {
          "line": 142,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4219,
      "end": 4220,
      "loc": {
        "start": {
          "line": 142,
          "column": 13
        },
        "end": {
          "line": 142,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4221,
      "end": 4225,
      "loc": {
        "start": {
          "line": 142,
          "column": 15
        },
        "end": {
          "line": 142,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4225,
      "end": 4226,
      "loc": {
        "start": {
          "line": 142,
          "column": 19
        },
        "end": {
          "line": 142,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeAt",
      "start": 4226,
      "end": 4234,
      "loc": {
        "start": {
          "line": 142,
          "column": 20
        },
        "end": {
          "line": 142,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4234,
      "end": 4235,
      "loc": {
        "start": {
          "line": 142,
          "column": 28
        },
        "end": {
          "line": 142,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4235,
      "end": 4241,
      "loc": {
        "start": {
          "line": 142,
          "column": 29
        },
        "end": {
          "line": 142,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4241,
      "end": 4242,
      "loc": {
        "start": {
          "line": 142,
          "column": 35
        },
        "end": {
          "line": 142,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4243,
      "end": 4251,
      "loc": {
        "start": {
          "line": 142,
          "column": 37
        },
        "end": {
          "line": 142,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4251,
      "end": 4252,
      "loc": {
        "start": {
          "line": 142,
          "column": 45
        },
        "end": {
          "line": 142,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 4253,
      "end": 4262,
      "loc": {
        "start": {
          "line": 142,
          "column": 47
        },
        "end": {
          "line": 142,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4262,
      "end": 4263,
      "loc": {
        "start": {
          "line": 142,
          "column": 56
        },
        "end": {
          "line": 142,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4263,
      "end": 4264,
      "loc": {
        "start": {
          "line": 142,
          "column": 57
        },
        "end": {
          "line": 142,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4272,
      "end": 4273,
      "loc": {
        "start": {
          "line": 144,
          "column": 4
        },
        "end": {
          "line": 144,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4274,
      "end": 4278,
      "loc": {
        "start": {
          "line": 144,
          "column": 6
        },
        "end": {
          "line": 144,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4279,
      "end": 4281,
      "loc": {
        "start": {
          "line": 144,
          "column": 11
        },
        "end": {
          "line": 144,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4281,
      "end": 4282,
      "loc": {
        "start": {
          "line": 144,
          "column": 13
        },
        "end": {
          "line": 144,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4282,
      "end": 4288,
      "loc": {
        "start": {
          "line": 144,
          "column": 14
        },
        "end": {
          "line": 144,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4289,
      "end": 4292,
      "loc": {
        "start": {
          "line": 144,
          "column": 21
        },
        "end": {
          "line": 144,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{space}",
      "start": 4293,
      "end": 4302,
      "loc": {
        "start": {
          "line": 144,
          "column": 25
        },
        "end": {
          "line": 144,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4302,
      "end": 4303,
      "loc": {
        "start": {
          "line": 144,
          "column": 34
        },
        "end": {
          "line": 144,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4311,
      "end": 4317,
      "loc": {
        "start": {
          "line": 145,
          "column": 6
        },
        "end": {
          "line": 145,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4318,
      "end": 4319,
      "loc": {
        "start": {
          "line": 145,
          "column": 13
        },
        "end": {
          "line": 145,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4320,
      "end": 4324,
      "loc": {
        "start": {
          "line": 145,
          "column": 15
        },
        "end": {
          "line": 145,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4324,
      "end": 4325,
      "loc": {
        "start": {
          "line": 145,
          "column": 19
        },
        "end": {
          "line": 145,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 4325,
      "end": 4336,
      "loc": {
        "start": {
          "line": 145,
          "column": 20
        },
        "end": {
          "line": 145,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4336,
      "end": 4337,
      "loc": {
        "start": {
          "line": 145,
          "column": 31
        },
        "end": {
          "line": 145,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4337,
      "end": 4343,
      "loc": {
        "start": {
          "line": 145,
          "column": 32
        },
        "end": {
          "line": 145,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4343,
      "end": 4344,
      "loc": {
        "start": {
          "line": 145,
          "column": 38
        },
        "end": {
          "line": 145,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": " ",
      "start": 4345,
      "end": 4348,
      "loc": {
        "start": {
          "line": 145,
          "column": 40
        },
        "end": {
          "line": 145,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4348,
      "end": 4349,
      "loc": {
        "start": {
          "line": 145,
          "column": 43
        },
        "end": {
          "line": 145,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4350,
      "end": 4358,
      "loc": {
        "start": {
          "line": 145,
          "column": 45
        },
        "end": {
          "line": 145,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4358,
      "end": 4359,
      "loc": {
        "start": {
          "line": 145,
          "column": 53
        },
        "end": {
          "line": 145,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 4360,
      "end": 4369,
      "loc": {
        "start": {
          "line": 145,
          "column": 55
        },
        "end": {
          "line": 145,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4369,
      "end": 4370,
      "loc": {
        "start": {
          "line": 145,
          "column": 64
        },
        "end": {
          "line": 145,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4370,
      "end": 4371,
      "loc": {
        "start": {
          "line": 145,
          "column": 65
        },
        "end": {
          "line": 145,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4379,
      "end": 4383,
      "loc": {
        "start": {
          "line": 147,
          "column": 4
        },
        "end": {
          "line": 147,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4384,
      "end": 4386,
      "loc": {
        "start": {
          "line": 147,
          "column": 9
        },
        "end": {
          "line": 147,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4386,
      "end": 4387,
      "loc": {
        "start": {
          "line": 147,
          "column": 11
        },
        "end": {
          "line": 147,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4387,
      "end": 4393,
      "loc": {
        "start": {
          "line": 147,
          "column": 12
        },
        "end": {
          "line": 147,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4394,
      "end": 4397,
      "loc": {
        "start": {
          "line": 147,
          "column": 19
        },
        "end": {
          "line": 147,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{tab}",
      "start": 4398,
      "end": 4405,
      "loc": {
        "start": {
          "line": 147,
          "column": 23
        },
        "end": {
          "line": 147,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 4406,
      "end": 4408,
      "loc": {
        "start": {
          "line": 147,
          "column": 31
        },
        "end": {
          "line": 147,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4409,
      "end": 4410,
      "loc": {
        "start": {
          "line": 147,
          "column": 34
        },
        "end": {
          "line": 147,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4410,
      "end": 4411,
      "loc": {
        "start": {
          "line": 147,
          "column": 35
        },
        "end": {
          "line": 147,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 4411,
      "end": 4417,
      "loc": {
        "start": {
          "line": 147,
          "column": 36
        },
        "end": {
          "line": 147,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4418,
      "end": 4425,
      "loc": {
        "start": {
          "line": 147,
          "column": 43
        },
        "end": {
          "line": 147,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4425,
      "end": 4426,
      "loc": {
        "start": {
          "line": 147,
          "column": 50
        },
        "end": {
          "line": 147,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tabCharOnTab",
      "start": 4426,
      "end": 4438,
      "loc": {
        "start": {
          "line": 147,
          "column": 51
        },
        "end": {
          "line": 147,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4439,
      "end": 4442,
      "loc": {
        "start": {
          "line": 147,
          "column": 64
        },
        "end": {
          "line": 147,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "boolean",
      "start": 4443,
      "end": 4452,
      "loc": {
        "start": {
          "line": 147,
          "column": 68
        },
        "end": {
          "line": 147,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 4453,
      "end": 4455,
      "loc": {
        "start": {
          "line": 147,
          "column": 78
        },
        "end": {
          "line": 147,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4456,
      "end": 4463,
      "loc": {
        "start": {
          "line": 147,
          "column": 81
        },
        "end": {
          "line": 147,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4463,
      "end": 4464,
      "loc": {
        "start": {
          "line": 147,
          "column": 88
        },
        "end": {
          "line": 147,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tabCharOnTab",
      "start": 4464,
      "end": 4476,
      "loc": {
        "start": {
          "line": 147,
          "column": 89
        },
        "end": {
          "line": 147,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4477,
      "end": 4480,
      "loc": {
        "start": {
          "line": 147,
          "column": 102
        },
        "end": {
          "line": 147,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 4481,
      "end": 4486,
      "loc": {
        "start": {
          "line": 147,
          "column": 106
        },
        "end": {
          "line": 147,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4486,
      "end": 4487,
      "loc": {
        "start": {
          "line": 147,
          "column": 111
        },
        "end": {
          "line": 147,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4487,
      "end": 4488,
      "loc": {
        "start": {
          "line": 147,
          "column": 112
        },
        "end": {
          "line": 147,
          "column": 113
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4488,
      "end": 4489,
      "loc": {
        "start": {
          "line": 147,
          "column": 113
        },
        "end": {
          "line": 147,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4497,
      "end": 4503,
      "loc": {
        "start": {
          "line": 148,
          "column": 6
        },
        "end": {
          "line": 148,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4504,
      "end": 4505,
      "loc": {
        "start": {
          "line": 148,
          "column": 13
        },
        "end": {
          "line": 148,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4506,
      "end": 4510,
      "loc": {
        "start": {
          "line": 148,
          "column": 15
        },
        "end": {
          "line": 148,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4510,
      "end": 4511,
      "loc": {
        "start": {
          "line": 148,
          "column": 19
        },
        "end": {
          "line": 148,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 4511,
      "end": 4522,
      "loc": {
        "start": {
          "line": 148,
          "column": 20
        },
        "end": {
          "line": 148,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4522,
      "end": 4523,
      "loc": {
        "start": {
          "line": 148,
          "column": 31
        },
        "end": {
          "line": 148,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4523,
      "end": 4529,
      "loc": {
        "start": {
          "line": 148,
          "column": 32
        },
        "end": {
          "line": 148,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4529,
      "end": 4530,
      "loc": {
        "start": {
          "line": 148,
          "column": 38
        },
        "end": {
          "line": 148,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "\t",
      "start": 4531,
      "end": 4535,
      "loc": {
        "start": {
          "line": 148,
          "column": 40
        },
        "end": {
          "line": 148,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4535,
      "end": 4536,
      "loc": {
        "start": {
          "line": 148,
          "column": 44
        },
        "end": {
          "line": 148,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4537,
      "end": 4545,
      "loc": {
        "start": {
          "line": 148,
          "column": 46
        },
        "end": {
          "line": 148,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4545,
      "end": 4546,
      "loc": {
        "start": {
          "line": 148,
          "column": 54
        },
        "end": {
          "line": 148,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 4547,
      "end": 4556,
      "loc": {
        "start": {
          "line": 148,
          "column": 56
        },
        "end": {
          "line": 148,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4556,
      "end": 4557,
      "loc": {
        "start": {
          "line": 148,
          "column": 65
        },
        "end": {
          "line": 148,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4557,
      "end": 4558,
      "loc": {
        "start": {
          "line": 148,
          "column": 66
        },
        "end": {
          "line": 148,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4566,
      "end": 4567,
      "loc": {
        "start": {
          "line": 150,
          "column": 4
        },
        "end": {
          "line": 150,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4568,
      "end": 4572,
      "loc": {
        "start": {
          "line": 150,
          "column": 6
        },
        "end": {
          "line": 150,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4573,
      "end": 4575,
      "loc": {
        "start": {
          "line": 150,
          "column": 11
        },
        "end": {
          "line": 150,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4575,
      "end": 4576,
      "loc": {
        "start": {
          "line": 150,
          "column": 13
        },
        "end": {
          "line": 150,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4576,
      "end": 4577,
      "loc": {
        "start": {
          "line": 150,
          "column": 14
        },
        "end": {
          "line": 150,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4577,
      "end": 4583,
      "loc": {
        "start": {
          "line": 150,
          "column": 15
        },
        "end": {
          "line": 150,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4584,
      "end": 4587,
      "loc": {
        "start": {
          "line": 150,
          "column": 22
        },
        "end": {
          "line": 150,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{enter}",
      "start": 4588,
      "end": 4597,
      "loc": {
        "start": {
          "line": 150,
          "column": 26
        },
        "end": {
          "line": 150,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 4598,
      "end": 4600,
      "loc": {
        "start": {
          "line": 150,
          "column": 36
        },
        "end": {
          "line": 150,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4601,
      "end": 4607,
      "loc": {
        "start": {
          "line": 150,
          "column": 39
        },
        "end": {
          "line": 150,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4608,
      "end": 4611,
      "loc": {
        "start": {
          "line": 150,
          "column": 46
        },
        "end": {
          "line": 150,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadenter}",
      "start": 4612,
      "end": 4627,
      "loc": {
        "start": {
          "line": 150,
          "column": 50
        },
        "end": {
          "line": 150,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4627,
      "end": 4628,
      "loc": {
        "start": {
          "line": 150,
          "column": 65
        },
        "end": {
          "line": 150,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 4629,
      "end": 4631,
      "loc": {
        "start": {
          "line": 150,
          "column": 67
        },
        "end": {
          "line": 150,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4632,
      "end": 4639,
      "loc": {
        "start": {
          "line": 150,
          "column": 70
        },
        "end": {
          "line": 150,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4639,
      "end": 4640,
      "loc": {
        "start": {
          "line": 150,
          "column": 77
        },
        "end": {
          "line": 150,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newLineOnEnter",
      "start": 4640,
      "end": 4654,
      "loc": {
        "start": {
          "line": 150,
          "column": 78
        },
        "end": {
          "line": 150,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4654,
      "end": 4655,
      "loc": {
        "start": {
          "line": 150,
          "column": 92
        },
        "end": {
          "line": 150,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4663,
      "end": 4669,
      "loc": {
        "start": {
          "line": 151,
          "column": 6
        },
        "end": {
          "line": 151,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4670,
      "end": 4671,
      "loc": {
        "start": {
          "line": 151,
          "column": 13
        },
        "end": {
          "line": 151,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4672,
      "end": 4676,
      "loc": {
        "start": {
          "line": 151,
          "column": 15
        },
        "end": {
          "line": 151,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4676,
      "end": 4677,
      "loc": {
        "start": {
          "line": 151,
          "column": 19
        },
        "end": {
          "line": 151,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 4677,
      "end": 4688,
      "loc": {
        "start": {
          "line": 151,
          "column": 20
        },
        "end": {
          "line": 151,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4688,
      "end": 4689,
      "loc": {
        "start": {
          "line": 151,
          "column": 31
        },
        "end": {
          "line": 151,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4689,
      "end": 4695,
      "loc": {
        "start": {
          "line": 151,
          "column": 32
        },
        "end": {
          "line": 151,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4695,
      "end": 4696,
      "loc": {
        "start": {
          "line": 151,
          "column": 38
        },
        "end": {
          "line": 151,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "\n",
      "start": 4697,
      "end": 4701,
      "loc": {
        "start": {
          "line": 151,
          "column": 40
        },
        "end": {
          "line": 151,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4701,
      "end": 4702,
      "loc": {
        "start": {
          "line": 151,
          "column": 44
        },
        "end": {
          "line": 151,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4703,
      "end": 4711,
      "loc": {
        "start": {
          "line": 151,
          "column": 46
        },
        "end": {
          "line": 151,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4711,
      "end": 4712,
      "loc": {
        "start": {
          "line": 151,
          "column": 54
        },
        "end": {
          "line": 151,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 4713,
      "end": 4722,
      "loc": {
        "start": {
          "line": 151,
          "column": 56
        },
        "end": {
          "line": 151,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4722,
      "end": 4723,
      "loc": {
        "start": {
          "line": 151,
          "column": 65
        },
        "end": {
          "line": 151,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4723,
      "end": 4724,
      "loc": {
        "start": {
          "line": 151,
          "column": 66
        },
        "end": {
          "line": 151,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4732,
      "end": 4736,
      "loc": {
        "start": {
          "line": 153,
          "column": 4
        },
        "end": {
          "line": 153,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4737,
      "end": 4739,
      "loc": {
        "start": {
          "line": 153,
          "column": 9
        },
        "end": {
          "line": 153,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4739,
      "end": 4740,
      "loc": {
        "start": {
          "line": 153,
          "column": 11
        },
        "end": {
          "line": 153,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4740,
      "end": 4746,
      "loc": {
        "start": {
          "line": 153,
          "column": 12
        },
        "end": {
          "line": 153,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4746,
      "end": 4747,
      "loc": {
        "start": {
          "line": 153,
          "column": 18
        },
        "end": {
          "line": 153,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "includes",
      "start": 4747,
      "end": 4755,
      "loc": {
        "start": {
          "line": 153,
          "column": 19
        },
        "end": {
          "line": 153,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4755,
      "end": 4756,
      "loc": {
        "start": {
          "line": 153,
          "column": 27
        },
        "end": {
          "line": 153,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "numpad",
      "start": 4756,
      "end": 4764,
      "loc": {
        "start": {
          "line": 153,
          "column": 28
        },
        "end": {
          "line": 153,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4764,
      "end": 4765,
      "loc": {
        "start": {
          "line": 153,
          "column": 36
        },
        "end": {
          "line": 153,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 4766,
      "end": 4768,
      "loc": {
        "start": {
          "line": 153,
          "column": 38
        },
        "end": {
          "line": 153,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Number",
      "start": 4769,
      "end": 4775,
      "loc": {
        "start": {
          "line": 153,
          "column": 41
        },
        "end": {
          "line": 153,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4775,
      "end": 4776,
      "loc": {
        "start": {
          "line": 153,
          "column": 47
        },
        "end": {
          "line": 153,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isInteger",
      "start": 4776,
      "end": 4785,
      "loc": {
        "start": {
          "line": 153,
          "column": 48
        },
        "end": {
          "line": 153,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4785,
      "end": 4786,
      "loc": {
        "start": {
          "line": 153,
          "column": 57
        },
        "end": {
          "line": 153,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Number",
      "start": 4786,
      "end": 4792,
      "loc": {
        "start": {
          "line": 153,
          "column": 58
        },
        "end": {
          "line": 153,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4792,
      "end": 4793,
      "loc": {
        "start": {
          "line": 153,
          "column": 64
        },
        "end": {
          "line": 153,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4793,
      "end": 4799,
      "loc": {
        "start": {
          "line": 153,
          "column": 65
        },
        "end": {
          "line": 153,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4799,
      "end": 4800,
      "loc": {
        "start": {
          "line": 153,
          "column": 71
        },
        "end": {
          "line": 153,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4800,
      "end": 4806,
      "loc": {
        "start": {
          "line": 153,
          "column": 72
        },
        "end": {
          "line": 153,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4806,
      "end": 4807,
      "loc": {
        "start": {
          "line": 153,
          "column": 78
        },
        "end": {
          "line": 153,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 4807,
      "end": 4813,
      "loc": {
        "start": {
          "line": 153,
          "column": 79
        },
        "end": {
          "line": 153,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 4814,
      "end": 4815,
      "loc": {
        "start": {
          "line": 153,
          "column": 86
        },
        "end": {
          "line": 153,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 4816,
      "end": 4817,
      "loc": {
        "start": {
          "line": 153,
          "column": 88
        },
        "end": {
          "line": 153,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4817,
      "end": 4818,
      "loc": {
        "start": {
          "line": 153,
          "column": 89
        },
        "end": {
          "line": 153,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4818,
      "end": 4819,
      "loc": {
        "start": {
          "line": 153,
          "column": 90
        },
        "end": {
          "line": 153,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4819,
      "end": 4820,
      "loc": {
        "start": {
          "line": 153,
          "column": 91
        },
        "end": {
          "line": 153,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4820,
      "end": 4821,
      "loc": {
        "start": {
          "line": 153,
          "column": 92
        },
        "end": {
          "line": 153,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4821,
      "end": 4822,
      "loc": {
        "start": {
          "line": 153,
          "column": 93
        },
        "end": {
          "line": 153,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4830,
      "end": 4836,
      "loc": {
        "start": {
          "line": 154,
          "column": 6
        },
        "end": {
          "line": 154,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4837,
      "end": 4838,
      "loc": {
        "start": {
          "line": 154,
          "column": 13
        },
        "end": {
          "line": 154,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4839,
      "end": 4843,
      "loc": {
        "start": {
          "line": 154,
          "column": 15
        },
        "end": {
          "line": 154,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4843,
      "end": 4844,
      "loc": {
        "start": {
          "line": 154,
          "column": 19
        },
        "end": {
          "line": 154,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 4844,
      "end": 4855,
      "loc": {
        "start": {
          "line": 154,
          "column": 20
        },
        "end": {
          "line": 154,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4855,
      "end": 4856,
      "loc": {
        "start": {
          "line": 154,
          "column": 31
        },
        "end": {
          "line": 154,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4856,
      "end": 4862,
      "loc": {
        "start": {
          "line": 154,
          "column": 32
        },
        "end": {
          "line": 154,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4862,
      "end": 4863,
      "loc": {
        "start": {
          "line": 154,
          "column": 38
        },
        "end": {
          "line": 154,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4864,
      "end": 4870,
      "loc": {
        "start": {
          "line": 154,
          "column": 40
        },
        "end": {
          "line": 154,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4870,
      "end": 4871,
      "loc": {
        "start": {
          "line": 154,
          "column": 46
        },
        "end": {
          "line": 154,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4871,
      "end": 4877,
      "loc": {
        "start": {
          "line": 154,
          "column": 47
        },
        "end": {
          "line": 154,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4877,
      "end": 4878,
      "loc": {
        "start": {
          "line": 154,
          "column": 53
        },
        "end": {
          "line": 154,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 4878,
      "end": 4884,
      "loc": {
        "start": {
          "line": 154,
          "column": 54
        },
        "end": {
          "line": 154,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 4885,
      "end": 4886,
      "loc": {
        "start": {
          "line": 154,
          "column": 61
        },
        "end": {
          "line": 154,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 4887,
      "end": 4888,
      "loc": {
        "start": {
          "line": 154,
          "column": 63
        },
        "end": {
          "line": 154,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4888,
      "end": 4889,
      "loc": {
        "start": {
          "line": 154,
          "column": 64
        },
        "end": {
          "line": 154,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4889,
      "end": 4890,
      "loc": {
        "start": {
          "line": 154,
          "column": 65
        },
        "end": {
          "line": 154,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4891,
      "end": 4899,
      "loc": {
        "start": {
          "line": 154,
          "column": 67
        },
        "end": {
          "line": 154,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4899,
      "end": 4900,
      "loc": {
        "start": {
          "line": 154,
          "column": 75
        },
        "end": {
          "line": 154,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4900,
      "end": 4901,
      "loc": {
        "start": {
          "line": 154,
          "column": 76
        },
        "end": {
          "line": 154,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4907,
      "end": 4908,
      "loc": {
        "start": {
          "line": 155,
          "column": 4
        },
        "end": {
          "line": 155,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4914,
      "end": 4918,
      "loc": {
        "start": {
          "line": 156,
          "column": 4
        },
        "end": {
          "line": 156,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 4919,
      "end": 4921,
      "loc": {
        "start": {
          "line": 156,
          "column": 9
        },
        "end": {
          "line": 156,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4921,
      "end": 4922,
      "loc": {
        "start": {
          "line": 156,
          "column": 11
        },
        "end": {
          "line": 156,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 4922,
      "end": 4928,
      "loc": {
        "start": {
          "line": 156,
          "column": 12
        },
        "end": {
          "line": 156,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 4929,
      "end": 4932,
      "loc": {
        "start": {
          "line": 156,
          "column": 19
        },
        "end": {
          "line": 156,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpaddivide}",
      "start": 4933,
      "end": 4949,
      "loc": {
        "start": {
          "line": 156,
          "column": 23
        },
        "end": {
          "line": 156,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4949,
      "end": 4950,
      "loc": {
        "start": {
          "line": 156,
          "column": 39
        },
        "end": {
          "line": 156,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4958,
      "end": 4964,
      "loc": {
        "start": {
          "line": 157,
          "column": 6
        },
        "end": {
          "line": 157,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4965,
      "end": 4966,
      "loc": {
        "start": {
          "line": 157,
          "column": 13
        },
        "end": {
          "line": 157,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4967,
      "end": 4971,
      "loc": {
        "start": {
          "line": 157,
          "column": 15
        },
        "end": {
          "line": 157,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4971,
      "end": 4972,
      "loc": {
        "start": {
          "line": 157,
          "column": 19
        },
        "end": {
          "line": 157,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 4972,
      "end": 4983,
      "loc": {
        "start": {
          "line": 157,
          "column": 20
        },
        "end": {
          "line": 157,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4983,
      "end": 4984,
      "loc": {
        "start": {
          "line": 157,
          "column": 31
        },
        "end": {
          "line": 157,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 4984,
      "end": 4990,
      "loc": {
        "start": {
          "line": 157,
          "column": 32
        },
        "end": {
          "line": 157,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4990,
      "end": 4991,
      "loc": {
        "start": {
          "line": 157,
          "column": 38
        },
        "end": {
          "line": 157,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "/",
      "start": 4992,
      "end": 4995,
      "loc": {
        "start": {
          "line": 157,
          "column": 40
        },
        "end": {
          "line": 157,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4995,
      "end": 4996,
      "loc": {
        "start": {
          "line": 157,
          "column": 43
        },
        "end": {
          "line": 157,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 4997,
      "end": 5005,
      "loc": {
        "start": {
          "line": 157,
          "column": 45
        },
        "end": {
          "line": 157,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5005,
      "end": 5006,
      "loc": {
        "start": {
          "line": 157,
          "column": 53
        },
        "end": {
          "line": 157,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5007,
      "end": 5016,
      "loc": {
        "start": {
          "line": 157,
          "column": 55
        },
        "end": {
          "line": 157,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5016,
      "end": 5017,
      "loc": {
        "start": {
          "line": 157,
          "column": 64
        },
        "end": {
          "line": 157,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5017,
      "end": 5018,
      "loc": {
        "start": {
          "line": 157,
          "column": 65
        },
        "end": {
          "line": 157,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5026,
      "end": 5030,
      "loc": {
        "start": {
          "line": 159,
          "column": 4
        },
        "end": {
          "line": 159,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5031,
      "end": 5033,
      "loc": {
        "start": {
          "line": 159,
          "column": 9
        },
        "end": {
          "line": 159,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5033,
      "end": 5034,
      "loc": {
        "start": {
          "line": 159,
          "column": 11
        },
        "end": {
          "line": 159,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5034,
      "end": 5040,
      "loc": {
        "start": {
          "line": 159,
          "column": 12
        },
        "end": {
          "line": 159,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5041,
      "end": 5044,
      "loc": {
        "start": {
          "line": 159,
          "column": 19
        },
        "end": {
          "line": 159,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadmultiply}",
      "start": 5045,
      "end": 5063,
      "loc": {
        "start": {
          "line": 159,
          "column": 23
        },
        "end": {
          "line": 159,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5063,
      "end": 5064,
      "loc": {
        "start": {
          "line": 159,
          "column": 41
        },
        "end": {
          "line": 159,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5072,
      "end": 5078,
      "loc": {
        "start": {
          "line": 160,
          "column": 6
        },
        "end": {
          "line": 160,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5079,
      "end": 5080,
      "loc": {
        "start": {
          "line": 160,
          "column": 13
        },
        "end": {
          "line": 160,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5081,
      "end": 5085,
      "loc": {
        "start": {
          "line": 160,
          "column": 15
        },
        "end": {
          "line": 160,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5085,
      "end": 5086,
      "loc": {
        "start": {
          "line": 160,
          "column": 19
        },
        "end": {
          "line": 160,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5086,
      "end": 5097,
      "loc": {
        "start": {
          "line": 160,
          "column": 20
        },
        "end": {
          "line": 160,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5097,
      "end": 5098,
      "loc": {
        "start": {
          "line": 160,
          "column": 31
        },
        "end": {
          "line": 160,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5098,
      "end": 5104,
      "loc": {
        "start": {
          "line": 160,
          "column": 32
        },
        "end": {
          "line": 160,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5104,
      "end": 5105,
      "loc": {
        "start": {
          "line": 160,
          "column": 38
        },
        "end": {
          "line": 160,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "*",
      "start": 5106,
      "end": 5109,
      "loc": {
        "start": {
          "line": 160,
          "column": 40
        },
        "end": {
          "line": 160,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5109,
      "end": 5110,
      "loc": {
        "start": {
          "line": 160,
          "column": 43
        },
        "end": {
          "line": 160,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5111,
      "end": 5119,
      "loc": {
        "start": {
          "line": 160,
          "column": 45
        },
        "end": {
          "line": 160,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5119,
      "end": 5120,
      "loc": {
        "start": {
          "line": 160,
          "column": 53
        },
        "end": {
          "line": 160,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5121,
      "end": 5130,
      "loc": {
        "start": {
          "line": 160,
          "column": 55
        },
        "end": {
          "line": 160,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5130,
      "end": 5131,
      "loc": {
        "start": {
          "line": 160,
          "column": 64
        },
        "end": {
          "line": 160,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5131,
      "end": 5132,
      "loc": {
        "start": {
          "line": 160,
          "column": 65
        },
        "end": {
          "line": 160,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5140,
      "end": 5144,
      "loc": {
        "start": {
          "line": 162,
          "column": 4
        },
        "end": {
          "line": 162,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5145,
      "end": 5147,
      "loc": {
        "start": {
          "line": 162,
          "column": 9
        },
        "end": {
          "line": 162,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5147,
      "end": 5148,
      "loc": {
        "start": {
          "line": 162,
          "column": 11
        },
        "end": {
          "line": 162,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5148,
      "end": 5154,
      "loc": {
        "start": {
          "line": 162,
          "column": 12
        },
        "end": {
          "line": 162,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5155,
      "end": 5158,
      "loc": {
        "start": {
          "line": 162,
          "column": 19
        },
        "end": {
          "line": 162,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadsubtract}",
      "start": 5159,
      "end": 5177,
      "loc": {
        "start": {
          "line": 162,
          "column": 23
        },
        "end": {
          "line": 162,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5177,
      "end": 5178,
      "loc": {
        "start": {
          "line": 162,
          "column": 41
        },
        "end": {
          "line": 162,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5186,
      "end": 5192,
      "loc": {
        "start": {
          "line": 163,
          "column": 6
        },
        "end": {
          "line": 163,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5193,
      "end": 5194,
      "loc": {
        "start": {
          "line": 163,
          "column": 13
        },
        "end": {
          "line": 163,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5195,
      "end": 5199,
      "loc": {
        "start": {
          "line": 163,
          "column": 15
        },
        "end": {
          "line": 163,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5199,
      "end": 5200,
      "loc": {
        "start": {
          "line": 163,
          "column": 19
        },
        "end": {
          "line": 163,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5200,
      "end": 5211,
      "loc": {
        "start": {
          "line": 163,
          "column": 20
        },
        "end": {
          "line": 163,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5211,
      "end": 5212,
      "loc": {
        "start": {
          "line": 163,
          "column": 31
        },
        "end": {
          "line": 163,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5212,
      "end": 5218,
      "loc": {
        "start": {
          "line": 163,
          "column": 32
        },
        "end": {
          "line": 163,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5218,
      "end": 5219,
      "loc": {
        "start": {
          "line": 163,
          "column": 38
        },
        "end": {
          "line": 163,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "-",
      "start": 5220,
      "end": 5223,
      "loc": {
        "start": {
          "line": 163,
          "column": 40
        },
        "end": {
          "line": 163,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5223,
      "end": 5224,
      "loc": {
        "start": {
          "line": 163,
          "column": 43
        },
        "end": {
          "line": 163,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5225,
      "end": 5233,
      "loc": {
        "start": {
          "line": 163,
          "column": 45
        },
        "end": {
          "line": 163,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5233,
      "end": 5234,
      "loc": {
        "start": {
          "line": 163,
          "column": 53
        },
        "end": {
          "line": 163,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5235,
      "end": 5244,
      "loc": {
        "start": {
          "line": 163,
          "column": 55
        },
        "end": {
          "line": 163,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5244,
      "end": 5245,
      "loc": {
        "start": {
          "line": 163,
          "column": 64
        },
        "end": {
          "line": 163,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5245,
      "end": 5246,
      "loc": {
        "start": {
          "line": 163,
          "column": 65
        },
        "end": {
          "line": 163,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5254,
      "end": 5258,
      "loc": {
        "start": {
          "line": 165,
          "column": 4
        },
        "end": {
          "line": 165,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5259,
      "end": 5261,
      "loc": {
        "start": {
          "line": 165,
          "column": 9
        },
        "end": {
          "line": 165,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5261,
      "end": 5262,
      "loc": {
        "start": {
          "line": 165,
          "column": 11
        },
        "end": {
          "line": 165,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5262,
      "end": 5268,
      "loc": {
        "start": {
          "line": 165,
          "column": 12
        },
        "end": {
          "line": 165,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5269,
      "end": 5272,
      "loc": {
        "start": {
          "line": 165,
          "column": 19
        },
        "end": {
          "line": 165,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpadadd}",
      "start": 5273,
      "end": 5286,
      "loc": {
        "start": {
          "line": 165,
          "column": 23
        },
        "end": {
          "line": 165,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5286,
      "end": 5287,
      "loc": {
        "start": {
          "line": 165,
          "column": 36
        },
        "end": {
          "line": 165,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5295,
      "end": 5301,
      "loc": {
        "start": {
          "line": 166,
          "column": 6
        },
        "end": {
          "line": 166,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5302,
      "end": 5303,
      "loc": {
        "start": {
          "line": 166,
          "column": 13
        },
        "end": {
          "line": 166,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5304,
      "end": 5308,
      "loc": {
        "start": {
          "line": 166,
          "column": 15
        },
        "end": {
          "line": 166,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5308,
      "end": 5309,
      "loc": {
        "start": {
          "line": 166,
          "column": 19
        },
        "end": {
          "line": 166,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5309,
      "end": 5320,
      "loc": {
        "start": {
          "line": 166,
          "column": 20
        },
        "end": {
          "line": 166,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5320,
      "end": 5321,
      "loc": {
        "start": {
          "line": 166,
          "column": 31
        },
        "end": {
          "line": 166,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5321,
      "end": 5327,
      "loc": {
        "start": {
          "line": 166,
          "column": 32
        },
        "end": {
          "line": 166,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5327,
      "end": 5328,
      "loc": {
        "start": {
          "line": 166,
          "column": 38
        },
        "end": {
          "line": 166,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "+",
      "start": 5329,
      "end": 5332,
      "loc": {
        "start": {
          "line": 166,
          "column": 40
        },
        "end": {
          "line": 166,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5332,
      "end": 5333,
      "loc": {
        "start": {
          "line": 166,
          "column": 43
        },
        "end": {
          "line": 166,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5334,
      "end": 5342,
      "loc": {
        "start": {
          "line": 166,
          "column": 45
        },
        "end": {
          "line": 166,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5342,
      "end": 5343,
      "loc": {
        "start": {
          "line": 166,
          "column": 53
        },
        "end": {
          "line": 166,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5344,
      "end": 5353,
      "loc": {
        "start": {
          "line": 166,
          "column": 55
        },
        "end": {
          "line": 166,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5353,
      "end": 5354,
      "loc": {
        "start": {
          "line": 166,
          "column": 64
        },
        "end": {
          "line": 166,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5354,
      "end": 5355,
      "loc": {
        "start": {
          "line": 166,
          "column": 65
        },
        "end": {
          "line": 166,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5363,
      "end": 5367,
      "loc": {
        "start": {
          "line": 168,
          "column": 4
        },
        "end": {
          "line": 168,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5368,
      "end": 5370,
      "loc": {
        "start": {
          "line": 168,
          "column": 9
        },
        "end": {
          "line": 168,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5370,
      "end": 5371,
      "loc": {
        "start": {
          "line": 168,
          "column": 11
        },
        "end": {
          "line": 168,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5371,
      "end": 5377,
      "loc": {
        "start": {
          "line": 168,
          "column": 12
        },
        "end": {
          "line": 168,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5378,
      "end": 5381,
      "loc": {
        "start": {
          "line": 168,
          "column": 19
        },
        "end": {
          "line": 168,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{numpaddecimal}",
      "start": 5382,
      "end": 5399,
      "loc": {
        "start": {
          "line": 168,
          "column": 23
        },
        "end": {
          "line": 168,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5399,
      "end": 5400,
      "loc": {
        "start": {
          "line": 168,
          "column": 40
        },
        "end": {
          "line": 168,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5408,
      "end": 5414,
      "loc": {
        "start": {
          "line": 169,
          "column": 6
        },
        "end": {
          "line": 169,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5415,
      "end": 5416,
      "loc": {
        "start": {
          "line": 169,
          "column": 13
        },
        "end": {
          "line": 169,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5417,
      "end": 5421,
      "loc": {
        "start": {
          "line": 169,
          "column": 15
        },
        "end": {
          "line": 169,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5421,
      "end": 5422,
      "loc": {
        "start": {
          "line": 169,
          "column": 19
        },
        "end": {
          "line": 169,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5422,
      "end": 5433,
      "loc": {
        "start": {
          "line": 169,
          "column": 20
        },
        "end": {
          "line": 169,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5433,
      "end": 5434,
      "loc": {
        "start": {
          "line": 169,
          "column": 31
        },
        "end": {
          "line": 169,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5434,
      "end": 5440,
      "loc": {
        "start": {
          "line": 169,
          "column": 32
        },
        "end": {
          "line": 169,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5440,
      "end": 5441,
      "loc": {
        "start": {
          "line": 169,
          "column": 38
        },
        "end": {
          "line": 169,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 5442,
      "end": 5445,
      "loc": {
        "start": {
          "line": 169,
          "column": 40
        },
        "end": {
          "line": 169,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5445,
      "end": 5446,
      "loc": {
        "start": {
          "line": 169,
          "column": 43
        },
        "end": {
          "line": 169,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5447,
      "end": 5455,
      "loc": {
        "start": {
          "line": 169,
          "column": 45
        },
        "end": {
          "line": 169,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5455,
      "end": 5456,
      "loc": {
        "start": {
          "line": 169,
          "column": 53
        },
        "end": {
          "line": 169,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5457,
      "end": 5466,
      "loc": {
        "start": {
          "line": 169,
          "column": 55
        },
        "end": {
          "line": 169,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5466,
      "end": 5467,
      "loc": {
        "start": {
          "line": 169,
          "column": 64
        },
        "end": {
          "line": 169,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5467,
      "end": 5468,
      "loc": {
        "start": {
          "line": 169,
          "column": 65
        },
        "end": {
          "line": 169,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5476,
      "end": 5480,
      "loc": {
        "start": {
          "line": 171,
          "column": 4
        },
        "end": {
          "line": 171,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5481,
      "end": 5483,
      "loc": {
        "start": {
          "line": 171,
          "column": 9
        },
        "end": {
          "line": 171,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5483,
      "end": 5484,
      "loc": {
        "start": {
          "line": 171,
          "column": 11
        },
        "end": {
          "line": 171,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5484,
      "end": 5490,
      "loc": {
        "start": {
          "line": 171,
          "column": 12
        },
        "end": {
          "line": 171,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5491,
      "end": 5494,
      "loc": {
        "start": {
          "line": 171,
          "column": 19
        },
        "end": {
          "line": 171,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{",
      "start": 5495,
      "end": 5498,
      "loc": {
        "start": {
          "line": 171,
          "column": 23
        },
        "end": {
          "line": 171,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 5499,
      "end": 5501,
      "loc": {
        "start": {
          "line": 171,
          "column": 27
        },
        "end": {
          "line": 171,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5502,
      "end": 5508,
      "loc": {
        "start": {
          "line": 171,
          "column": 30
        },
        "end": {
          "line": 171,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5509,
      "end": 5512,
      "loc": {
        "start": {
          "line": 171,
          "column": 37
        },
        "end": {
          "line": 171,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "}",
      "start": 5513,
      "end": 5516,
      "loc": {
        "start": {
          "line": 171,
          "column": 41
        },
        "end": {
          "line": 171,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5516,
      "end": 5517,
      "loc": {
        "start": {
          "line": 171,
          "column": 44
        },
        "end": {
          "line": 171,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5525,
      "end": 5531,
      "loc": {
        "start": {
          "line": 172,
          "column": 6
        },
        "end": {
          "line": 172,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5532,
      "end": 5533,
      "loc": {
        "start": {
          "line": 172,
          "column": 13
        },
        "end": {
          "line": 172,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5534,
      "end": 5538,
      "loc": {
        "start": {
          "line": 172,
          "column": 15
        },
        "end": {
          "line": 172,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5538,
      "end": 5539,
      "loc": {
        "start": {
          "line": 172,
          "column": 19
        },
        "end": {
          "line": 172,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5539,
      "end": 5550,
      "loc": {
        "start": {
          "line": 172,
          "column": 20
        },
        "end": {
          "line": 172,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5550,
      "end": 5551,
      "loc": {
        "start": {
          "line": 172,
          "column": 31
        },
        "end": {
          "line": 172,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5551,
      "end": 5557,
      "loc": {
        "start": {
          "line": 172,
          "column": 32
        },
        "end": {
          "line": 172,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5557,
      "end": 5558,
      "loc": {
        "start": {
          "line": 172,
          "column": 38
        },
        "end": {
          "line": 172,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5559,
      "end": 5565,
      "loc": {
        "start": {
          "line": 172,
          "column": 40
        },
        "end": {
          "line": 172,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5565,
      "end": 5566,
      "loc": {
        "start": {
          "line": 172,
          "column": 46
        },
        "end": {
          "line": 172,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5567,
      "end": 5575,
      "loc": {
        "start": {
          "line": 172,
          "column": 48
        },
        "end": {
          "line": 172,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5575,
      "end": 5576,
      "loc": {
        "start": {
          "line": 172,
          "column": 56
        },
        "end": {
          "line": 172,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5577,
      "end": 5586,
      "loc": {
        "start": {
          "line": 172,
          "column": 58
        },
        "end": {
          "line": 172,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5586,
      "end": 5587,
      "loc": {
        "start": {
          "line": 172,
          "column": 67
        },
        "end": {
          "line": 172,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5587,
      "end": 5588,
      "loc": {
        "start": {
          "line": 172,
          "column": 68
        },
        "end": {
          "line": 172,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5596,
      "end": 5600,
      "loc": {
        "start": {
          "line": 174,
          "column": 4
        },
        "end": {
          "line": 174,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 5601,
      "end": 5603,
      "loc": {
        "start": {
          "line": 174,
          "column": 9
        },
        "end": {
          "line": 174,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5603,
      "end": 5604,
      "loc": {
        "start": {
          "line": 174,
          "column": 11
        },
        "end": {
          "line": 174,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 5604,
      "end": 5605,
      "loc": {
        "start": {
          "line": 174,
          "column": 12
        },
        "end": {
          "line": 174,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5605,
      "end": 5611,
      "loc": {
        "start": {
          "line": 174,
          "column": 13
        },
        "end": {
          "line": 174,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5611,
      "end": 5612,
      "loc": {
        "start": {
          "line": 174,
          "column": 19
        },
        "end": {
          "line": 174,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "includes",
      "start": 5612,
      "end": 5620,
      "loc": {
        "start": {
          "line": 174,
          "column": 20
        },
        "end": {
          "line": 174,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5620,
      "end": 5621,
      "loc": {
        "start": {
          "line": 174,
          "column": 28
        },
        "end": {
          "line": 174,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "{",
      "start": 5621,
      "end": 5624,
      "loc": {
        "start": {
          "line": 174,
          "column": 29
        },
        "end": {
          "line": 174,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5624,
      "end": 5625,
      "loc": {
        "start": {
          "line": 174,
          "column": 32
        },
        "end": {
          "line": 174,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 5626,
      "end": 5628,
      "loc": {
        "start": {
          "line": 174,
          "column": 34
        },
        "end": {
          "line": 174,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 5629,
      "end": 5630,
      "loc": {
        "start": {
          "line": 174,
          "column": 37
        },
        "end": {
          "line": 174,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5630,
      "end": 5636,
      "loc": {
        "start": {
          "line": 174,
          "column": 38
        },
        "end": {
          "line": 174,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5636,
      "end": 5637,
      "loc": {
        "start": {
          "line": 174,
          "column": 44
        },
        "end": {
          "line": 174,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "includes",
      "start": 5637,
      "end": 5645,
      "loc": {
        "start": {
          "line": 174,
          "column": 45
        },
        "end": {
          "line": 174,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5645,
      "end": 5646,
      "loc": {
        "start": {
          "line": 174,
          "column": 53
        },
        "end": {
          "line": 174,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "}",
      "start": 5646,
      "end": 5649,
      "loc": {
        "start": {
          "line": 174,
          "column": 54
        },
        "end": {
          "line": 174,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5649,
      "end": 5650,
      "loc": {
        "start": {
          "line": 174,
          "column": 57
        },
        "end": {
          "line": 174,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5650,
      "end": 5651,
      "loc": {
        "start": {
          "line": 174,
          "column": 58
        },
        "end": {
          "line": 174,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5659,
      "end": 5665,
      "loc": {
        "start": {
          "line": 175,
          "column": 6
        },
        "end": {
          "line": 175,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5666,
      "end": 5667,
      "loc": {
        "start": {
          "line": 175,
          "column": 13
        },
        "end": {
          "line": 175,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5668,
      "end": 5672,
      "loc": {
        "start": {
          "line": 175,
          "column": 15
        },
        "end": {
          "line": 175,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5672,
      "end": 5673,
      "loc": {
        "start": {
          "line": 175,
          "column": 19
        },
        "end": {
          "line": 175,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 5673,
      "end": 5684,
      "loc": {
        "start": {
          "line": 175,
          "column": 20
        },
        "end": {
          "line": 175,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5684,
      "end": 5685,
      "loc": {
        "start": {
          "line": 175,
          "column": 31
        },
        "end": {
          "line": 175,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5685,
      "end": 5691,
      "loc": {
        "start": {
          "line": 175,
          "column": 32
        },
        "end": {
          "line": 175,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5691,
      "end": 5692,
      "loc": {
        "start": {
          "line": 175,
          "column": 38
        },
        "end": {
          "line": 175,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "button",
      "start": 5693,
      "end": 5699,
      "loc": {
        "start": {
          "line": 175,
          "column": 40
        },
        "end": {
          "line": 175,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5699,
      "end": 5700,
      "loc": {
        "start": {
          "line": 175,
          "column": 46
        },
        "end": {
          "line": 175,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPos",
      "start": 5701,
      "end": 5709,
      "loc": {
        "start": {
          "line": 175,
          "column": 48
        },
        "end": {
          "line": 175,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5709,
      "end": 5710,
      "loc": {
        "start": {
          "line": 175,
          "column": 56
        },
        "end": {
          "line": 175,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 5711,
      "end": 5720,
      "loc": {
        "start": {
          "line": 175,
          "column": 58
        },
        "end": {
          "line": 175,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5720,
      "end": 5721,
      "loc": {
        "start": {
          "line": 175,
          "column": 67
        },
        "end": {
          "line": 175,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5721,
      "end": 5722,
      "loc": {
        "start": {
          "line": 175,
          "column": 68
        },
        "end": {
          "line": 175,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 5730,
      "end": 5736,
      "loc": {
        "start": {
          "line": 177,
          "column": 4
        },
        "end": {
          "line": 177,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 5737,
      "end": 5743,
      "loc": {
        "start": {
          "line": 177,
          "column": 11
        },
        "end": {
          "line": 177,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5743,
      "end": 5744,
      "loc": {
        "start": {
          "line": 177,
          "column": 17
        },
        "end": {
          "line": 177,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5748,
      "end": 5749,
      "loc": {
        "start": {
          "line": 178,
          "column": 2
        },
        "end": {
          "line": 178,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Moves the cursor position by a given amount\r\n   * \r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
      "start": 5755,
      "end": 5997,
      "loc": {
        "start": {
          "line": 180,
          "column": 2
        },
        "end": {
          "line": 185,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 6001,
      "end": 6015,
      "loc": {
        "start": {
          "line": 186,
          "column": 2
        },
        "end": {
          "line": 186,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6015,
      "end": 6016,
      "loc": {
        "start": {
          "line": 186,
          "column": 16
        },
        "end": {
          "line": 186,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6016,
      "end": 6022,
      "loc": {
        "start": {
          "line": 186,
          "column": 17
        },
        "end": {
          "line": 186,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6022,
      "end": 6023,
      "loc": {
        "start": {
          "line": 186,
          "column": 23
        },
        "end": {
          "line": 186,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "minus",
      "start": 6024,
      "end": 6029,
      "loc": {
        "start": {
          "line": 186,
          "column": 25
        },
        "end": {
          "line": 186,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6029,
      "end": 6030,
      "loc": {
        "start": {
          "line": 186,
          "column": 30
        },
        "end": {
          "line": 186,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6030,
      "end": 6031,
      "loc": {
        "start": {
          "line": 186,
          "column": 31
        },
        "end": {
          "line": 186,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6037,
      "end": 6039,
      "loc": {
        "start": {
          "line": 187,
          "column": 4
        },
        "end": {
          "line": 187,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6039,
      "end": 6040,
      "loc": {
        "start": {
          "line": 187,
          "column": 6
        },
        "end": {
          "line": 187,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6040,
      "end": 6044,
      "loc": {
        "start": {
          "line": 187,
          "column": 7
        },
        "end": {
          "line": 187,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6044,
      "end": 6045,
      "loc": {
        "start": {
          "line": 187,
          "column": 11
        },
        "end": {
          "line": 187,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 6045,
      "end": 6067,
      "loc": {
        "start": {
          "line": 187,
          "column": 12
        },
        "end": {
          "line": 187,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6067,
      "end": 6068,
      "loc": {
        "start": {
          "line": 187,
          "column": 34
        },
        "end": {
          "line": 187,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 6068,
      "end": 6075,
      "loc": {
        "start": {
          "line": 187,
          "column": 35
        },
        "end": {
          "line": 187,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6075,
      "end": 6076,
      "loc": {
        "start": {
          "line": 187,
          "column": 42
        },
        "end": {
          "line": 187,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "syncInstanceInputs",
      "start": 6076,
      "end": 6094,
      "loc": {
        "start": {
          "line": 187,
          "column": 43
        },
        "end": {
          "line": 187,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6094,
      "end": 6095,
      "loc": {
        "start": {
          "line": 187,
          "column": 61
        },
        "end": {
          "line": 187,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6095,
      "end": 6096,
      "loc": {
        "start": {
          "line": 187,
          "column": 62
        },
        "end": {
          "line": 187,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6104,
      "end": 6108,
      "loc": {
        "start": {
          "line": 188,
          "column": 6
        },
        "end": {
          "line": 188,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6108,
      "end": 6109,
      "loc": {
        "start": {
          "line": 188,
          "column": 10
        },
        "end": {
          "line": 188,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 6109,
      "end": 6131,
      "loc": {
        "start": {
          "line": 188,
          "column": 11
        },
        "end": {
          "line": 188,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6131,
      "end": 6132,
      "loc": {
        "start": {
          "line": 188,
          "column": 33
        },
        "end": {
          "line": 188,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "dispatch",
      "start": 6132,
      "end": 6140,
      "loc": {
        "start": {
          "line": 188,
          "column": 34
        },
        "end": {
          "line": 188,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6140,
      "end": 6141,
      "loc": {
        "start": {
          "line": 188,
          "column": 42
        },
        "end": {
          "line": 188,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6141,
      "end": 6149,
      "loc": {
        "start": {
          "line": 188,
          "column": 43
        },
        "end": {
          "line": 188,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6150,
      "end": 6152,
      "loc": {
        "start": {
          "line": 188,
          "column": 52
        },
        "end": {
          "line": 188,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6153,
      "end": 6154,
      "loc": {
        "start": {
          "line": 188,
          "column": 55
        },
        "end": {
          "line": 188,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6164,
      "end": 6168,
      "loc": {
        "start": {
          "line": 189,
          "column": 8
        },
        "end": {
          "line": 189,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6168,
      "end": 6169,
      "loc": {
        "start": {
          "line": 189,
          "column": 12
        },
        "end": {
          "line": 189,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPosAction",
      "start": 6169,
      "end": 6189,
      "loc": {
        "start": {
          "line": 189,
          "column": 13
        },
        "end": {
          "line": 189,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6189,
      "end": 6190,
      "loc": {
        "start": {
          "line": 189,
          "column": 33
        },
        "end": {
          "line": 189,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6190,
      "end": 6198,
      "loc": {
        "start": {
          "line": 189,
          "column": 34
        },
        "end": {
          "line": 189,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6198,
      "end": 6199,
      "loc": {
        "start": {
          "line": 189,
          "column": 42
        },
        "end": {
          "line": 189,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6200,
      "end": 6206,
      "loc": {
        "start": {
          "line": 189,
          "column": 44
        },
        "end": {
          "line": 189,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6206,
      "end": 6207,
      "loc": {
        "start": {
          "line": 189,
          "column": 50
        },
        "end": {
          "line": 189,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "minus",
      "start": 6208,
      "end": 6213,
      "loc": {
        "start": {
          "line": 189,
          "column": 52
        },
        "end": {
          "line": 189,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6213,
      "end": 6214,
      "loc": {
        "start": {
          "line": 189,
          "column": 57
        },
        "end": {
          "line": 189,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6214,
      "end": 6215,
      "loc": {
        "start": {
          "line": 189,
          "column": 58
        },
        "end": {
          "line": 189,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6223,
      "end": 6224,
      "loc": {
        "start": {
          "line": 190,
          "column": 6
        },
        "end": {
          "line": 190,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6224,
      "end": 6225,
      "loc": {
        "start": {
          "line": 190,
          "column": 7
        },
        "end": {
          "line": 190,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6225,
      "end": 6226,
      "loc": {
        "start": {
          "line": 190,
          "column": 8
        },
        "end": {
          "line": 190,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6232,
      "end": 6233,
      "loc": {
        "start": {
          "line": 191,
          "column": 4
        },
        "end": {
          "line": 191,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 6234,
      "end": 6238,
      "loc": {
        "start": {
          "line": 191,
          "column": 6
        },
        "end": {
          "line": 191,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6239,
      "end": 6240,
      "loc": {
        "start": {
          "line": 191,
          "column": 11
        },
        "end": {
          "line": 191,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6248,
      "end": 6252,
      "loc": {
        "start": {
          "line": 192,
          "column": 6
        },
        "end": {
          "line": 192,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6252,
      "end": 6253,
      "loc": {
        "start": {
          "line": 192,
          "column": 10
        },
        "end": {
          "line": 192,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPosAction",
      "start": 6253,
      "end": 6273,
      "loc": {
        "start": {
          "line": 192,
          "column": 11
        },
        "end": {
          "line": 192,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6273,
      "end": 6274,
      "loc": {
        "start": {
          "line": 192,
          "column": 31
        },
        "end": {
          "line": 192,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6274,
      "end": 6278,
      "loc": {
        "start": {
          "line": 192,
          "column": 32
        },
        "end": {
          "line": 192,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6278,
      "end": 6279,
      "loc": {
        "start": {
          "line": 192,
          "column": 36
        },
        "end": {
          "line": 192,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 6279,
      "end": 6301,
      "loc": {
        "start": {
          "line": 192,
          "column": 37
        },
        "end": {
          "line": 192,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6301,
      "end": 6302,
      "loc": {
        "start": {
          "line": 192,
          "column": 59
        },
        "end": {
          "line": 192,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6303,
      "end": 6309,
      "loc": {
        "start": {
          "line": 192,
          "column": 61
        },
        "end": {
          "line": 192,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6309,
      "end": 6310,
      "loc": {
        "start": {
          "line": 192,
          "column": 67
        },
        "end": {
          "line": 192,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "minus",
      "start": 6311,
      "end": 6316,
      "loc": {
        "start": {
          "line": 192,
          "column": 69
        },
        "end": {
          "line": 192,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6316,
      "end": 6317,
      "loc": {
        "start": {
          "line": 192,
          "column": 74
        },
        "end": {
          "line": 192,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6317,
      "end": 6318,
      "loc": {
        "start": {
          "line": 192,
          "column": 75
        },
        "end": {
          "line": 192,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6324,
      "end": 6325,
      "loc": {
        "start": {
          "line": 193,
          "column": 4
        },
        "end": {
          "line": 193,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6329,
      "end": 6330,
      "loc": {
        "start": {
          "line": 194,
          "column": 2
        },
        "end": {
          "line": 194,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Action method of updateCaretPos\r\n   * \r\n   * @param  {object} instance The instance whose position should be updated\r\n   * @param  {number} length Represents by how many characters the input should be moved\r\n   * @param  {boolean} minus Whether the cursor should be moved to the left or not.\r\n   ",
      "start": 6336,
      "end": 6644,
      "loc": {
        "start": {
          "line": 196,
          "column": 2
        },
        "end": {
          "line": 202,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPosAction",
      "start": 6648,
      "end": 6668,
      "loc": {
        "start": {
          "line": 203,
          "column": 2
        },
        "end": {
          "line": 203,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6668,
      "end": 6669,
      "loc": {
        "start": {
          "line": 203,
          "column": 22
        },
        "end": {
          "line": 203,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6669,
      "end": 6677,
      "loc": {
        "start": {
          "line": 203,
          "column": 23
        },
        "end": {
          "line": 203,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6677,
      "end": 6678,
      "loc": {
        "start": {
          "line": 203,
          "column": 31
        },
        "end": {
          "line": 203,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6679,
      "end": 6685,
      "loc": {
        "start": {
          "line": 203,
          "column": 33
        },
        "end": {
          "line": 203,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6685,
      "end": 6686,
      "loc": {
        "start": {
          "line": 203,
          "column": 39
        },
        "end": {
          "line": 203,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "minus",
      "start": 6687,
      "end": 6692,
      "loc": {
        "start": {
          "line": 203,
          "column": 41
        },
        "end": {
          "line": 203,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6692,
      "end": 6693,
      "loc": {
        "start": {
          "line": 203,
          "column": 46
        },
        "end": {
          "line": 203,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6693,
      "end": 6694,
      "loc": {
        "start": {
          "line": 203,
          "column": 47
        },
        "end": {
          "line": 203,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6700,
      "end": 6702,
      "loc": {
        "start": {
          "line": 204,
          "column": 4
        },
        "end": {
          "line": 204,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6702,
      "end": 6703,
      "loc": {
        "start": {
          "line": 204,
          "column": 6
        },
        "end": {
          "line": 204,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "minus",
      "start": 6703,
      "end": 6708,
      "loc": {
        "start": {
          "line": 204,
          "column": 7
        },
        "end": {
          "line": 204,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6708,
      "end": 6709,
      "loc": {
        "start": {
          "line": 204,
          "column": 12
        },
        "end": {
          "line": 204,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6709,
      "end": 6710,
      "loc": {
        "start": {
          "line": 204,
          "column": 13
        },
        "end": {
          "line": 204,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6718,
      "end": 6720,
      "loc": {
        "start": {
          "line": 205,
          "column": 6
        },
        "end": {
          "line": 205,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6720,
      "end": 6721,
      "loc": {
        "start": {
          "line": 205,
          "column": 8
        },
        "end": {
          "line": 205,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6721,
      "end": 6729,
      "loc": {
        "start": {
          "line": 205,
          "column": 9
        },
        "end": {
          "line": 205,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6729,
      "end": 6730,
      "loc": {
        "start": {
          "line": 205,
          "column": 17
        },
        "end": {
          "line": 205,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6730,
      "end": 6743,
      "loc": {
        "start": {
          "line": 205,
          "column": 18
        },
        "end": {
          "line": 205,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 6744,
      "end": 6745,
      "loc": {
        "start": {
          "line": 205,
          "column": 32
        },
        "end": {
          "line": 205,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 6746,
      "end": 6747,
      "loc": {
        "start": {
          "line": 205,
          "column": 34
        },
        "end": {
          "line": 205,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6747,
      "end": 6748,
      "loc": {
        "start": {
          "line": 205,
          "column": 35
        },
        "end": {
          "line": 205,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6756,
      "end": 6764,
      "loc": {
        "start": {
          "line": 206,
          "column": 6
        },
        "end": {
          "line": 206,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6764,
      "end": 6765,
      "loc": {
        "start": {
          "line": 206,
          "column": 14
        },
        "end": {
          "line": 206,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6765,
      "end": 6778,
      "loc": {
        "start": {
          "line": 206,
          "column": 15
        },
        "end": {
          "line": 206,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6779,
      "end": 6780,
      "loc": {
        "start": {
          "line": 206,
          "column": 29
        },
        "end": {
          "line": 206,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6781,
      "end": 6789,
      "loc": {
        "start": {
          "line": 206,
          "column": 31
        },
        "end": {
          "line": 206,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6789,
      "end": 6790,
      "loc": {
        "start": {
          "line": 206,
          "column": 39
        },
        "end": {
          "line": 206,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6790,
      "end": 6803,
      "loc": {
        "start": {
          "line": 206,
          "column": 40
        },
        "end": {
          "line": 206,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 6804,
      "end": 6805,
      "loc": {
        "start": {
          "line": 206,
          "column": 54
        },
        "end": {
          "line": 206,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6806,
      "end": 6812,
      "loc": {
        "start": {
          "line": 206,
          "column": 56
        },
        "end": {
          "line": 206,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6812,
      "end": 6813,
      "loc": {
        "start": {
          "line": 206,
          "column": 62
        },
        "end": {
          "line": 206,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6819,
      "end": 6820,
      "loc": {
        "start": {
          "line": 207,
          "column": 4
        },
        "end": {
          "line": 207,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 6821,
      "end": 6825,
      "loc": {
        "start": {
          "line": 207,
          "column": 6
        },
        "end": {
          "line": 207,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6826,
      "end": 6827,
      "loc": {
        "start": {
          "line": 207,
          "column": 11
        },
        "end": {
          "line": 207,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6835,
      "end": 6843,
      "loc": {
        "start": {
          "line": 208,
          "column": 6
        },
        "end": {
          "line": 208,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6843,
      "end": 6844,
      "loc": {
        "start": {
          "line": 208,
          "column": 14
        },
        "end": {
          "line": 208,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6844,
      "end": 6857,
      "loc": {
        "start": {
          "line": 208,
          "column": 15
        },
        "end": {
          "line": 208,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6858,
      "end": 6859,
      "loc": {
        "start": {
          "line": 208,
          "column": 29
        },
        "end": {
          "line": 208,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6860,
      "end": 6868,
      "loc": {
        "start": {
          "line": 208,
          "column": 31
        },
        "end": {
          "line": 208,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6868,
      "end": 6869,
      "loc": {
        "start": {
          "line": 208,
          "column": 39
        },
        "end": {
          "line": 208,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6869,
      "end": 6882,
      "loc": {
        "start": {
          "line": 208,
          "column": 40
        },
        "end": {
          "line": 208,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 6883,
      "end": 6884,
      "loc": {
        "start": {
          "line": 208,
          "column": 54
        },
        "end": {
          "line": 208,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 6885,
      "end": 6891,
      "loc": {
        "start": {
          "line": 208,
          "column": 56
        },
        "end": {
          "line": 208,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6891,
      "end": 6892,
      "loc": {
        "start": {
          "line": 208,
          "column": 62
        },
        "end": {
          "line": 208,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6898,
      "end": 6899,
      "loc": {
        "start": {
          "line": 209,
          "column": 4
        },
        "end": {
          "line": 209,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 6907,
      "end": 6909,
      "loc": {
        "start": {
          "line": 211,
          "column": 4
        },
        "end": {
          "line": 211,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6909,
      "end": 6910,
      "loc": {
        "start": {
          "line": 211,
          "column": 6
        },
        "end": {
          "line": 211,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6910,
      "end": 6914,
      "loc": {
        "start": {
          "line": 211,
          "column": 7
        },
        "end": {
          "line": 211,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6914,
      "end": 6915,
      "loc": {
        "start": {
          "line": 211,
          "column": 11
        },
        "end": {
          "line": 211,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 6915,
      "end": 6937,
      "loc": {
        "start": {
          "line": 211,
          "column": 12
        },
        "end": {
          "line": 211,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6937,
      "end": 6938,
      "loc": {
        "start": {
          "line": 211,
          "column": 34
        },
        "end": {
          "line": 211,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 6938,
      "end": 6945,
      "loc": {
        "start": {
          "line": 211,
          "column": 35
        },
        "end": {
          "line": 211,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6945,
      "end": 6946,
      "loc": {
        "start": {
          "line": 211,
          "column": 42
        },
        "end": {
          "line": 211,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "debug",
      "start": 6946,
      "end": 6951,
      "loc": {
        "start": {
          "line": 211,
          "column": 43
        },
        "end": {
          "line": 211,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6951,
      "end": 6952,
      "loc": {
        "start": {
          "line": 211,
          "column": 48
        },
        "end": {
          "line": 211,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6952,
      "end": 6953,
      "loc": {
        "start": {
          "line": 211,
          "column": 49
        },
        "end": {
          "line": 211,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "console",
      "start": 6961,
      "end": 6968,
      "loc": {
        "start": {
          "line": 212,
          "column": 6
        },
        "end": {
          "line": 212,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6968,
      "end": 6969,
      "loc": {
        "start": {
          "line": 212,
          "column": 13
        },
        "end": {
          "line": 212,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "log",
      "start": 6969,
      "end": 6972,
      "loc": {
        "start": {
          "line": 212,
          "column": 14
        },
        "end": {
          "line": 212,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6972,
      "end": 6973,
      "loc": {
        "start": {
          "line": 212,
          "column": 17
        },
        "end": {
          "line": 212,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "Caret at:",
      "start": 6973,
      "end": 6984,
      "loc": {
        "start": {
          "line": 212,
          "column": 18
        },
        "end": {
          "line": 212,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6984,
      "end": 6985,
      "loc": {
        "start": {
          "line": 212,
          "column": 29
        },
        "end": {
          "line": 212,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 6986,
      "end": 6994,
      "loc": {
        "start": {
          "line": 212,
          "column": 31
        },
        "end": {
          "line": 212,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6994,
      "end": 6995,
      "loc": {
        "start": {
          "line": 212,
          "column": 39
        },
        "end": {
          "line": 212,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 6995,
      "end": 7008,
      "loc": {
        "start": {
          "line": 212,
          "column": 40
        },
        "end": {
          "line": 212,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7008,
      "end": 7009,
      "loc": {
        "start": {
          "line": 212,
          "column": 53
        },
        "end": {
          "line": 212,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7010,
      "end": 7011,
      "loc": {
        "start": {
          "line": 212,
          "column": 55
        },
        "end": {
          "line": 212,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(",
      "start": 7011,
      "end": 7012,
      "loc": {
        "start": {
          "line": 212,
          "column": 56
        },
        "end": {
          "line": 212,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "${",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7012,
      "end": 7014,
      "loc": {
        "start": {
          "line": 212,
          "column": 57
        },
        "end": {
          "line": 212,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 7014,
      "end": 7022,
      "loc": {
        "start": {
          "line": 212,
          "column": 59
        },
        "end": {
          "line": 212,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7022,
      "end": 7023,
      "loc": {
        "start": {
          "line": 212,
          "column": 67
        },
        "end": {
          "line": 212,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keyboardDOMClass",
      "start": 7023,
      "end": 7039,
      "loc": {
        "start": {
          "line": 212,
          "column": 68
        },
        "end": {
          "line": 212,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7039,
      "end": 7040,
      "loc": {
        "start": {
          "line": 212,
          "column": 84
        },
        "end": {
          "line": 212,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "template",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ")",
      "start": 7040,
      "end": 7041,
      "loc": {
        "start": {
          "line": 212,
          "column": 85
        },
        "end": {
          "line": 212,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "`",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7041,
      "end": 7042,
      "loc": {
        "start": {
          "line": 212,
          "column": 86
        },
        "end": {
          "line": 212,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7042,
      "end": 7043,
      "loc": {
        "start": {
          "line": 212,
          "column": 87
        },
        "end": {
          "line": 212,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7043,
      "end": 7044,
      "loc": {
        "start": {
          "line": 212,
          "column": 88
        },
        "end": {
          "line": 212,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7050,
      "end": 7051,
      "loc": {
        "start": {
          "line": 213,
          "column": 4
        },
        "end": {
          "line": 213,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7055,
      "end": 7056,
      "loc": {
        "start": {
          "line": 214,
          "column": 2
        },
        "end": {
          "line": 214,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Adds a string to the input at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {string} string The string to add\r\n   * @param  {number} position The (cursor) position where the string should be added\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 7062,
      "end": 7391,
      "loc": {
        "start": {
          "line": 216,
          "column": 2
        },
        "end": {
          "line": 223,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addStringAt",
      "start": 7395,
      "end": 7406,
      "loc": {
        "start": {
          "line": 224,
          "column": 2
        },
        "end": {
          "line": 224,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7406,
      "end": 7407,
      "loc": {
        "start": {
          "line": 224,
          "column": 13
        },
        "end": {
          "line": 224,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 7407,
      "end": 7413,
      "loc": {
        "start": {
          "line": 224,
          "column": 14
        },
        "end": {
          "line": 224,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7413,
      "end": 7414,
      "loc": {
        "start": {
          "line": 224,
          "column": 20
        },
        "end": {
          "line": 224,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 7415,
      "end": 7421,
      "loc": {
        "start": {
          "line": 224,
          "column": 22
        },
        "end": {
          "line": 224,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7421,
      "end": 7422,
      "loc": {
        "start": {
          "line": 224,
          "column": 28
        },
        "end": {
          "line": 224,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 7423,
      "end": 7431,
      "loc": {
        "start": {
          "line": 224,
          "column": 30
        },
        "end": {
          "line": 224,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7431,
      "end": 7432,
      "loc": {
        "start": {
          "line": 224,
          "column": 38
        },
        "end": {
          "line": 224,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 7433,
      "end": 7442,
      "loc": {
        "start": {
          "line": 224,
          "column": 40
        },
        "end": {
          "line": 224,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7442,
      "end": 7443,
      "loc": {
        "start": {
          "line": 224,
          "column": 49
        },
        "end": {
          "line": 224,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7443,
      "end": 7444,
      "loc": {
        "start": {
          "line": 224,
          "column": 50
        },
        "end": {
          "line": 224,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 7450,
      "end": 7453,
      "loc": {
        "start": {
          "line": 225,
          "column": 4
        },
        "end": {
          "line": 225,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 7454,
      "end": 7460,
      "loc": {
        "start": {
          "line": 225,
          "column": 8
        },
        "end": {
          "line": 225,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7460,
      "end": 7461,
      "loc": {
        "start": {
          "line": 225,
          "column": 14
        },
        "end": {
          "line": 225,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7469,
      "end": 7471,
      "loc": {
        "start": {
          "line": 227,
          "column": 4
        },
        "end": {
          "line": 227,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7471,
      "end": 7472,
      "loc": {
        "start": {
          "line": 227,
          "column": 6
        },
        "end": {
          "line": 227,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 7472,
      "end": 7473,
      "loc": {
        "start": {
          "line": 227,
          "column": 7
        },
        "end": {
          "line": 227,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 7473,
      "end": 7481,
      "loc": {
        "start": {
          "line": 227,
          "column": 8
        },
        "end": {
          "line": 227,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 7482,
      "end": 7484,
      "loc": {
        "start": {
          "line": 227,
          "column": 17
        },
        "end": {
          "line": 227,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 7485,
      "end": 7493,
      "loc": {
        "start": {
          "line": 227,
          "column": 20
        },
        "end": {
          "line": 227,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 7494,
      "end": 7497,
      "loc": {
        "start": {
          "line": 227,
          "column": 29
        },
        "end": {
          "line": 227,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 7498,
      "end": 7499,
      "loc": {
        "start": {
          "line": 227,
          "column": 33
        },
        "end": {
          "line": 227,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7499,
      "end": 7500,
      "loc": {
        "start": {
          "line": 227,
          "column": 34
        },
        "end": {
          "line": 227,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7500,
      "end": 7501,
      "loc": {
        "start": {
          "line": 227,
          "column": 35
        },
        "end": {
          "line": 227,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 7509,
      "end": 7515,
      "loc": {
        "start": {
          "line": 228,
          "column": 6
        },
        "end": {
          "line": 228,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7516,
      "end": 7517,
      "loc": {
        "start": {
          "line": 228,
          "column": 13
        },
        "end": {
          "line": 228,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 7518,
      "end": 7524,
      "loc": {
        "start": {
          "line": 228,
          "column": 15
        },
        "end": {
          "line": 228,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7525,
      "end": 7526,
      "loc": {
        "start": {
          "line": 228,
          "column": 22
        },
        "end": {
          "line": 228,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 7527,
      "end": 7533,
      "loc": {
        "start": {
          "line": 228,
          "column": 24
        },
        "end": {
          "line": 228,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7533,
      "end": 7534,
      "loc": {
        "start": {
          "line": 228,
          "column": 30
        },
        "end": {
          "line": 228,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7540,
      "end": 7541,
      "loc": {
        "start": {
          "line": 229,
          "column": 4
        },
        "end": {
          "line": 229,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 7542,
      "end": 7546,
      "loc": {
        "start": {
          "line": 229,
          "column": 6
        },
        "end": {
          "line": 229,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7547,
      "end": 7548,
      "loc": {
        "start": {
          "line": 229,
          "column": 11
        },
        "end": {
          "line": 229,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 7556,
      "end": 7562,
      "loc": {
        "start": {
          "line": 230,
          "column": 6
        },
        "end": {
          "line": 230,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7563,
      "end": 7564,
      "loc": {
        "start": {
          "line": 230,
          "column": 13
        },
        "end": {
          "line": 230,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7565,
      "end": 7566,
      "loc": {
        "start": {
          "line": 230,
          "column": 15
        },
        "end": {
          "line": 230,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 7566,
      "end": 7572,
      "loc": {
        "start": {
          "line": 230,
          "column": 16
        },
        "end": {
          "line": 230,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7572,
      "end": 7573,
      "loc": {
        "start": {
          "line": 230,
          "column": 22
        },
        "end": {
          "line": 230,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 7573,
      "end": 7578,
      "loc": {
        "start": {
          "line": 230,
          "column": 23
        },
        "end": {
          "line": 230,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7578,
      "end": 7579,
      "loc": {
        "start": {
          "line": 230,
          "column": 28
        },
        "end": {
          "line": 230,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 7579,
      "end": 7580,
      "loc": {
        "start": {
          "line": 230,
          "column": 29
        },
        "end": {
          "line": 230,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7580,
      "end": 7581,
      "loc": {
        "start": {
          "line": 230,
          "column": 30
        },
        "end": {
          "line": 230,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 7582,
      "end": 7590,
      "loc": {
        "start": {
          "line": 230,
          "column": 32
        },
        "end": {
          "line": 230,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7590,
      "end": 7591,
      "loc": {
        "start": {
          "line": 230,
          "column": 40
        },
        "end": {
          "line": 230,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7591,
      "end": 7592,
      "loc": {
        "start": {
          "line": 230,
          "column": 41
        },
        "end": {
          "line": 230,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 7593,
      "end": 7599,
      "loc": {
        "start": {
          "line": 230,
          "column": 43
        },
        "end": {
          "line": 230,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7599,
      "end": 7600,
      "loc": {
        "start": {
          "line": 230,
          "column": 49
        },
        "end": {
          "line": 230,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 7601,
      "end": 7607,
      "loc": {
        "start": {
          "line": 230,
          "column": 51
        },
        "end": {
          "line": 230,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7607,
      "end": 7608,
      "loc": {
        "start": {
          "line": 230,
          "column": 57
        },
        "end": {
          "line": 230,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 7608,
      "end": 7613,
      "loc": {
        "start": {
          "line": 230,
          "column": 58
        },
        "end": {
          "line": 230,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7613,
      "end": 7614,
      "loc": {
        "start": {
          "line": 230,
          "column": 63
        },
        "end": {
          "line": 230,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 7614,
      "end": 7622,
      "loc": {
        "start": {
          "line": 230,
          "column": 64
        },
        "end": {
          "line": 230,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7622,
      "end": 7623,
      "loc": {
        "start": {
          "line": 230,
          "column": 72
        },
        "end": {
          "line": 230,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7623,
      "end": 7624,
      "loc": {
        "start": {
          "line": 230,
          "column": 73
        },
        "end": {
          "line": 230,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7624,
      "end": 7625,
      "loc": {
        "start": {
          "line": 230,
          "column": 74
        },
        "end": {
          "line": 230,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "join",
      "start": 7625,
      "end": 7629,
      "loc": {
        "start": {
          "line": 230,
          "column": 75
        },
        "end": {
          "line": 230,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7629,
      "end": 7630,
      "loc": {
        "start": {
          "line": 230,
          "column": 79
        },
        "end": {
          "line": 230,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 7630,
      "end": 7632,
      "loc": {
        "start": {
          "line": 230,
          "column": 80
        },
        "end": {
          "line": 230,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7632,
      "end": 7633,
      "loc": {
        "start": {
          "line": 230,
          "column": 82
        },
        "end": {
          "line": 230,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7633,
      "end": 7634,
      "loc": {
        "start": {
          "line": 230,
          "column": 83
        },
        "end": {
          "line": 230,
          "column": 84
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n       * Avoid caret position change when maxLength is set\r\n       ",
      "start": 7644,
      "end": 7718,
      "loc": {
        "start": {
          "line": 232,
          "column": 6
        },
        "end": {
          "line": 234,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7726,
      "end": 7728,
      "loc": {
        "start": {
          "line": 235,
          "column": 6
        },
        "end": {
          "line": 235,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7728,
      "end": 7729,
      "loc": {
        "start": {
          "line": 235,
          "column": 8
        },
        "end": {
          "line": 235,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 7729,
      "end": 7730,
      "loc": {
        "start": {
          "line": 235,
          "column": 9
        },
        "end": {
          "line": 235,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7730,
      "end": 7734,
      "loc": {
        "start": {
          "line": 235,
          "column": 10
        },
        "end": {
          "line": 235,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7734,
      "end": 7735,
      "loc": {
        "start": {
          "line": 235,
          "column": 14
        },
        "end": {
          "line": 235,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isMaxLengthReached",
      "start": 7735,
      "end": 7753,
      "loc": {
        "start": {
          "line": 235,
          "column": 15
        },
        "end": {
          "line": 235,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7753,
      "end": 7754,
      "loc": {
        "start": {
          "line": 235,
          "column": 33
        },
        "end": {
          "line": 235,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7754,
      "end": 7755,
      "loc": {
        "start": {
          "line": 235,
          "column": 34
        },
        "end": {
          "line": 235,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7755,
      "end": 7756,
      "loc": {
        "start": {
          "line": 235,
          "column": 35
        },
        "end": {
          "line": 235,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7756,
      "end": 7757,
      "loc": {
        "start": {
          "line": 235,
          "column": 36
        },
        "end": {
          "line": 235,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 7767,
      "end": 7769,
      "loc": {
        "start": {
          "line": 236,
          "column": 8
        },
        "end": {
          "line": 236,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7769,
      "end": 7770,
      "loc": {
        "start": {
          "line": 236,
          "column": 10
        },
        "end": {
          "line": 236,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 7770,
      "end": 7779,
      "loc": {
        "start": {
          "line": 236,
          "column": 11
        },
        "end": {
          "line": 236,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7779,
      "end": 7780,
      "loc": {
        "start": {
          "line": 236,
          "column": 20
        },
        "end": {
          "line": 236,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7781,
      "end": 7785,
      "loc": {
        "start": {
          "line": 236,
          "column": 22
        },
        "end": {
          "line": 236,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7785,
      "end": 7786,
      "loc": {
        "start": {
          "line": 236,
          "column": 26
        },
        "end": {
          "line": 236,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 7786,
      "end": 7800,
      "loc": {
        "start": {
          "line": 236,
          "column": 27
        },
        "end": {
          "line": 236,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7800,
      "end": 7801,
      "loc": {
        "start": {
          "line": 236,
          "column": 41
        },
        "end": {
          "line": 236,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 7801,
      "end": 7807,
      "loc": {
        "start": {
          "line": 236,
          "column": 42
        },
        "end": {
          "line": 236,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7807,
      "end": 7808,
      "loc": {
        "start": {
          "line": 236,
          "column": 48
        },
        "end": {
          "line": 236,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 7808,
      "end": 7814,
      "loc": {
        "start": {
          "line": 236,
          "column": 49
        },
        "end": {
          "line": 236,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7814,
      "end": 7815,
      "loc": {
        "start": {
          "line": 236,
          "column": 55
        },
        "end": {
          "line": 236,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7815,
      "end": 7816,
      "loc": {
        "start": {
          "line": 236,
          "column": 56
        },
        "end": {
          "line": 236,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7824,
      "end": 7825,
      "loc": {
        "start": {
          "line": 237,
          "column": 6
        },
        "end": {
          "line": 237,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7833,
      "end": 7834,
      "loc": {
        "start": {
          "line": 239,
          "column": 4
        },
        "end": {
          "line": 239,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 7842,
      "end": 7848,
      "loc": {
        "start": {
          "line": 241,
          "column": 4
        },
        "end": {
          "line": 241,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 7849,
      "end": 7855,
      "loc": {
        "start": {
          "line": 241,
          "column": 11
        },
        "end": {
          "line": 241,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7855,
      "end": 7856,
      "loc": {
        "start": {
          "line": 241,
          "column": 17
        },
        "end": {
          "line": 241,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7860,
      "end": 7861,
      "loc": {
        "start": {
          "line": 242,
          "column": 2
        },
        "end": {
          "line": 242,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Removes an amount of characters at a given position\r\n   * \r\n   * @param  {string} source The source input\r\n   * @param  {number} position The (cursor) position from where the characters should be removed\r\n   * @param  {boolean} moveCaret Whether to update simple-keyboard's cursor\r\n   ",
      "start": 7867,
      "end": 8164,
      "loc": {
        "start": {
          "line": 244,
          "column": 2
        },
        "end": {
          "line": 250,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeAt",
      "start": 8168,
      "end": 8176,
      "loc": {
        "start": {
          "line": 251,
          "column": 2
        },
        "end": {
          "line": 251,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8176,
      "end": 8177,
      "loc": {
        "start": {
          "line": 251,
          "column": 10
        },
        "end": {
          "line": 251,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8177,
      "end": 8183,
      "loc": {
        "start": {
          "line": 251,
          "column": 11
        },
        "end": {
          "line": 251,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8183,
      "end": 8184,
      "loc": {
        "start": {
          "line": 251,
          "column": 17
        },
        "end": {
          "line": 251,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8185,
      "end": 8193,
      "loc": {
        "start": {
          "line": 251,
          "column": 19
        },
        "end": {
          "line": 251,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8193,
      "end": 8194,
      "loc": {
        "start": {
          "line": 251,
          "column": 27
        },
        "end": {
          "line": 251,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 8195,
      "end": 8204,
      "loc": {
        "start": {
          "line": 251,
          "column": 29
        },
        "end": {
          "line": 251,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8204,
      "end": 8205,
      "loc": {
        "start": {
          "line": 251,
          "column": 38
        },
        "end": {
          "line": 251,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8205,
      "end": 8206,
      "loc": {
        "start": {
          "line": 251,
          "column": 39
        },
        "end": {
          "line": 251,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8212,
      "end": 8214,
      "loc": {
        "start": {
          "line": 252,
          "column": 4
        },
        "end": {
          "line": 252,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8214,
      "end": 8215,
      "loc": {
        "start": {
          "line": 252,
          "column": 6
        },
        "end": {
          "line": 252,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 8215,
      "end": 8219,
      "loc": {
        "start": {
          "line": 252,
          "column": 7
        },
        "end": {
          "line": 252,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8219,
      "end": 8220,
      "loc": {
        "start": {
          "line": 252,
          "column": 11
        },
        "end": {
          "line": 252,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "simpleKeyboardInstance",
      "start": 8220,
      "end": 8242,
      "loc": {
        "start": {
          "line": 252,
          "column": 12
        },
        "end": {
          "line": 252,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8242,
      "end": 8243,
      "loc": {
        "start": {
          "line": 252,
          "column": 34
        },
        "end": {
          "line": 252,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "caretPosition",
      "start": 8243,
      "end": 8256,
      "loc": {
        "start": {
          "line": 252,
          "column": 35
        },
        "end": {
          "line": 252,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8257,
      "end": 8260,
      "loc": {
        "start": {
          "line": 252,
          "column": 49
        },
        "end": {
          "line": 252,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8261,
      "end": 8262,
      "loc": {
        "start": {
          "line": 252,
          "column": 53
        },
        "end": {
          "line": 252,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8262,
      "end": 8263,
      "loc": {
        "start": {
          "line": 252,
          "column": 54
        },
        "end": {
          "line": 252,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8263,
      "end": 8264,
      "loc": {
        "start": {
          "line": 252,
          "column": 55
        },
        "end": {
          "line": 252,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 8272,
      "end": 8278,
      "loc": {
        "start": {
          "line": 253,
          "column": 6
        },
        "end": {
          "line": 253,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8279,
      "end": 8285,
      "loc": {
        "start": {
          "line": 253,
          "column": 13
        },
        "end": {
          "line": 253,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8285,
      "end": 8286,
      "loc": {
        "start": {
          "line": 253,
          "column": 19
        },
        "end": {
          "line": 253,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8292,
      "end": 8293,
      "loc": {
        "start": {
          "line": 254,
          "column": 4
        },
        "end": {
          "line": 254,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 8301,
      "end": 8304,
      "loc": {
        "start": {
          "line": 256,
          "column": 4
        },
        "end": {
          "line": 256,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 8305,
      "end": 8311,
      "loc": {
        "start": {
          "line": 256,
          "column": 8
        },
        "end": {
          "line": 256,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8311,
      "end": 8312,
      "loc": {
        "start": {
          "line": 256,
          "column": 14
        },
        "end": {
          "line": 256,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 8318,
      "end": 8321,
      "loc": {
        "start": {
          "line": 257,
          "column": 4
        },
        "end": {
          "line": 257,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "prevTwoChars",
      "start": 8322,
      "end": 8334,
      "loc": {
        "start": {
          "line": 257,
          "column": 8
        },
        "end": {
          "line": 257,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8334,
      "end": 8335,
      "loc": {
        "start": {
          "line": 257,
          "column": 20
        },
        "end": {
          "line": 257,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 8341,
      "end": 8344,
      "loc": {
        "start": {
          "line": 258,
          "column": 4
        },
        "end": {
          "line": 258,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatched",
      "start": 8345,
      "end": 8357,
      "loc": {
        "start": {
          "line": 258,
          "column": 8
        },
        "end": {
          "line": 258,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8357,
      "end": 8358,
      "loc": {
        "start": {
          "line": 258,
          "column": 20
        },
        "end": {
          "line": 258,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 8364,
      "end": 8367,
      "loc": {
        "start": {
          "line": 259,
          "column": 4
        },
        "end": {
          "line": 259,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatchedReg",
      "start": 8368,
      "end": 8383,
      "loc": {
        "start": {
          "line": 259,
          "column": 8
        },
        "end": {
          "line": 259,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8384,
      "end": 8385,
      "loc": {
        "start": {
          "line": 259,
          "column": 24
        },
        "end": {
          "line": 259,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])",
        "flags": "g"
      },
      "start": 8386,
      "end": 8421,
      "loc": {
        "start": {
          "line": 259,
          "column": 26
        },
        "end": {
          "line": 259,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8421,
      "end": 8422,
      "loc": {
        "start": {
          "line": 259,
          "column": 61
        },
        "end": {
          "line": 259,
          "column": 62
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n     * Emojis are made out of two characters, so we must take a custom approach to trim them.\r\n     * For more info: https://mathiasbynens.be/notes/javascript-unicode\r\n     ",
      "start": 8430,
      "end": 8610,
      "loc": {
        "start": {
          "line": 261,
          "column": 4
        },
        "end": {
          "line": 264,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8616,
      "end": 8618,
      "loc": {
        "start": {
          "line": 265,
          "column": 4
        },
        "end": {
          "line": 265,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8618,
      "end": 8619,
      "loc": {
        "start": {
          "line": 265,
          "column": 6
        },
        "end": {
          "line": 265,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8619,
      "end": 8627,
      "loc": {
        "start": {
          "line": 265,
          "column": 7
        },
        "end": {
          "line": 265,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 8628,
      "end": 8630,
      "loc": {
        "start": {
          "line": 265,
          "column": 16
        },
        "end": {
          "line": 265,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8631,
      "end": 8639,
      "loc": {
        "start": {
          "line": 265,
          "column": 19
        },
        "end": {
          "line": 265,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">=",
      "start": 8640,
      "end": 8642,
      "loc": {
        "start": {
          "line": 265,
          "column": 28
        },
        "end": {
          "line": 265,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8643,
      "end": 8644,
      "loc": {
        "start": {
          "line": 265,
          "column": 31
        },
        "end": {
          "line": 265,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8644,
      "end": 8645,
      "loc": {
        "start": {
          "line": 265,
          "column": 32
        },
        "end": {
          "line": 265,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8645,
      "end": 8646,
      "loc": {
        "start": {
          "line": 265,
          "column": 33
        },
        "end": {
          "line": 265,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "prevTwoChars",
      "start": 8654,
      "end": 8666,
      "loc": {
        "start": {
          "line": 266,
          "column": 6
        },
        "end": {
          "line": 266,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8667,
      "end": 8668,
      "loc": {
        "start": {
          "line": 266,
          "column": 19
        },
        "end": {
          "line": 266,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8669,
      "end": 8675,
      "loc": {
        "start": {
          "line": 266,
          "column": 21
        },
        "end": {
          "line": 266,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8675,
      "end": 8676,
      "loc": {
        "start": {
          "line": 266,
          "column": 27
        },
        "end": {
          "line": 266,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substring",
      "start": 8676,
      "end": 8685,
      "loc": {
        "start": {
          "line": 266,
          "column": 28
        },
        "end": {
          "line": 266,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8685,
      "end": 8686,
      "loc": {
        "start": {
          "line": 266,
          "column": 37
        },
        "end": {
          "line": 266,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8686,
      "end": 8694,
      "loc": {
        "start": {
          "line": 266,
          "column": 38
        },
        "end": {
          "line": 266,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 8695,
      "end": 8696,
      "loc": {
        "start": {
          "line": 266,
          "column": 47
        },
        "end": {
          "line": 266,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 8697,
      "end": 8698,
      "loc": {
        "start": {
          "line": 266,
          "column": 49
        },
        "end": {
          "line": 266,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8698,
      "end": 8699,
      "loc": {
        "start": {
          "line": 266,
          "column": 50
        },
        "end": {
          "line": 266,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8700,
      "end": 8708,
      "loc": {
        "start": {
          "line": 266,
          "column": 52
        },
        "end": {
          "line": 266,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8708,
      "end": 8709,
      "loc": {
        "start": {
          "line": 266,
          "column": 60
        },
        "end": {
          "line": 266,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatched",
      "start": 8717,
      "end": 8729,
      "loc": {
        "start": {
          "line": 267,
          "column": 6
        },
        "end": {
          "line": 267,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8730,
      "end": 8731,
      "loc": {
        "start": {
          "line": 267,
          "column": 19
        },
        "end": {
          "line": 267,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "prevTwoChars",
      "start": 8732,
      "end": 8744,
      "loc": {
        "start": {
          "line": 267,
          "column": 21
        },
        "end": {
          "line": 267,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8744,
      "end": 8745,
      "loc": {
        "start": {
          "line": 267,
          "column": 33
        },
        "end": {
          "line": 267,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 8745,
      "end": 8750,
      "loc": {
        "start": {
          "line": 267,
          "column": 34
        },
        "end": {
          "line": 267,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8750,
      "end": 8751,
      "loc": {
        "start": {
          "line": 267,
          "column": 39
        },
        "end": {
          "line": 267,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatchedReg",
      "start": 8751,
      "end": 8766,
      "loc": {
        "start": {
          "line": 267,
          "column": 40
        },
        "end": {
          "line": 267,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8766,
      "end": 8767,
      "loc": {
        "start": {
          "line": 267,
          "column": 55
        },
        "end": {
          "line": 267,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8767,
      "end": 8768,
      "loc": {
        "start": {
          "line": 267,
          "column": 56
        },
        "end": {
          "line": 267,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8778,
      "end": 8780,
      "loc": {
        "start": {
          "line": 269,
          "column": 6
        },
        "end": {
          "line": 269,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8780,
      "end": 8781,
      "loc": {
        "start": {
          "line": 269,
          "column": 8
        },
        "end": {
          "line": 269,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatched",
      "start": 8781,
      "end": 8793,
      "loc": {
        "start": {
          "line": 269,
          "column": 9
        },
        "end": {
          "line": 269,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8793,
      "end": 8794,
      "loc": {
        "start": {
          "line": 269,
          "column": 21
        },
        "end": {
          "line": 269,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8794,
      "end": 8795,
      "loc": {
        "start": {
          "line": 269,
          "column": 22
        },
        "end": {
          "line": 269,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 8805,
      "end": 8811,
      "loc": {
        "start": {
          "line": 270,
          "column": 8
        },
        "end": {
          "line": 270,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8812,
      "end": 8813,
      "loc": {
        "start": {
          "line": 270,
          "column": 15
        },
        "end": {
          "line": 270,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8814,
      "end": 8820,
      "loc": {
        "start": {
          "line": 270,
          "column": 17
        },
        "end": {
          "line": 270,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8820,
      "end": 8821,
      "loc": {
        "start": {
          "line": 270,
          "column": 23
        },
        "end": {
          "line": 270,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substr",
      "start": 8821,
      "end": 8827,
      "loc": {
        "start": {
          "line": 270,
          "column": 24
        },
        "end": {
          "line": 270,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8827,
      "end": 8828,
      "loc": {
        "start": {
          "line": 270,
          "column": 30
        },
        "end": {
          "line": 270,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8828,
      "end": 8829,
      "loc": {
        "start": {
          "line": 270,
          "column": 31
        },
        "end": {
          "line": 270,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8829,
      "end": 8830,
      "loc": {
        "start": {
          "line": 270,
          "column": 32
        },
        "end": {
          "line": 270,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8831,
      "end": 8832,
      "loc": {
        "start": {
          "line": 270,
          "column": 34
        },
        "end": {
          "line": 270,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8832,
      "end": 8840,
      "loc": {
        "start": {
          "line": 270,
          "column": 35
        },
        "end": {
          "line": 270,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 8841,
      "end": 8842,
      "loc": {
        "start": {
          "line": 270,
          "column": 44
        },
        "end": {
          "line": 270,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 8843,
      "end": 8844,
      "loc": {
        "start": {
          "line": 270,
          "column": 46
        },
        "end": {
          "line": 270,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8844,
      "end": 8845,
      "loc": {
        "start": {
          "line": 270,
          "column": 47
        },
        "end": {
          "line": 270,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8845,
      "end": 8846,
      "loc": {
        "start": {
          "line": 270,
          "column": 48
        },
        "end": {
          "line": 270,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 8847,
      "end": 8848,
      "loc": {
        "start": {
          "line": 270,
          "column": 50
        },
        "end": {
          "line": 270,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8849,
      "end": 8855,
      "loc": {
        "start": {
          "line": 270,
          "column": 52
        },
        "end": {
          "line": 270,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8855,
      "end": 8856,
      "loc": {
        "start": {
          "line": 270,
          "column": 58
        },
        "end": {
          "line": 270,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substr",
      "start": 8856,
      "end": 8862,
      "loc": {
        "start": {
          "line": 270,
          "column": 59
        },
        "end": {
          "line": 270,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8862,
      "end": 8863,
      "loc": {
        "start": {
          "line": 270,
          "column": 65
        },
        "end": {
          "line": 270,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8863,
      "end": 8871,
      "loc": {
        "start": {
          "line": 270,
          "column": 66
        },
        "end": {
          "line": 270,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8871,
      "end": 8872,
      "loc": {
        "start": {
          "line": 270,
          "column": 74
        },
        "end": {
          "line": 270,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8872,
      "end": 8873,
      "loc": {
        "start": {
          "line": 270,
          "column": 75
        },
        "end": {
          "line": 270,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 8883,
      "end": 8885,
      "loc": {
        "start": {
          "line": 271,
          "column": 8
        },
        "end": {
          "line": 271,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8885,
      "end": 8886,
      "loc": {
        "start": {
          "line": 271,
          "column": 10
        },
        "end": {
          "line": 271,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 8886,
      "end": 8895,
      "loc": {
        "start": {
          "line": 271,
          "column": 11
        },
        "end": {
          "line": 271,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8895,
      "end": 8896,
      "loc": {
        "start": {
          "line": 271,
          "column": 20
        },
        "end": {
          "line": 271,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 8897,
      "end": 8901,
      "loc": {
        "start": {
          "line": 271,
          "column": 22
        },
        "end": {
          "line": 271,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8901,
      "end": 8902,
      "loc": {
        "start": {
          "line": 271,
          "column": 26
        },
        "end": {
          "line": 271,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 8902,
      "end": 8916,
      "loc": {
        "start": {
          "line": 271,
          "column": 27
        },
        "end": {
          "line": 271,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8916,
      "end": 8917,
      "loc": {
        "start": {
          "line": 271,
          "column": 41
        },
        "end": {
          "line": 271,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 8917,
      "end": 8918,
      "loc": {
        "start": {
          "line": 271,
          "column": 42
        },
        "end": {
          "line": 271,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8918,
      "end": 8919,
      "loc": {
        "start": {
          "line": 271,
          "column": 43
        },
        "end": {
          "line": 271,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 8920,
      "end": 8924,
      "loc": {
        "start": {
          "line": 271,
          "column": 45
        },
        "end": {
          "line": 271,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8924,
      "end": 8925,
      "loc": {
        "start": {
          "line": 271,
          "column": 49
        },
        "end": {
          "line": 271,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8925,
      "end": 8926,
      "loc": {
        "start": {
          "line": 271,
          "column": 50
        },
        "end": {
          "line": 271,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8934,
      "end": 8935,
      "loc": {
        "start": {
          "line": 272,
          "column": 6
        },
        "end": {
          "line": 272,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 8936,
      "end": 8940,
      "loc": {
        "start": {
          "line": 272,
          "column": 8
        },
        "end": {
          "line": 272,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8941,
      "end": 8942,
      "loc": {
        "start": {
          "line": 272,
          "column": 13
        },
        "end": {
          "line": 272,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 8952,
      "end": 8958,
      "loc": {
        "start": {
          "line": 273,
          "column": 8
        },
        "end": {
          "line": 273,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8959,
      "end": 8960,
      "loc": {
        "start": {
          "line": 273,
          "column": 15
        },
        "end": {
          "line": 273,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8961,
      "end": 8967,
      "loc": {
        "start": {
          "line": 273,
          "column": 17
        },
        "end": {
          "line": 273,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8967,
      "end": 8968,
      "loc": {
        "start": {
          "line": 273,
          "column": 23
        },
        "end": {
          "line": 273,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substr",
      "start": 8968,
      "end": 8974,
      "loc": {
        "start": {
          "line": 273,
          "column": 24
        },
        "end": {
          "line": 273,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8974,
      "end": 8975,
      "loc": {
        "start": {
          "line": 273,
          "column": 30
        },
        "end": {
          "line": 273,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 8975,
      "end": 8976,
      "loc": {
        "start": {
          "line": 273,
          "column": 31
        },
        "end": {
          "line": 273,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8976,
      "end": 8977,
      "loc": {
        "start": {
          "line": 273,
          "column": 32
        },
        "end": {
          "line": 273,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8978,
      "end": 8979,
      "loc": {
        "start": {
          "line": 273,
          "column": 34
        },
        "end": {
          "line": 273,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 8979,
      "end": 8987,
      "loc": {
        "start": {
          "line": 273,
          "column": 35
        },
        "end": {
          "line": 273,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 8988,
      "end": 8989,
      "loc": {
        "start": {
          "line": 273,
          "column": 44
        },
        "end": {
          "line": 273,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 8990,
      "end": 8991,
      "loc": {
        "start": {
          "line": 273,
          "column": 46
        },
        "end": {
          "line": 273,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8991,
      "end": 8992,
      "loc": {
        "start": {
          "line": 273,
          "column": 47
        },
        "end": {
          "line": 273,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8992,
      "end": 8993,
      "loc": {
        "start": {
          "line": 273,
          "column": 48
        },
        "end": {
          "line": 273,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 8994,
      "end": 8995,
      "loc": {
        "start": {
          "line": 273,
          "column": 50
        },
        "end": {
          "line": 273,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8996,
      "end": 9002,
      "loc": {
        "start": {
          "line": 273,
          "column": 52
        },
        "end": {
          "line": 273,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9002,
      "end": 9003,
      "loc": {
        "start": {
          "line": 273,
          "column": 58
        },
        "end": {
          "line": 273,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substr",
      "start": 9003,
      "end": 9009,
      "loc": {
        "start": {
          "line": 273,
          "column": 59
        },
        "end": {
          "line": 273,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9009,
      "end": 9010,
      "loc": {
        "start": {
          "line": 273,
          "column": 65
        },
        "end": {
          "line": 273,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "position",
      "start": 9010,
      "end": 9018,
      "loc": {
        "start": {
          "line": 273,
          "column": 66
        },
        "end": {
          "line": 273,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9018,
      "end": 9019,
      "loc": {
        "start": {
          "line": 273,
          "column": 74
        },
        "end": {
          "line": 273,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9019,
      "end": 9020,
      "loc": {
        "start": {
          "line": 273,
          "column": 75
        },
        "end": {
          "line": 273,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9030,
      "end": 9032,
      "loc": {
        "start": {
          "line": 274,
          "column": 8
        },
        "end": {
          "line": 274,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9032,
      "end": 9033,
      "loc": {
        "start": {
          "line": 274,
          "column": 10
        },
        "end": {
          "line": 274,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 9033,
      "end": 9042,
      "loc": {
        "start": {
          "line": 274,
          "column": 11
        },
        "end": {
          "line": 274,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9042,
      "end": 9043,
      "loc": {
        "start": {
          "line": 274,
          "column": 20
        },
        "end": {
          "line": 274,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9044,
      "end": 9048,
      "loc": {
        "start": {
          "line": 274,
          "column": 22
        },
        "end": {
          "line": 274,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9048,
      "end": 9049,
      "loc": {
        "start": {
          "line": 274,
          "column": 26
        },
        "end": {
          "line": 274,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 9049,
      "end": 9063,
      "loc": {
        "start": {
          "line": 274,
          "column": 27
        },
        "end": {
          "line": 274,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9063,
      "end": 9064,
      "loc": {
        "start": {
          "line": 274,
          "column": 41
        },
        "end": {
          "line": 274,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 9064,
      "end": 9065,
      "loc": {
        "start": {
          "line": 274,
          "column": 42
        },
        "end": {
          "line": 274,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9065,
      "end": 9066,
      "loc": {
        "start": {
          "line": 274,
          "column": 43
        },
        "end": {
          "line": 274,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 9067,
      "end": 9071,
      "loc": {
        "start": {
          "line": 274,
          "column": 45
        },
        "end": {
          "line": 274,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9071,
      "end": 9072,
      "loc": {
        "start": {
          "line": 274,
          "column": 49
        },
        "end": {
          "line": 274,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9072,
      "end": 9073,
      "loc": {
        "start": {
          "line": 274,
          "column": 50
        },
        "end": {
          "line": 274,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9081,
      "end": 9082,
      "loc": {
        "start": {
          "line": 275,
          "column": 6
        },
        "end": {
          "line": 275,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9088,
      "end": 9089,
      "loc": {
        "start": {
          "line": 276,
          "column": 4
        },
        "end": {
          "line": 276,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 9090,
      "end": 9094,
      "loc": {
        "start": {
          "line": 276,
          "column": 6
        },
        "end": {
          "line": 276,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9095,
      "end": 9096,
      "loc": {
        "start": {
          "line": 276,
          "column": 11
        },
        "end": {
          "line": 276,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "prevTwoChars",
      "start": 9104,
      "end": 9116,
      "loc": {
        "start": {
          "line": 277,
          "column": 6
        },
        "end": {
          "line": 277,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9117,
      "end": 9118,
      "loc": {
        "start": {
          "line": 277,
          "column": 19
        },
        "end": {
          "line": 277,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 9119,
      "end": 9125,
      "loc": {
        "start": {
          "line": 277,
          "column": 21
        },
        "end": {
          "line": 277,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9125,
      "end": 9126,
      "loc": {
        "start": {
          "line": 277,
          "column": 27
        },
        "end": {
          "line": 277,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 9126,
      "end": 9131,
      "loc": {
        "start": {
          "line": 277,
          "column": 28
        },
        "end": {
          "line": 277,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9131,
      "end": 9132,
      "loc": {
        "start": {
          "line": 277,
          "column": 33
        },
        "end": {
          "line": 277,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 9132,
      "end": 9133,
      "loc": {
        "start": {
          "line": 277,
          "column": 34
        },
        "end": {
          "line": 277,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 9133,
      "end": 9134,
      "loc": {
        "start": {
          "line": 277,
          "column": 35
        },
        "end": {
          "line": 277,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9134,
      "end": 9135,
      "loc": {
        "start": {
          "line": 277,
          "column": 36
        },
        "end": {
          "line": 277,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9135,
      "end": 9136,
      "loc": {
        "start": {
          "line": 277,
          "column": 37
        },
        "end": {
          "line": 277,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatched",
      "start": 9144,
      "end": 9156,
      "loc": {
        "start": {
          "line": 278,
          "column": 6
        },
        "end": {
          "line": 278,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9157,
      "end": 9158,
      "loc": {
        "start": {
          "line": 278,
          "column": 19
        },
        "end": {
          "line": 278,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "prevTwoChars",
      "start": 9159,
      "end": 9171,
      "loc": {
        "start": {
          "line": 278,
          "column": 21
        },
        "end": {
          "line": 278,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9171,
      "end": 9172,
      "loc": {
        "start": {
          "line": 278,
          "column": 33
        },
        "end": {
          "line": 278,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 9172,
      "end": 9177,
      "loc": {
        "start": {
          "line": 278,
          "column": 34
        },
        "end": {
          "line": 278,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9177,
      "end": 9178,
      "loc": {
        "start": {
          "line": 278,
          "column": 39
        },
        "end": {
          "line": 278,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatchedReg",
      "start": 9178,
      "end": 9193,
      "loc": {
        "start": {
          "line": 278,
          "column": 40
        },
        "end": {
          "line": 278,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9193,
      "end": 9194,
      "loc": {
        "start": {
          "line": 278,
          "column": 55
        },
        "end": {
          "line": 278,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9194,
      "end": 9195,
      "loc": {
        "start": {
          "line": 278,
          "column": 56
        },
        "end": {
          "line": 278,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9205,
      "end": 9207,
      "loc": {
        "start": {
          "line": 280,
          "column": 6
        },
        "end": {
          "line": 280,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9207,
      "end": 9208,
      "loc": {
        "start": {
          "line": 280,
          "column": 8
        },
        "end": {
          "line": 280,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "emojiMatched",
      "start": 9208,
      "end": 9220,
      "loc": {
        "start": {
          "line": 280,
          "column": 9
        },
        "end": {
          "line": 280,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9220,
      "end": 9221,
      "loc": {
        "start": {
          "line": 280,
          "column": 21
        },
        "end": {
          "line": 280,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9221,
      "end": 9222,
      "loc": {
        "start": {
          "line": 280,
          "column": 22
        },
        "end": {
          "line": 280,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 9232,
      "end": 9238,
      "loc": {
        "start": {
          "line": 281,
          "column": 8
        },
        "end": {
          "line": 281,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9239,
      "end": 9240,
      "loc": {
        "start": {
          "line": 281,
          "column": 15
        },
        "end": {
          "line": 281,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 9241,
      "end": 9247,
      "loc": {
        "start": {
          "line": 281,
          "column": 17
        },
        "end": {
          "line": 281,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9247,
      "end": 9248,
      "loc": {
        "start": {
          "line": 281,
          "column": 23
        },
        "end": {
          "line": 281,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 9248,
      "end": 9253,
      "loc": {
        "start": {
          "line": 281,
          "column": 24
        },
        "end": {
          "line": 281,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9253,
      "end": 9254,
      "loc": {
        "start": {
          "line": 281,
          "column": 29
        },
        "end": {
          "line": 281,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 9254,
      "end": 9255,
      "loc": {
        "start": {
          "line": 281,
          "column": 30
        },
        "end": {
          "line": 281,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9255,
      "end": 9256,
      "loc": {
        "start": {
          "line": 281,
          "column": 31
        },
        "end": {
          "line": 281,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 9257,
      "end": 9258,
      "loc": {
        "start": {
          "line": 281,
          "column": 33
        },
        "end": {
          "line": 281,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 9258,
      "end": 9259,
      "loc": {
        "start": {
          "line": 281,
          "column": 34
        },
        "end": {
          "line": 281,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9259,
      "end": 9260,
      "loc": {
        "start": {
          "line": 281,
          "column": 35
        },
        "end": {
          "line": 281,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9260,
      "end": 9261,
      "loc": {
        "start": {
          "line": 281,
          "column": 36
        },
        "end": {
          "line": 281,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9271,
      "end": 9273,
      "loc": {
        "start": {
          "line": 282,
          "column": 8
        },
        "end": {
          "line": 282,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9273,
      "end": 9274,
      "loc": {
        "start": {
          "line": 282,
          "column": 10
        },
        "end": {
          "line": 282,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 9274,
      "end": 9283,
      "loc": {
        "start": {
          "line": 282,
          "column": 11
        },
        "end": {
          "line": 282,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9283,
      "end": 9284,
      "loc": {
        "start": {
          "line": 282,
          "column": 20
        },
        "end": {
          "line": 282,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9285,
      "end": 9289,
      "loc": {
        "start": {
          "line": 282,
          "column": 22
        },
        "end": {
          "line": 282,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9289,
      "end": 9290,
      "loc": {
        "start": {
          "line": 282,
          "column": 26
        },
        "end": {
          "line": 282,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 9290,
      "end": 9304,
      "loc": {
        "start": {
          "line": 282,
          "column": 27
        },
        "end": {
          "line": 282,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9304,
      "end": 9305,
      "loc": {
        "start": {
          "line": 282,
          "column": 41
        },
        "end": {
          "line": 282,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 2,
      "start": 9305,
      "end": 9306,
      "loc": {
        "start": {
          "line": 282,
          "column": 42
        },
        "end": {
          "line": 282,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9306,
      "end": 9307,
      "loc": {
        "start": {
          "line": 282,
          "column": 43
        },
        "end": {
          "line": 282,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 9308,
      "end": 9312,
      "loc": {
        "start": {
          "line": 282,
          "column": 45
        },
        "end": {
          "line": 282,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9312,
      "end": 9313,
      "loc": {
        "start": {
          "line": 282,
          "column": 49
        },
        "end": {
          "line": 282,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9313,
      "end": 9314,
      "loc": {
        "start": {
          "line": 282,
          "column": 50
        },
        "end": {
          "line": 282,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9322,
      "end": 9323,
      "loc": {
        "start": {
          "line": 283,
          "column": 6
        },
        "end": {
          "line": 283,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 9324,
      "end": 9328,
      "loc": {
        "start": {
          "line": 283,
          "column": 8
        },
        "end": {
          "line": 283,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9329,
      "end": 9330,
      "loc": {
        "start": {
          "line": 283,
          "column": 13
        },
        "end": {
          "line": 283,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 9340,
      "end": 9346,
      "loc": {
        "start": {
          "line": 284,
          "column": 8
        },
        "end": {
          "line": 284,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9347,
      "end": 9348,
      "loc": {
        "start": {
          "line": 284,
          "column": 15
        },
        "end": {
          "line": 284,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 9349,
      "end": 9355,
      "loc": {
        "start": {
          "line": 284,
          "column": 17
        },
        "end": {
          "line": 284,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9355,
      "end": 9356,
      "loc": {
        "start": {
          "line": 284,
          "column": 23
        },
        "end": {
          "line": 284,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 9356,
      "end": 9361,
      "loc": {
        "start": {
          "line": 284,
          "column": 24
        },
        "end": {
          "line": 284,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9361,
      "end": 9362,
      "loc": {
        "start": {
          "line": 284,
          "column": 29
        },
        "end": {
          "line": 284,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 9362,
      "end": 9363,
      "loc": {
        "start": {
          "line": 284,
          "column": 30
        },
        "end": {
          "line": 284,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9363,
      "end": 9364,
      "loc": {
        "start": {
          "line": 284,
          "column": 31
        },
        "end": {
          "line": 284,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "-",
      "start": 9365,
      "end": 9366,
      "loc": {
        "start": {
          "line": 284,
          "column": 33
        },
        "end": {
          "line": 284,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 9366,
      "end": 9367,
      "loc": {
        "start": {
          "line": 284,
          "column": 34
        },
        "end": {
          "line": 284,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9367,
      "end": 9368,
      "loc": {
        "start": {
          "line": 284,
          "column": 35
        },
        "end": {
          "line": 284,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9368,
      "end": 9369,
      "loc": {
        "start": {
          "line": 284,
          "column": 36
        },
        "end": {
          "line": 284,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9379,
      "end": 9381,
      "loc": {
        "start": {
          "line": 285,
          "column": 8
        },
        "end": {
          "line": 285,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9381,
      "end": 9382,
      "loc": {
        "start": {
          "line": 285,
          "column": 10
        },
        "end": {
          "line": 285,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "moveCaret",
      "start": 9382,
      "end": 9391,
      "loc": {
        "start": {
          "line": 285,
          "column": 11
        },
        "end": {
          "line": 285,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9391,
      "end": 9392,
      "loc": {
        "start": {
          "line": 285,
          "column": 20
        },
        "end": {
          "line": 285,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9393,
      "end": 9397,
      "loc": {
        "start": {
          "line": 285,
          "column": 22
        },
        "end": {
          "line": 285,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9397,
      "end": 9398,
      "loc": {
        "start": {
          "line": 285,
          "column": 26
        },
        "end": {
          "line": 285,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updateCaretPos",
      "start": 9398,
      "end": 9412,
      "loc": {
        "start": {
          "line": 285,
          "column": 27
        },
        "end": {
          "line": 285,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9412,
      "end": 9413,
      "loc": {
        "start": {
          "line": 285,
          "column": 41
        },
        "end": {
          "line": 285,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 9413,
      "end": 9414,
      "loc": {
        "start": {
          "line": 285,
          "column": 42
        },
        "end": {
          "line": 285,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9414,
      "end": 9415,
      "loc": {
        "start": {
          "line": 285,
          "column": 43
        },
        "end": {
          "line": 285,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 9416,
      "end": 9420,
      "loc": {
        "start": {
          "line": 285,
          "column": 45
        },
        "end": {
          "line": 285,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9420,
      "end": 9421,
      "loc": {
        "start": {
          "line": 285,
          "column": 49
        },
        "end": {
          "line": 285,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9421,
      "end": 9422,
      "loc": {
        "start": {
          "line": 285,
          "column": 50
        },
        "end": {
          "line": 285,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9430,
      "end": 9431,
      "loc": {
        "start": {
          "line": 286,
          "column": 6
        },
        "end": {
          "line": 286,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9437,
      "end": 9438,
      "loc": {
        "start": {
          "line": 287,
          "column": 4
        },
        "end": {
          "line": 287,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 9446,
      "end": 9452,
      "loc": {
        "start": {
          "line": 289,
          "column": 4
        },
        "end": {
          "line": 289,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "output",
      "start": 9453,
      "end": 9459,
      "loc": {
        "start": {
          "line": 289,
          "column": 11
        },
        "end": {
          "line": 289,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9459,
      "end": 9460,
      "loc": {
        "start": {
          "line": 289,
          "column": 17
        },
        "end": {
          "line": 289,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9464,
      "end": 9465,
      "loc": {
        "start": {
          "line": 290,
          "column": 2
        },
        "end": {
          "line": 290,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Determines whether the maxLength has been reached. This function is called when the maxLength option it set.\r\n   * \r\n   * @param  {object} inputObj\r\n   * @param  {object} options\r\n   * @param  {string} updatedInput\r\n   ",
      "start": 9469,
      "end": 9700,
      "loc": {
        "start": {
          "line": 291,
          "column": 2
        },
        "end": {
          "line": 297,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "handleMaxLength",
      "start": 9704,
      "end": 9719,
      "loc": {
        "start": {
          "line": 298,
          "column": 2
        },
        "end": {
          "line": 298,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9719,
      "end": 9720,
      "loc": {
        "start": {
          "line": 298,
          "column": 17
        },
        "end": {
          "line": 298,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "inputObj",
      "start": 9720,
      "end": 9728,
      "loc": {
        "start": {
          "line": 298,
          "column": 18
        },
        "end": {
          "line": 298,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9728,
      "end": 9729,
      "loc": {
        "start": {
          "line": 298,
          "column": 26
        },
        "end": {
          "line": 298,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 9730,
      "end": 9737,
      "loc": {
        "start": {
          "line": 298,
          "column": 28
        },
        "end": {
          "line": 298,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9737,
      "end": 9738,
      "loc": {
        "start": {
          "line": 298,
          "column": 35
        },
        "end": {
          "line": 298,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updatedInput",
      "start": 9739,
      "end": 9751,
      "loc": {
        "start": {
          "line": 298,
          "column": 37
        },
        "end": {
          "line": 298,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9751,
      "end": 9752,
      "loc": {
        "start": {
          "line": 298,
          "column": 49
        },
        "end": {
          "line": 298,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9752,
      "end": 9753,
      "loc": {
        "start": {
          "line": 298,
          "column": 50
        },
        "end": {
          "line": 298,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 9759,
      "end": 9762,
      "loc": {
        "start": {
          "line": 299,
          "column": 4
        },
        "end": {
          "line": 299,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 9763,
      "end": 9772,
      "loc": {
        "start": {
          "line": 299,
          "column": 8
        },
        "end": {
          "line": 299,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9773,
      "end": 9774,
      "loc": {
        "start": {
          "line": 299,
          "column": 18
        },
        "end": {
          "line": 299,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 9775,
      "end": 9782,
      "loc": {
        "start": {
          "line": 299,
          "column": 20
        },
        "end": {
          "line": 299,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9782,
      "end": 9783,
      "loc": {
        "start": {
          "line": 299,
          "column": 27
        },
        "end": {
          "line": 299,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 9783,
      "end": 9792,
      "loc": {
        "start": {
          "line": 299,
          "column": 28
        },
        "end": {
          "line": 299,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9792,
      "end": 9793,
      "loc": {
        "start": {
          "line": 299,
          "column": 37
        },
        "end": {
          "line": 299,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 9799,
      "end": 9802,
      "loc": {
        "start": {
          "line": 300,
          "column": 4
        },
        "end": {
          "line": 300,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentInput",
      "start": 9803,
      "end": 9815,
      "loc": {
        "start": {
          "line": 300,
          "column": 8
        },
        "end": {
          "line": 300,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9816,
      "end": 9817,
      "loc": {
        "start": {
          "line": 300,
          "column": 21
        },
        "end": {
          "line": 300,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "inputObj",
      "start": 9818,
      "end": 9826,
      "loc": {
        "start": {
          "line": 300,
          "column": 23
        },
        "end": {
          "line": 300,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9826,
      "end": 9827,
      "loc": {
        "start": {
          "line": 300,
          "column": 31
        },
        "end": {
          "line": 300,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 9827,
      "end": 9834,
      "loc": {
        "start": {
          "line": 300,
          "column": 32
        },
        "end": {
          "line": 300,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9834,
      "end": 9835,
      "loc": {
        "start": {
          "line": 300,
          "column": 39
        },
        "end": {
          "line": 300,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "inputName",
      "start": 9835,
      "end": 9844,
      "loc": {
        "start": {
          "line": 300,
          "column": 40
        },
        "end": {
          "line": 300,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9844,
      "end": 9845,
      "loc": {
        "start": {
          "line": 300,
          "column": 49
        },
        "end": {
          "line": 300,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9845,
      "end": 9846,
      "loc": {
        "start": {
          "line": 300,
          "column": 50
        },
        "end": {
          "line": 300,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 9852,
      "end": 9855,
      "loc": {
        "start": {
          "line": 301,
          "column": 4
        },
        "end": {
          "line": 301,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 9856,
      "end": 9865,
      "loc": {
        "start": {
          "line": 301,
          "column": 8
        },
        "end": {
          "line": 301,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9866,
      "end": 9867,
      "loc": {
        "start": {
          "line": 301,
          "column": 18
        },
        "end": {
          "line": 301,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentInput",
      "start": 9868,
      "end": 9880,
      "loc": {
        "start": {
          "line": 301,
          "column": 20
        },
        "end": {
          "line": 301,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9880,
      "end": 9881,
      "loc": {
        "start": {
          "line": 301,
          "column": 32
        },
        "end": {
          "line": 301,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 9881,
      "end": 9887,
      "loc": {
        "start": {
          "line": 301,
          "column": 33
        },
        "end": {
          "line": 301,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 9888,
      "end": 9891,
      "loc": {
        "start": {
          "line": 301,
          "column": 40
        },
        "end": {
          "line": 301,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 9892,
      "end": 9901,
      "loc": {
        "start": {
          "line": 301,
          "column": 44
        },
        "end": {
          "line": 301,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9901,
      "end": 9902,
      "loc": {
        "start": {
          "line": 301,
          "column": 53
        },
        "end": {
          "line": 301,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 9910,
      "end": 9912,
      "loc": {
        "start": {
          "line": 303,
          "column": 4
        },
        "end": {
          "line": 303,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9912,
      "end": 9913,
      "loc": {
        "start": {
          "line": 303,
          "column": 6
        },
        "end": {
          "line": 303,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n       * If pressing this button won't add more characters\r\n       * We exit out of this limiter function\r\n       ",
      "start": 9921,
      "end": 10042,
      "loc": {
        "start": {
          "line": 304,
          "column": 6
        },
        "end": {
          "line": 307,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "updatedInput",
      "start": 10050,
      "end": 10062,
      "loc": {
        "start": {
          "line": 308,
          "column": 6
        },
        "end": {
          "line": 308,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10062,
      "end": 10063,
      "loc": {
        "start": {
          "line": 308,
          "column": 18
        },
        "end": {
          "line": 308,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 10063,
      "end": 10069,
      "loc": {
        "start": {
          "line": 308,
          "column": 19
        },
        "end": {
          "line": 308,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "<=",
      "start": 10070,
      "end": 10072,
      "loc": {
        "start": {
          "line": 308,
          "column": 26
        },
        "end": {
          "line": 308,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentInput",
      "start": 10073,
      "end": 10085,
      "loc": {
        "start": {
          "line": 308,
          "column": 29
        },
        "end": {
          "line": 308,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10085,
      "end": 10086,
      "loc": {
        "start": {
          "line": 308,
          "column": 41
        },
        "end": {
          "line": 308,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 10086,
      "end": 10092,
      "loc": {
        "start": {
          "line": 308,
          "column": 42
        },
        "end": {
          "line": 308,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10098,
      "end": 10099,
      "loc": {
        "start": {
          "line": 309,
          "column": 4
        },
        "end": {
          "line": 309,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10099,
      "end": 10100,
      "loc": {
        "start": {
          "line": 309,
          "column": 5
        },
        "end": {
          "line": 309,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 10108,
      "end": 10114,
      "loc": {
        "start": {
          "line": 310,
          "column": 6
        },
        "end": {
          "line": 310,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 10115,
      "end": 10120,
      "loc": {
        "start": {
          "line": 310,
          "column": 13
        },
        "end": {
          "line": 310,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10120,
      "end": 10121,
      "loc": {
        "start": {
          "line": 310,
          "column": 18
        },
        "end": {
          "line": 310,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10127,
      "end": 10128,
      "loc": {
        "start": {
          "line": 311,
          "column": 4
        },
        "end": {
          "line": 311,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10136,
      "end": 10138,
      "loc": {
        "start": {
          "line": 313,
          "column": 4
        },
        "end": {
          "line": 313,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10138,
      "end": 10139,
      "loc": {
        "start": {
          "line": 313,
          "column": 6
        },
        "end": {
          "line": 313,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Number",
      "start": 10139,
      "end": 10145,
      "loc": {
        "start": {
          "line": 313,
          "column": 7
        },
        "end": {
          "line": 313,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10145,
      "end": 10146,
      "loc": {
        "start": {
          "line": 313,
          "column": 13
        },
        "end": {
          "line": 313,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isInteger",
      "start": 10146,
      "end": 10155,
      "loc": {
        "start": {
          "line": 313,
          "column": 14
        },
        "end": {
          "line": 313,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10155,
      "end": 10156,
      "loc": {
        "start": {
          "line": 313,
          "column": 23
        },
        "end": {
          "line": 313,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 10156,
      "end": 10165,
      "loc": {
        "start": {
          "line": 313,
          "column": 24
        },
        "end": {
          "line": 313,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10165,
      "end": 10166,
      "loc": {
        "start": {
          "line": 313,
          "column": 33
        },
        "end": {
          "line": 313,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10166,
      "end": 10167,
      "loc": {
        "start": {
          "line": 313,
          "column": 34
        },
        "end": {
          "line": 313,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10167,
      "end": 10168,
      "loc": {
        "start": {
          "line": 313,
          "column": 35
        },
        "end": {
          "line": 313,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10176,
      "end": 10178,
      "loc": {
        "start": {
          "line": 314,
          "column": 6
        },
        "end": {
          "line": 314,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10178,
      "end": 10179,
      "loc": {
        "start": {
          "line": 314,
          "column": 8
        },
        "end": {
          "line": 314,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10179,
      "end": 10186,
      "loc": {
        "start": {
          "line": 314,
          "column": 9
        },
        "end": {
          "line": 314,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10186,
      "end": 10187,
      "loc": {
        "start": {
          "line": 314,
          "column": 16
        },
        "end": {
          "line": 314,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "debug",
      "start": 10187,
      "end": 10192,
      "loc": {
        "start": {
          "line": 314,
          "column": 17
        },
        "end": {
          "line": 314,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10192,
      "end": 10193,
      "loc": {
        "start": {
          "line": 314,
          "column": 22
        },
        "end": {
          "line": 314,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10193,
      "end": 10194,
      "loc": {
        "start": {
          "line": 314,
          "column": 23
        },
        "end": {
          "line": 314,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "console",
      "start": 10204,
      "end": 10211,
      "loc": {
        "start": {
          "line": 315,
          "column": 8
        },
        "end": {
          "line": 315,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10211,
      "end": 10212,
      "loc": {
        "start": {
          "line": 315,
          "column": 15
        },
        "end": {
          "line": 315,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "log",
      "start": 10212,
      "end": 10215,
      "loc": {
        "start": {
          "line": 315,
          "column": 16
        },
        "end": {
          "line": 315,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10215,
      "end": 10216,
      "loc": {
        "start": {
          "line": 315,
          "column": 19
        },
        "end": {
          "line": 315,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "maxLength (num) reached:",
      "start": 10216,
      "end": 10242,
      "loc": {
        "start": {
          "line": 315,
          "column": 20
        },
        "end": {
          "line": 315,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10242,
      "end": 10243,
      "loc": {
        "start": {
          "line": 315,
          "column": 46
        },
        "end": {
          "line": 315,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 10244,
      "end": 10253,
      "loc": {
        "start": {
          "line": 315,
          "column": 48
        },
        "end": {
          "line": 315,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10253,
      "end": 10254,
      "loc": {
        "start": {
          "line": 315,
          "column": 57
        },
        "end": {
          "line": 315,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10254,
      "end": 10255,
      "loc": {
        "start": {
          "line": 315,
          "column": 58
        },
        "end": {
          "line": 315,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10263,
      "end": 10264,
      "loc": {
        "start": {
          "line": 316,
          "column": 6
        },
        "end": {
          "line": 316,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10274,
      "end": 10276,
      "loc": {
        "start": {
          "line": 318,
          "column": 6
        },
        "end": {
          "line": 318,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10276,
      "end": 10277,
      "loc": {
        "start": {
          "line": 318,
          "column": 8
        },
        "end": {
          "line": 318,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 10277,
      "end": 10286,
      "loc": {
        "start": {
          "line": 318,
          "column": 9
        },
        "end": {
          "line": 318,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10286,
      "end": 10287,
      "loc": {
        "start": {
          "line": 318,
          "column": 18
        },
        "end": {
          "line": 318,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10287,
      "end": 10288,
      "loc": {
        "start": {
          "line": 318,
          "column": 19
        },
        "end": {
          "line": 318,
          "column": 20
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n         * @type {boolean} Boolean value that shows whether maxLength has been reached\r\n         ",
      "start": 10298,
      "end": 10402,
      "loc": {
        "start": {
          "line": 319,
          "column": 8
        },
        "end": {
          "line": 321,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 10412,
      "end": 10416,
      "loc": {
        "start": {
          "line": 322,
          "column": 8
        },
        "end": {
          "line": 322,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10416,
      "end": 10417,
      "loc": {
        "start": {
          "line": 322,
          "column": 12
        },
        "end": {
          "line": 322,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLengthReached",
      "start": 10417,
      "end": 10433,
      "loc": {
        "start": {
          "line": 322,
          "column": 13
        },
        "end": {
          "line": 322,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10434,
      "end": 10435,
      "loc": {
        "start": {
          "line": 322,
          "column": 30
        },
        "end": {
          "line": 322,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 10436,
      "end": 10440,
      "loc": {
        "start": {
          "line": 322,
          "column": 32
        },
        "end": {
          "line": 322,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10440,
      "end": 10441,
      "loc": {
        "start": {
          "line": 322,
          "column": 36
        },
        "end": {
          "line": 322,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 10451,
      "end": 10457,
      "loc": {
        "start": {
          "line": 323,
          "column": 8
        },
        "end": {
          "line": 323,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 10458,
      "end": 10462,
      "loc": {
        "start": {
          "line": 323,
          "column": 15
        },
        "end": {
          "line": 323,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10462,
      "end": 10463,
      "loc": {
        "start": {
          "line": 323,
          "column": 19
        },
        "end": {
          "line": 323,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10471,
      "end": 10472,
      "loc": {
        "start": {
          "line": 324,
          "column": 6
        },
        "end": {
          "line": 324,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 10473,
      "end": 10477,
      "loc": {
        "start": {
          "line": 324,
          "column": 8
        },
        "end": {
          "line": 324,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10478,
      "end": 10479,
      "loc": {
        "start": {
          "line": 324,
          "column": 13
        },
        "end": {
          "line": 324,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 10489,
      "end": 10493,
      "loc": {
        "start": {
          "line": 325,
          "column": 8
        },
        "end": {
          "line": 325,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10493,
      "end": 10494,
      "loc": {
        "start": {
          "line": 325,
          "column": 12
        },
        "end": {
          "line": 325,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLengthReached",
      "start": 10494,
      "end": 10510,
      "loc": {
        "start": {
          "line": 325,
          "column": 13
        },
        "end": {
          "line": 325,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10511,
      "end": 10512,
      "loc": {
        "start": {
          "line": 325,
          "column": 30
        },
        "end": {
          "line": 325,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 10513,
      "end": 10518,
      "loc": {
        "start": {
          "line": 325,
          "column": 32
        },
        "end": {
          "line": 325,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10518,
      "end": 10519,
      "loc": {
        "start": {
          "line": 325,
          "column": 37
        },
        "end": {
          "line": 325,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 10529,
      "end": 10535,
      "loc": {
        "start": {
          "line": 326,
          "column": 8
        },
        "end": {
          "line": 326,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 10536,
      "end": 10541,
      "loc": {
        "start": {
          "line": 326,
          "column": 15
        },
        "end": {
          "line": 326,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10541,
      "end": 10542,
      "loc": {
        "start": {
          "line": 326,
          "column": 20
        },
        "end": {
          "line": 326,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10550,
      "end": 10551,
      "loc": {
        "start": {
          "line": 327,
          "column": 6
        },
        "end": {
          "line": 327,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10557,
      "end": 10558,
      "loc": {
        "start": {
          "line": 328,
          "column": 4
        },
        "end": {
          "line": 328,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10566,
      "end": 10568,
      "loc": {
        "start": {
          "line": 330,
          "column": 4
        },
        "end": {
          "line": 330,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10568,
      "end": 10569,
      "loc": {
        "start": {
          "line": 330,
          "column": 6
        },
        "end": {
          "line": 330,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 10569,
      "end": 10575,
      "loc": {
        "start": {
          "line": 330,
          "column": 7
        },
        "end": {
          "line": 330,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 10576,
      "end": 10585,
      "loc": {
        "start": {
          "line": 330,
          "column": 14
        },
        "end": {
          "line": 330,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 10586,
      "end": 10589,
      "loc": {
        "start": {
          "line": 330,
          "column": 24
        },
        "end": {
          "line": 330,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "object",
      "start": 10590,
      "end": 10598,
      "loc": {
        "start": {
          "line": 330,
          "column": 28
        },
        "end": {
          "line": 330,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10598,
      "end": 10599,
      "loc": {
        "start": {
          "line": 330,
          "column": 36
        },
        "end": {
          "line": 330,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10599,
      "end": 10600,
      "loc": {
        "start": {
          "line": 330,
          "column": 37
        },
        "end": {
          "line": 330,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 10608,
      "end": 10611,
      "loc": {
        "start": {
          "line": 331,
          "column": 6
        },
        "end": {
          "line": 331,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 10612,
      "end": 10621,
      "loc": {
        "start": {
          "line": 331,
          "column": 10
        },
        "end": {
          "line": 331,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10622,
      "end": 10623,
      "loc": {
        "start": {
          "line": 331,
          "column": 20
        },
        "end": {
          "line": 331,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentInput",
      "start": 10624,
      "end": 10636,
      "loc": {
        "start": {
          "line": 331,
          "column": 22
        },
        "end": {
          "line": 331,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10636,
      "end": 10637,
      "loc": {
        "start": {
          "line": 331,
          "column": 34
        },
        "end": {
          "line": 331,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 10637,
      "end": 10643,
      "loc": {
        "start": {
          "line": 331,
          "column": 35
        },
        "end": {
          "line": 331,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 10644,
      "end": 10647,
      "loc": {
        "start": {
          "line": 331,
          "column": 42
        },
        "end": {
          "line": 331,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLength",
      "start": 10648,
      "end": 10657,
      "loc": {
        "start": {
          "line": 331,
          "column": 46
        },
        "end": {
          "line": 331,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10657,
      "end": 10658,
      "loc": {
        "start": {
          "line": 331,
          "column": 55
        },
        "end": {
          "line": 331,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10658,
      "end": 10665,
      "loc": {
        "start": {
          "line": 331,
          "column": 56
        },
        "end": {
          "line": 331,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10665,
      "end": 10666,
      "loc": {
        "start": {
          "line": 331,
          "column": 63
        },
        "end": {
          "line": 331,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "inputName",
      "start": 10666,
      "end": 10675,
      "loc": {
        "start": {
          "line": 331,
          "column": 64
        },
        "end": {
          "line": 331,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10675,
      "end": 10676,
      "loc": {
        "start": {
          "line": 331,
          "column": 73
        },
        "end": {
          "line": 331,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10676,
      "end": 10677,
      "loc": {
        "start": {
          "line": 331,
          "column": 74
        },
        "end": {
          "line": 331,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10687,
      "end": 10689,
      "loc": {
        "start": {
          "line": 333,
          "column": 6
        },
        "end": {
          "line": 333,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10689,
      "end": 10690,
      "loc": {
        "start": {
          "line": 333,
          "column": 8
        },
        "end": {
          "line": 333,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10690,
      "end": 10697,
      "loc": {
        "start": {
          "line": 333,
          "column": 9
        },
        "end": {
          "line": 333,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10697,
      "end": 10698,
      "loc": {
        "start": {
          "line": 333,
          "column": 16
        },
        "end": {
          "line": 333,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "debug",
      "start": 10698,
      "end": 10703,
      "loc": {
        "start": {
          "line": 333,
          "column": 17
        },
        "end": {
          "line": 333,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10703,
      "end": 10704,
      "loc": {
        "start": {
          "line": 333,
          "column": 22
        },
        "end": {
          "line": 333,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10704,
      "end": 10705,
      "loc": {
        "start": {
          "line": 333,
          "column": 23
        },
        "end": {
          "line": 333,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "console",
      "start": 10715,
      "end": 10722,
      "loc": {
        "start": {
          "line": 334,
          "column": 8
        },
        "end": {
          "line": 334,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10722,
      "end": 10723,
      "loc": {
        "start": {
          "line": 334,
          "column": 15
        },
        "end": {
          "line": 334,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "log",
      "start": 10723,
      "end": 10726,
      "loc": {
        "start": {
          "line": 334,
          "column": 16
        },
        "end": {
          "line": 334,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10726,
      "end": 10727,
      "loc": {
        "start": {
          "line": 334,
          "column": 19
        },
        "end": {
          "line": 334,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "maxLength (obj) reached:",
      "start": 10727,
      "end": 10753,
      "loc": {
        "start": {
          "line": 334,
          "column": 20
        },
        "end": {
          "line": 334,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10753,
      "end": 10754,
      "loc": {
        "start": {
          "line": 334,
          "column": 46
        },
        "end": {
          "line": 334,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 10755,
      "end": 10764,
      "loc": {
        "start": {
          "line": 334,
          "column": 48
        },
        "end": {
          "line": 334,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10764,
      "end": 10765,
      "loc": {
        "start": {
          "line": 334,
          "column": 57
        },
        "end": {
          "line": 334,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10765,
      "end": 10766,
      "loc": {
        "start": {
          "line": 334,
          "column": 58
        },
        "end": {
          "line": 334,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10774,
      "end": 10775,
      "loc": {
        "start": {
          "line": 335,
          "column": 6
        },
        "end": {
          "line": 335,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 10785,
      "end": 10787,
      "loc": {
        "start": {
          "line": 337,
          "column": 6
        },
        "end": {
          "line": 337,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10787,
      "end": 10788,
      "loc": {
        "start": {
          "line": 337,
          "column": 8
        },
        "end": {
          "line": 337,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "condition",
      "start": 10788,
      "end": 10797,
      "loc": {
        "start": {
          "line": 337,
          "column": 9
        },
        "end": {
          "line": 337,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10797,
      "end": 10798,
      "loc": {
        "start": {
          "line": 337,
          "column": 18
        },
        "end": {
          "line": 337,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10798,
      "end": 10799,
      "loc": {
        "start": {
          "line": 337,
          "column": 19
        },
        "end": {
          "line": 337,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 10809,
      "end": 10813,
      "loc": {
        "start": {
          "line": 338,
          "column": 8
        },
        "end": {
          "line": 338,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10813,
      "end": 10814,
      "loc": {
        "start": {
          "line": 338,
          "column": 12
        },
        "end": {
          "line": 338,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLengthReached",
      "start": 10814,
      "end": 10830,
      "loc": {
        "start": {
          "line": 338,
          "column": 13
        },
        "end": {
          "line": 338,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10831,
      "end": 10832,
      "loc": {
        "start": {
          "line": 338,
          "column": 30
        },
        "end": {
          "line": 338,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 10833,
      "end": 10837,
      "loc": {
        "start": {
          "line": 338,
          "column": 32
        },
        "end": {
          "line": 338,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10837,
      "end": 10838,
      "loc": {
        "start": {
          "line": 338,
          "column": 36
        },
        "end": {
          "line": 338,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 10848,
      "end": 10854,
      "loc": {
        "start": {
          "line": 339,
          "column": 8
        },
        "end": {
          "line": 339,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 10855,
      "end": 10859,
      "loc": {
        "start": {
          "line": 339,
          "column": 15
        },
        "end": {
          "line": 339,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10859,
      "end": 10860,
      "loc": {
        "start": {
          "line": 339,
          "column": 19
        },
        "end": {
          "line": 339,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10868,
      "end": 10869,
      "loc": {
        "start": {
          "line": 340,
          "column": 6
        },
        "end": {
          "line": 340,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 10870,
      "end": 10874,
      "loc": {
        "start": {
          "line": 340,
          "column": 8
        },
        "end": {
          "line": 340,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10875,
      "end": 10876,
      "loc": {
        "start": {
          "line": 340,
          "column": 13
        },
        "end": {
          "line": 340,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 10886,
      "end": 10890,
      "loc": {
        "start": {
          "line": 341,
          "column": 8
        },
        "end": {
          "line": 341,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10890,
      "end": 10891,
      "loc": {
        "start": {
          "line": 341,
          "column": 12
        },
        "end": {
          "line": 341,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLengthReached",
      "start": 10891,
      "end": 10907,
      "loc": {
        "start": {
          "line": 341,
          "column": 13
        },
        "end": {
          "line": 341,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10908,
      "end": 10909,
      "loc": {
        "start": {
          "line": 341,
          "column": 30
        },
        "end": {
          "line": 341,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 10910,
      "end": 10915,
      "loc": {
        "start": {
          "line": 341,
          "column": 32
        },
        "end": {
          "line": 341,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10915,
      "end": 10916,
      "loc": {
        "start": {
          "line": 341,
          "column": 37
        },
        "end": {
          "line": 341,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 10926,
      "end": 10932,
      "loc": {
        "start": {
          "line": 342,
          "column": 8
        },
        "end": {
          "line": 342,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 10933,
      "end": 10938,
      "loc": {
        "start": {
          "line": 342,
          "column": 15
        },
        "end": {
          "line": 342,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10938,
      "end": 10939,
      "loc": {
        "start": {
          "line": 342,
          "column": 20
        },
        "end": {
          "line": 342,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10947,
      "end": 10948,
      "loc": {
        "start": {
          "line": 343,
          "column": 6
        },
        "end": {
          "line": 343,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10954,
      "end": 10955,
      "loc": {
        "start": {
          "line": 344,
          "column": 4
        },
        "end": {
          "line": 344,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10959,
      "end": 10960,
      "loc": {
        "start": {
          "line": 345,
          "column": 2
        },
        "end": {
          "line": 345,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Gets the current value of maxLengthReached\r\n   ",
      "start": 10966,
      "end": 11025,
      "loc": {
        "start": {
          "line": 347,
          "column": 2
        },
        "end": {
          "line": 349,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isMaxLengthReached",
      "start": 11029,
      "end": 11047,
      "loc": {
        "start": {
          "line": 350,
          "column": 2
        },
        "end": {
          "line": 350,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11047,
      "end": 11048,
      "loc": {
        "start": {
          "line": 350,
          "column": 20
        },
        "end": {
          "line": 350,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11048,
      "end": 11049,
      "loc": {
        "start": {
          "line": 350,
          "column": 21
        },
        "end": {
          "line": 350,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11049,
      "end": 11050,
      "loc": {
        "start": {
          "line": 350,
          "column": 22
        },
        "end": {
          "line": 350,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 11056,
      "end": 11062,
      "loc": {
        "start": {
          "line": 351,
          "column": 4
        },
        "end": {
          "line": 351,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Boolean",
      "start": 11063,
      "end": 11070,
      "loc": {
        "start": {
          "line": 351,
          "column": 11
        },
        "end": {
          "line": 351,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11070,
      "end": 11071,
      "loc": {
        "start": {
          "line": 351,
          "column": 18
        },
        "end": {
          "line": 351,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11071,
      "end": 11075,
      "loc": {
        "start": {
          "line": 351,
          "column": 19
        },
        "end": {
          "line": 351,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11075,
      "end": 11076,
      "loc": {
        "start": {
          "line": 351,
          "column": 23
        },
        "end": {
          "line": 351,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "maxLengthReached",
      "start": 11076,
      "end": 11092,
      "loc": {
        "start": {
          "line": 351,
          "column": 24
        },
        "end": {
          "line": 351,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11092,
      "end": 11093,
      "loc": {
        "start": {
          "line": 351,
          "column": 40
        },
        "end": {
          "line": 351,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11093,
      "end": 11094,
      "loc": {
        "start": {
          "line": 351,
          "column": 41
        },
        "end": {
          "line": 351,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11098,
      "end": 11099,
      "loc": {
        "start": {
          "line": 352,
          "column": 2
        },
        "end": {
          "line": 352,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Transforms an arbitrary string to camelCase\r\n   * \r\n   * @param  {string} string The string to transform.\r\n   ",
      "start": 11105,
      "end": 11227,
      "loc": {
        "start": {
          "line": 354,
          "column": 2
        },
        "end": {
          "line": 358,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "camelCase",
      "start": 11231,
      "end": 11240,
      "loc": {
        "start": {
          "line": 359,
          "column": 2
        },
        "end": {
          "line": 359,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11240,
      "end": 11241,
      "loc": {
        "start": {
          "line": 359,
          "column": 11
        },
        "end": {
          "line": 359,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 11241,
      "end": 11247,
      "loc": {
        "start": {
          "line": 359,
          "column": 12
        },
        "end": {
          "line": 359,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11247,
      "end": 11248,
      "loc": {
        "start": {
          "line": 359,
          "column": 18
        },
        "end": {
          "line": 359,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11248,
      "end": 11249,
      "loc": {
        "start": {
          "line": 359,
          "column": 19
        },
        "end": {
          "line": 359,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 11255,
      "end": 11261,
      "loc": {
        "start": {
          "line": 360,
          "column": 4
        },
        "end": {
          "line": 360,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 11262,
      "end": 11268,
      "loc": {
        "start": {
          "line": 360,
          "column": 11
        },
        "end": {
          "line": 360,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11268,
      "end": 11269,
      "loc": {
        "start": {
          "line": 360,
          "column": 17
        },
        "end": {
          "line": 360,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toLowerCase",
      "start": 11269,
      "end": 11280,
      "loc": {
        "start": {
          "line": 360,
          "column": 18
        },
        "end": {
          "line": 360,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11280,
      "end": 11281,
      "loc": {
        "start": {
          "line": 360,
          "column": 29
        },
        "end": {
          "line": 360,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11281,
      "end": 11282,
      "loc": {
        "start": {
          "line": 360,
          "column": 30
        },
        "end": {
          "line": 360,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11282,
      "end": 11283,
      "loc": {
        "start": {
          "line": 360,
          "column": 31
        },
        "end": {
          "line": 360,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "trim",
      "start": 11283,
      "end": 11287,
      "loc": {
        "start": {
          "line": 360,
          "column": 32
        },
        "end": {
          "line": 360,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11287,
      "end": 11288,
      "loc": {
        "start": {
          "line": 360,
          "column": 36
        },
        "end": {
          "line": 360,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11288,
      "end": 11289,
      "loc": {
        "start": {
          "line": 360,
          "column": 37
        },
        "end": {
          "line": 360,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11289,
      "end": 11290,
      "loc": {
        "start": {
          "line": 360,
          "column": 38
        },
        "end": {
          "line": 360,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 11290,
      "end": 11295,
      "loc": {
        "start": {
          "line": 360,
          "column": 39
        },
        "end": {
          "line": 360,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11295,
      "end": 11296,
      "loc": {
        "start": {
          "line": 360,
          "column": 44
        },
        "end": {
          "line": 360,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "regexp",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": {
        "pattern": "[.\\-_\\s]",
        "flags": "g"
      },
      "start": 11296,
      "end": 11307,
      "loc": {
        "start": {
          "line": 360,
          "column": 45
        },
        "end": {
          "line": 360,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11307,
      "end": 11308,
      "loc": {
        "start": {
          "line": 360,
          "column": 56
        },
        "end": {
          "line": 360,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11308,
      "end": 11309,
      "loc": {
        "start": {
          "line": 360,
          "column": 57
        },
        "end": {
          "line": 360,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reduce",
      "start": 11309,
      "end": 11315,
      "loc": {
        "start": {
          "line": 360,
          "column": 58
        },
        "end": {
          "line": 360,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11315,
      "end": 11316,
      "loc": {
        "start": {
          "line": 360,
          "column": 64
        },
        "end": {
          "line": 360,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11316,
      "end": 11317,
      "loc": {
        "start": {
          "line": 360,
          "column": 65
        },
        "end": {
          "line": 360,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 11317,
      "end": 11323,
      "loc": {
        "start": {
          "line": 360,
          "column": 66
        },
        "end": {
          "line": 360,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11323,
      "end": 11324,
      "loc": {
        "start": {
          "line": 360,
          "column": 72
        },
        "end": {
          "line": 360,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "word",
      "start": 11325,
      "end": 11329,
      "loc": {
        "start": {
          "line": 360,
          "column": 74
        },
        "end": {
          "line": 360,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11329,
      "end": 11330,
      "loc": {
        "start": {
          "line": 360,
          "column": 78
        },
        "end": {
          "line": 360,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11331,
      "end": 11333,
      "loc": {
        "start": {
          "line": 360,
          "column": 80
        },
        "end": {
          "line": 360,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "string",
      "start": 11334,
      "end": 11340,
      "loc": {
        "start": {
          "line": 360,
          "column": 83
        },
        "end": {
          "line": 360,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 11341,
      "end": 11342,
      "loc": {
        "start": {
          "line": 360,
          "column": 90
        },
        "end": {
          "line": 360,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "word",
      "start": 11343,
      "end": 11347,
      "loc": {
        "start": {
          "line": 360,
          "column": 92
        },
        "end": {
          "line": 360,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11347,
      "end": 11348,
      "loc": {
        "start": {
          "line": 360,
          "column": 96
        },
        "end": {
          "line": 360,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 11348,
      "end": 11349,
      "loc": {
        "start": {
          "line": 360,
          "column": 97
        },
        "end": {
          "line": 360,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11349,
      "end": 11350,
      "loc": {
        "start": {
          "line": 360,
          "column": 98
        },
        "end": {
          "line": 360,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11350,
      "end": 11351,
      "loc": {
        "start": {
          "line": 360,
          "column": 99
        },
        "end": {
          "line": 360,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toUpperCase",
      "start": 11351,
      "end": 11362,
      "loc": {
        "start": {
          "line": 360,
          "column": 100
        },
        "end": {
          "line": 360,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11362,
      "end": 11363,
      "loc": {
        "start": {
          "line": 360,
          "column": 111
        },
        "end": {
          "line": 360,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11363,
      "end": 11364,
      "loc": {
        "start": {
          "line": 360,
          "column": 112
        },
        "end": {
          "line": 360,
          "column": 113
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 11365,
      "end": 11366,
      "loc": {
        "start": {
          "line": 360,
          "column": 114
        },
        "end": {
          "line": 360,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "word",
      "start": 11367,
      "end": 11371,
      "loc": {
        "start": {
          "line": 360,
          "column": 116
        },
        "end": {
          "line": 360,
          "column": 120
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11371,
      "end": 11372,
      "loc": {
        "start": {
          "line": 360,
          "column": 120
        },
        "end": {
          "line": 360,
          "column": 121
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "slice",
      "start": 11372,
      "end": 11377,
      "loc": {
        "start": {
          "line": 360,
          "column": 121
        },
        "end": {
          "line": 360,
          "column": 126
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11377,
      "end": 11378,
      "loc": {
        "start": {
          "line": 360,
          "column": 126
        },
        "end": {
          "line": 360,
          "column": 127
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 11378,
      "end": 11379,
      "loc": {
        "start": {
          "line": 360,
          "column": 127
        },
        "end": {
          "line": 360,
          "column": 128
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11379,
      "end": 11380,
      "loc": {
        "start": {
          "line": 360,
          "column": 128
        },
        "end": {
          "line": 360,
          "column": 129
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11380,
      "end": 11381,
      "loc": {
        "start": {
          "line": 360,
          "column": 129
        },
        "end": {
          "line": 360,
          "column": 130
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11381,
      "end": 11382,
      "loc": {
        "start": {
          "line": 360,
          "column": 130
        },
        "end": {
          "line": 360,
          "column": 131
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11386,
      "end": 11387,
      "loc": {
        "start": {
          "line": 361,
          "column": 2
        },
        "end": {
          "line": 361,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11387,
      "end": 11388,
      "loc": {
        "start": {
          "line": 361,
          "column": 3
        },
        "end": {
          "line": 361,
          "column": 4
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\r\n   * Counts the number of duplicates in a given array\r\n   * \r\n   * @param  {Array} array The haystack to search in\r\n   * @param  {string} value The needle to search for\r\n   ",
      "start": 11394,
      "end": 11574,
      "loc": {
        "start": {
          "line": 363,
          "column": 2
        },
        "end": {
          "line": 368,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "countInArray",
      "start": 11578,
      "end": 11590,
      "loc": {
        "start": {
          "line": 369,
          "column": 2
        },
        "end": {
          "line": 369,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11590,
      "end": 11591,
      "loc": {
        "start": {
          "line": 369,
          "column": 14
        },
        "end": {
          "line": 369,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "array",
      "start": 11591,
      "end": 11596,
      "loc": {
        "start": {
          "line": 369,
          "column": 15
        },
        "end": {
          "line": 369,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11596,
      "end": 11597,
      "loc": {
        "start": {
          "line": 369,
          "column": 20
        },
        "end": {
          "line": 369,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 11598,
      "end": 11603,
      "loc": {
        "start": {
          "line": 369,
          "column": 22
        },
        "end": {
          "line": 369,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11603,
      "end": 11604,
      "loc": {
        "start": {
          "line": 369,
          "column": 27
        },
        "end": {
          "line": 369,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11604,
      "end": 11605,
      "loc": {
        "start": {
          "line": 369,
          "column": 28
        },
        "end": {
          "line": 369,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 11611,
      "end": 11617,
      "loc": {
        "start": {
          "line": 370,
          "column": 4
        },
        "end": {
          "line": 370,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "array",
      "start": 11618,
      "end": 11623,
      "loc": {
        "start": {
          "line": 370,
          "column": 11
        },
        "end": {
          "line": 370,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11623,
      "end": 11624,
      "loc": {
        "start": {
          "line": 370,
          "column": 16
        },
        "end": {
          "line": 370,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reduce",
      "start": 11624,
      "end": 11630,
      "loc": {
        "start": {
          "line": 370,
          "column": 17
        },
        "end": {
          "line": 370,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11630,
      "end": 11631,
      "loc": {
        "start": {
          "line": 370,
          "column": 23
        },
        "end": {
          "line": 370,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11631,
      "end": 11632,
      "loc": {
        "start": {
          "line": 370,
          "column": 24
        },
        "end": {
          "line": 370,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "n",
      "start": 11632,
      "end": 11633,
      "loc": {
        "start": {
          "line": 370,
          "column": 25
        },
        "end": {
          "line": 370,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11633,
      "end": 11634,
      "loc": {
        "start": {
          "line": 370,
          "column": 26
        },
        "end": {
          "line": 370,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "x",
      "start": 11635,
      "end": 11636,
      "loc": {
        "start": {
          "line": 370,
          "column": 28
        },
        "end": {
          "line": 370,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11636,
      "end": 11637,
      "loc": {
        "start": {
          "line": 370,
          "column": 29
        },
        "end": {
          "line": 370,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11638,
      "end": 11640,
      "loc": {
        "start": {
          "line": 370,
          "column": 31
        },
        "end": {
          "line": 370,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "n",
      "start": 11641,
      "end": 11642,
      "loc": {
        "start": {
          "line": 370,
          "column": 34
        },
        "end": {
          "line": 370,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 11643,
      "end": 11644,
      "loc": {
        "start": {
          "line": 370,
          "column": 36
        },
        "end": {
          "line": 370,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11645,
      "end": 11646,
      "loc": {
        "start": {
          "line": 370,
          "column": 38
        },
        "end": {
          "line": 370,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "x",
      "start": 11646,
      "end": 11647,
      "loc": {
        "start": {
          "line": 370,
          "column": 39
        },
        "end": {
          "line": 370,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 11648,
      "end": 11651,
      "loc": {
        "start": {
          "line": 370,
          "column": 41
        },
        "end": {
          "line": 370,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "value",
      "start": 11652,
      "end": 11657,
      "loc": {
        "start": {
          "line": 370,
          "column": 45
        },
        "end": {
          "line": 370,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11657,
      "end": 11658,
      "loc": {
        "start": {
          "line": 370,
          "column": 50
        },
        "end": {
          "line": 370,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11658,
      "end": 11659,
      "loc": {
        "start": {
          "line": 370,
          "column": 51
        },
        "end": {
          "line": 370,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 11660,
      "end": 11661,
      "loc": {
        "start": {
          "line": 370,
          "column": 53
        },
        "end": {
          "line": 370,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11661,
      "end": 11662,
      "loc": {
        "start": {
          "line": 370,
          "column": 54
        },
        "end": {
          "line": 370,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11662,
      "end": 11663,
      "loc": {
        "start": {
          "line": 370,
          "column": 55
        },
        "end": {
          "line": 370,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11667,
      "end": 11668,
      "loc": {
        "start": {
          "line": 371,
          "column": 2
        },
        "end": {
          "line": 371,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11670,
      "end": 11671,
      "loc": {
        "start": {
          "line": 372,
          "column": 0
        },
        "end": {
          "line": 372,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": "export",
        "keyword": "export",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "export",
      "start": 11675,
      "end": 11681,
      "loc": {
        "start": {
          "line": 374,
          "column": 0
        },
        "end": {
          "line": 374,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "default",
        "keyword": "default",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "default",
      "start": 11682,
      "end": 11689,
      "loc": {
        "start": {
          "line": 374,
          "column": 7
        },
        "end": {
          "line": 374,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utilities",
      "start": 11690,
      "end": 11699,
      "loc": {
        "start": {
          "line": 374,
          "column": 15
        },
        "end": {
          "line": 374,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11699,
      "end": 11700,
      "loc": {
        "start": {
          "line": 374,
          "column": 24
        },
        "end": {
          "line": 374,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11700,
      "end": 11700,
      "loc": {
        "start": {
          "line": 374,
          "column": 25
        },
        "end": {
          "line": 374,
          "column": 25
        }
      }
    }
  ]
}