{ "type": "File", "start": 0, "end": 465, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 17, "column": 0 } }, "program": { "type": "Program", "start": 0, "end": 465, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 17, "column": 0 } }, "sourceType": "module", "body": [ { "type": "ExportNamedDeclaration", "start": 21, "end": 464, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 16, "column": 1 } }, "specifiers": [], "source": null, "declaration": { "type": "FunctionDeclaration", "start": 28, "end": 464, "loc": { "start": { "line": 3, "column": 7 }, "end": { "line": 16, "column": 1 } }, "id": { "type": "Identifier", "start": 37, "end": 57, "loc": { "start": { "line": 3, "column": 16 }, "end": { "line": 3, "column": 36 }, "identifierName": "generateRandomUint32" }, "name": "generateRandomUint32", "leadingComments": null }, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 61, "end": 464, "loc": { "start": { "line": 3, "column": 40 }, "end": { "line": 16, "column": 1 } }, "body": [ { "type": "IfStatement", "start": 65, "end": 462, "loc": { "start": { "line": 4, "column": 2 }, "end": { "line": 15, "column": 3 } }, "test": { "type": "LogicalExpression", "start": 69, "end": 131, "loc": { "start": { "line": 4, "column": 6 }, "end": { "line": 4, "column": 68 } }, "left": { "type": "BinaryExpression", "start": 69, "end": 98, "loc": { "start": { "line": 4, "column": 6 }, "end": { "line": 4, "column": 35 } }, "left": { "type": "UnaryExpression", "start": 69, "end": 82, "loc": { "start": { "line": 4, "column": 6 }, "end": { "line": 4, "column": 19 } }, "operator": "typeof", "prefix": true, "argument": { "type": "Identifier", "start": 76, "end": 82, "loc": { "start": { "line": 4, "column": 13 }, "end": { "line": 4, "column": 19 }, "identifierName": "crypto" }, "name": "crypto" }, "extra": { "parenthesizedArgument": false } }, "operator": "!==", "right": { "type": "StringLiteral", "start": 87, "end": 98, "loc": { "start": { "line": 4, "column": 24 }, "end": { "line": 4, "column": 35 } }, "extra": { "rawValue": "undefined", "raw": "'undefined'" }, "value": "undefined" } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 102, "end": 131, "loc": { "start": { "line": 4, "column": 39 }, "end": { "line": 4, "column": 68 } }, "left": { "type": "MemberExpression", "start": 102, "end": 123, "loc": { "start": { "line": 4, "column": 39 }, "end": { "line": 4, "column": 60 } }, "object": { "type": "Identifier", "start": 102, "end": 108, "loc": { "start": { "line": 4, "column": 39 }, "end": { "line": 4, "column": 45 }, "identifierName": "crypto" }, "name": "crypto" }, "property": { "type": "Identifier", "start": 109, "end": 123, "loc": { "start": { "line": 4, "column": 46 }, "end": { "line": 4, "column": 60 }, "identifierName": "getRandomValue" }, "name": "getRandomValue" }, "computed": false }, "operator": "!=", "right": { "type": "NullLiteral", "start": 127, "end": 131, "loc": { "start": { "line": 4, "column": 64 }, "end": { "line": 4, "column": 68 } } } } }, "consequent": { "type": "BlockStatement", "start": 133, "end": 236, "loc": { "start": { "line": 4, "column": 70 }, "end": { "line": 9, "column": 3 } }, "body": [ { "type": "VariableDeclaration", "start": 154, "end": 182, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 6, "column": 32 } }, "declarations": [ { "type": "VariableDeclarator", "start": 158, "end": 182, "loc": { "start": { "line": 6, "column": 8 }, "end": { "line": 6, "column": 32 } }, "id": { "type": "Identifier", "start": 158, "end": 161, "loc": { "start": { "line": 6, "column": 8 }, "end": { "line": 6, "column": 11 }, "identifierName": "arr" }, "name": "arr", "leadingComments": null }, "init": { "type": "NewExpression", "start": 164, "end": 182, "loc": { "start": { "line": 6, "column": 14 }, "end": { "line": 6, "column": 32 } }, "callee": { "type": "Identifier", "start": 168, "end": 179, "loc": { "start": { "line": 6, "column": 18 }, "end": { "line": 6, "column": 29 }, "identifierName": "Uint32Array" }, "name": "Uint32Array" }, "arguments": [ { "type": "NumericLiteral", "start": 180, "end": 181, "loc": { "start": { "line": 6, "column": 30 }, "end": { "line": 6, "column": 31 } }, "extra": { "rawValue": 1, "raw": "1" }, "value": 1 } ] }, "leadingComments": null } ], "kind": "let", "leadingComments": [ { "type": "CommentLine", "value": " browser", "start": 139, "end": 149, "loc": { "start": { "line": 5, "column": 4 }, "end": { "line": 5, "column": 14 } } } ] }, { "type": "ExpressionStatement", "start": 187, "end": 214, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 31 } }, "expression": { "type": "CallExpression", "start": 187, "end": 214, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 31 } }, "callee": { "type": "MemberExpression", "start": 187, "end": 209, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 26 } }, "object": { "type": "Identifier", "start": 187, "end": 193, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 10 }, "identifierName": "crypto" }, "name": "crypto" }, "property": { "type": "Identifier", "start": 194, "end": 209, "loc": { "start": { "line": 7, "column": 11 }, "end": { "line": 7, "column": 26 }, "identifierName": "getRandomValues" }, "name": "getRandomValues" }, "computed": false }, "arguments": [ { "type": "Identifier", "start": 210, "end": 213, "loc": { "start": { "line": 7, "column": 27 }, "end": { "line": 7, "column": 30 }, "identifierName": "arr" }, "name": "arr" } ] } }, { "type": "ReturnStatement", "start": 219, "end": 232, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 17 } }, "argument": { "type": "MemberExpression", "start": 226, "end": 232, "loc": { "start": { "line": 8, "column": 11 }, "end": { "line": 8, "column": 17 } }, "object": { "type": "Identifier", "start": 226, "end": 229, "loc": { "start": { "line": 8, "column": 11 }, "end": { "line": 8, "column": 14 }, "identifierName": "arr" }, "name": "arr" }, "property": { "type": "NumericLiteral", "start": 230, "end": 231, "loc": { "start": { "line": 8, "column": 15 }, "end": { "line": 8, "column": 16 } }, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 }, "computed": true } } ], "directives": [] }, "alternate": { "type": "IfStatement", "start": 242, "end": 462, "loc": { "start": { "line": 9, "column": 9 }, "end": { "line": 15, "column": 3 } }, "test": { "type": "LogicalExpression", "start": 246, "end": 305, "loc": { "start": { "line": 9, "column": 13 }, "end": { "line": 9, "column": 72 } }, "left": { "type": "BinaryExpression", "start": 246, "end": 275, "loc": { "start": { "line": 9, "column": 13 }, "end": { "line": 9, "column": 42 } }, "left": { "type": "UnaryExpression", "start": 246, "end": 259, "loc": { "start": { "line": 9, "column": 13 }, "end": { "line": 9, "column": 26 } }, "operator": "typeof", "prefix": true, "argument": { "type": "Identifier", "start": 253, "end": 259, "loc": { "start": { "line": 9, "column": 20 }, "end": { "line": 9, "column": 26 }, "identifierName": "crypto" }, "name": "crypto" }, "extra": { "parenthesizedArgument": false } }, "operator": "!==", "right": { "type": "StringLiteral", "start": 264, "end": 275, "loc": { "start": { "line": 9, "column": 31 }, "end": { "line": 9, "column": 42 } }, "extra": { "rawValue": "undefined", "raw": "'undefined'" }, "value": "undefined" } }, "operator": "&&", "right": { "type": "BinaryExpression", "start": 279, "end": 305, "loc": { "start": { "line": 9, "column": 46 }, "end": { "line": 9, "column": 72 } }, "left": { "type": "MemberExpression", "start": 279, "end": 297, "loc": { "start": { "line": 9, "column": 46 }, "end": { "line": 9, "column": 64 } }, "object": { "type": "Identifier", "start": 279, "end": 285, "loc": { "start": { "line": 9, "column": 46 }, "end": { "line": 9, "column": 52 }, "identifierName": "crypto" }, "name": "crypto" }, "property": { "type": "Identifier", "start": 286, "end": 297, "loc": { "start": { "line": 9, "column": 53 }, "end": { "line": 9, "column": 64 }, "identifierName": "randomBytes" }, "name": "randomBytes" }, "computed": false }, "operator": "!=", "right": { "type": "NullLiteral", "start": 301, "end": 305, "loc": { "start": { "line": 9, "column": 68 }, "end": { "line": 9, "column": 72 } } } } }, "consequent": { "type": "BlockStatement", "start": 307, "end": 402, "loc": { "start": { "line": 9, "column": 74 }, "end": { "line": 13, "column": 3 } }, "body": [ { "type": "VariableDeclaration", "start": 325, "end": 356, "loc": { "start": { "line": 11, "column": 4 }, "end": { "line": 11, "column": 35 } }, "declarations": [ { "type": "VariableDeclarator", "start": 329, "end": 356, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 35 } }, "id": { "type": "Identifier", "start": 329, "end": 332, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 11 }, "identifierName": "buf" }, "name": "buf", "leadingComments": null }, "init": { "type": "CallExpression", "start": 335, "end": 356, "loc": { "start": { "line": 11, "column": 14 }, "end": { "line": 11, "column": 35 } }, "callee": { "type": "MemberExpression", "start": 335, "end": 353, "loc": { "start": { "line": 11, "column": 14 }, "end": { "line": 11, "column": 32 } }, "object": { "type": "Identifier", "start": 335, "end": 341, "loc": { "start": { "line": 11, "column": 14 }, "end": { "line": 11, "column": 20 }, "identifierName": "crypto" }, "name": "crypto" }, "property": { "type": "Identifier", "start": 342, "end": 353, "loc": { "start": { "line": 11, "column": 21 }, "end": { "line": 11, "column": 32 }, "identifierName": "randomBytes" }, "name": "randomBytes" }, "computed": false }, "arguments": [ { "type": "NumericLiteral", "start": 354, "end": 355, "loc": { "start": { "line": 11, "column": 33 }, "end": { "line": 11, "column": 34 } }, "extra": { "rawValue": 4, "raw": "4" }, "value": 4 } ] }, "leadingComments": null } ], "kind": "let", "leadingComments": [ { "type": "CommentLine", "value": " node", "start": 313, "end": 320, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 11 } } } ] }, { "type": "ReturnStatement", "start": 361, "end": 398, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 41 } }, "argument": { "type": "MemberExpression", "start": 368, "end": 398, "loc": { "start": { "line": 12, "column": 11 }, "end": { "line": 12, "column": 41 } }, "object": { "type": "NewExpression", "start": 368, "end": 395, "loc": { "start": { "line": 12, "column": 11 }, "end": { "line": 12, "column": 38 } }, "callee": { "type": "Identifier", "start": 372, "end": 383, "loc": { "start": { "line": 12, "column": 15 }, "end": { "line": 12, "column": 26 }, "identifierName": "Uint32Array" }, "name": "Uint32Array" }, "arguments": [ { "type": "MemberExpression", "start": 384, "end": 394, "loc": { "start": { "line": 12, "column": 27 }, "end": { "line": 12, "column": 37 } }, "object": { "type": "Identifier", "start": 384, "end": 387, "loc": { "start": { "line": 12, "column": 27 }, "end": { "line": 12, "column": 30 }, "identifierName": "buf" }, "name": "buf" }, "property": { "type": "Identifier", "start": 388, "end": 394, "loc": { "start": { "line": 12, "column": 31 }, "end": { "line": 12, "column": 37 }, "identifierName": "buffer" }, "name": "buffer" }, "computed": false } ] }, "property": { "type": "NumericLiteral", "start": 396, "end": 397, "loc": { "start": { "line": 12, "column": 39 }, "end": { "line": 12, "column": 40 } }, "extra": { "rawValue": 0, "raw": "0" }, "value": 0 }, "computed": true } } ], "directives": [] }, "alternate": { "type": "BlockStatement", "start": 408, "end": 462, "loc": { "start": { "line": 13, "column": 9 }, "end": { "line": 15, "column": 3 } }, "body": [ { "type": "ReturnStatement", "start": 414, "end": 458, "loc": { "start": { "line": 14, "column": 4 }, "end": { "line": 14, "column": 48 } }, "argument": { "type": "CallExpression", "start": 421, "end": 458, "loc": { "start": { "line": 14, "column": 11 }, "end": { "line": 14, "column": 48 } }, "callee": { "type": "MemberExpression", "start": 421, "end": 430, "loc": { "start": { "line": 14, "column": 11 }, "end": { "line": 14, "column": 20 } }, "object": { "type": "Identifier", "start": 421, "end": 425, "loc": { "start": { "line": 14, "column": 11 }, "end": { "line": 14, "column": 15 }, "identifierName": "Math" }, "name": "Math" }, "property": { "type": "Identifier", "start": 426, "end": 430, "loc": { "start": { "line": 14, "column": 16 }, "end": { "line": 14, "column": 20 }, "identifierName": "ceil" }, "name": "ceil" }, "computed": false }, "arguments": [ { "type": "BinaryExpression", "start": 431, "end": 457, "loc": { "start": { "line": 14, "column": 21 }, "end": { "line": 14, "column": 47 } }, "left": { "type": "CallExpression", "start": 431, "end": 444, "loc": { "start": { "line": 14, "column": 21 }, "end": { "line": 14, "column": 34 } }, "callee": { "type": "MemberExpression", "start": 431, "end": 442, "loc": { "start": { "line": 14, "column": 21 }, "end": { "line": 14, "column": 32 } }, "object": { "type": "Identifier", "start": 431, "end": 435, "loc": { "start": { "line": 14, "column": 21 }, "end": { "line": 14, "column": 25 }, "identifierName": "Math" }, "name": "Math" }, "property": { "type": "Identifier", "start": 436, "end": 442, "loc": { "start": { "line": 14, "column": 26 }, "end": { "line": 14, "column": 32 }, "identifierName": "random" }, "name": "random" }, "computed": false }, "arguments": [] }, "operator": "*", "right": { "type": "NumericLiteral", "start": 447, "end": 457, "loc": { "start": { "line": 14, "column": 37 }, "end": { "line": 14, "column": 47 } }, "extra": { "rawValue": 4294967295, "raw": "0xFFFFFFFF" }, "value": 4294967295 } } ] } } ], "directives": [] } } } ], "directives": [] }, "leadingComments": [ { "type": "CommentBlock", "value": " global crypto ", "start": 0, "end": 19, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 19 } } } ], "trailingComments": [] }, "leadingComments": [ { "type": "CommentBlock", "value": " global crypto ", "start": 0, "end": 19, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 19 } } } ] } ], "directives": [] }, "comments": [ { "type": "CommentBlock", "value": " global crypto ", "start": 0, "end": 19, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 19 } } }, { "type": "CommentLine", "value": " browser", "start": 139, "end": 149, "loc": { "start": { "line": 5, "column": 4 }, "end": { "line": 5, "column": 14 } } }, { "type": "CommentLine", "value": " node", "start": 313, "end": 320, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 11 } } } ], "tokens": [ { "type": "CommentBlock", "value": " global crypto ", "start": 0, "end": 19, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 19 } } }, { "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": 21, "end": 27, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 6 } } }, { "type": { "label": "function", "keyword": "function", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "function", "start": 28, "end": 36, "loc": { "start": { "line": 3, "column": 7 }, "end": { "line": 3, "column": 15 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "generateRandomUint32", "start": 37, "end": 57, "loc": { "start": { "line": 3, "column": 16 }, "end": { "line": 3, "column": 36 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 58, "end": 59, "loc": { "start": { "line": 3, "column": 37 }, "end": { "line": 3, "column": 38 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 59, "end": 60, "loc": { "start": { "line": 3, "column": 38 }, "end": { "line": 3, "column": 39 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 61, "end": 62, "loc": { "start": { "line": 3, "column": 40 }, "end": { "line": 3, "column": 41 } } }, { "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": 65, "end": 67, "loc": { "start": { "line": 4, "column": 2 }, "end": { "line": 4, "column": 4 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 68, "end": 69, "loc": { "start": { "line": 4, "column": 5 }, "end": { "line": 4, "column": 6 } } }, { "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": 69, "end": 75, "loc": { "start": { "line": 4, "column": 6 }, "end": { "line": 4, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 76, "end": 82, "loc": { "start": { "line": 4, "column": 13 }, "end": { "line": 4, "column": 19 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 83, "end": 86, "loc": { "start": { "line": 4, "column": 20 }, "end": { "line": 4, "column": 23 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "undefined", "start": 87, "end": 98, "loc": { "start": { "line": 4, "column": 24 }, "end": { "line": 4, "column": 35 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 99, "end": 101, "loc": { "start": { "line": 4, "column": 36 }, "end": { "line": 4, "column": 38 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 102, "end": 108, "loc": { "start": { "line": 4, "column": 39 }, "end": { "line": 4, "column": 45 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 108, "end": 109, "loc": { "start": { "line": 4, "column": 45 }, "end": { "line": 4, "column": 46 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "getRandomValue", "start": 109, "end": 123, "loc": { "start": { "line": 4, "column": 46 }, "end": { "line": 4, "column": 60 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!=", "start": 124, "end": 126, "loc": { "start": { "line": 4, "column": 61 }, "end": { "line": 4, "column": 63 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 127, "end": 131, "loc": { "start": { "line": 4, "column": 64 }, "end": { "line": 4, "column": 68 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 131, "end": 132, "loc": { "start": { "line": 4, "column": 68 }, "end": { "line": 4, "column": 69 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 133, "end": 134, "loc": { "start": { "line": 4, "column": 70 }, "end": { "line": 4, "column": 71 } } }, { "type": "CommentLine", "value": " browser", "start": 139, "end": 149, "loc": { "start": { "line": 5, "column": 4 }, "end": { "line": 5, "column": 14 } } }, { "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": 154, "end": 157, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 6, "column": 7 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "arr", "start": 158, "end": 161, "loc": { "start": { "line": 6, "column": 8 }, "end": { "line": 6, "column": 11 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 162, "end": 163, "loc": { "start": { "line": 6, "column": 12 }, "end": { "line": 6, "column": 13 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 164, "end": 167, "loc": { "start": { "line": 6, "column": 14 }, "end": { "line": 6, "column": 17 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Uint32Array", "start": 168, "end": 179, "loc": { "start": { "line": 6, "column": 18 }, "end": { "line": 6, "column": 29 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 179, "end": 180, "loc": { "start": { "line": 6, "column": 29 }, "end": { "line": 6, "column": 30 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 1, "start": 180, "end": 181, "loc": { "start": { "line": 6, "column": 30 }, "end": { "line": 6, "column": 31 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 181, "end": 182, "loc": { "start": { "line": 6, "column": 31 }, "end": { "line": 6, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 187, "end": 193, "loc": { "start": { "line": 7, "column": 4 }, "end": { "line": 7, "column": 10 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 193, "end": 194, "loc": { "start": { "line": 7, "column": 10 }, "end": { "line": 7, "column": 11 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "getRandomValues", "start": 194, "end": 209, "loc": { "start": { "line": 7, "column": 11 }, "end": { "line": 7, "column": 26 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 209, "end": 210, "loc": { "start": { "line": 7, "column": 26 }, "end": { "line": 7, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "arr", "start": 210, "end": 213, "loc": { "start": { "line": 7, "column": 27 }, "end": { "line": 7, "column": 30 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 213, "end": 214, "loc": { "start": { "line": 7, "column": 30 }, "end": { "line": 7, "column": 31 } } }, { "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": 219, "end": 225, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 10 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "arr", "start": 226, "end": 229, "loc": { "start": { "line": 8, "column": 11 }, "end": { "line": 8, "column": 14 } } }, { "type": { "label": "[", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 229, "end": 230, "loc": { "start": { "line": 8, "column": 14 }, "end": { "line": 8, "column": 15 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 0, "start": 230, "end": 231, "loc": { "start": { "line": 8, "column": 15 }, "end": { "line": 8, "column": 16 } } }, { "type": { "label": "]", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 231, "end": 232, "loc": { "start": { "line": 8, "column": 16 }, "end": { "line": 8, "column": 17 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 235, "end": 236, "loc": { "start": { "line": 9, "column": 2 }, "end": { "line": 9, "column": 3 } } }, { "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": 237, "end": 241, "loc": { "start": { "line": 9, "column": 4 }, "end": { "line": 9, "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": 242, "end": 244, "loc": { "start": { "line": 9, "column": 9 }, "end": { "line": 9, "column": 11 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 245, "end": 246, "loc": { "start": { "line": 9, "column": 12 }, "end": { "line": 9, "column": 13 } } }, { "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": 246, "end": 252, "loc": { "start": { "line": 9, "column": 13 }, "end": { "line": 9, "column": 19 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 253, "end": 259, "loc": { "start": { "line": 9, "column": 20 }, "end": { "line": 9, "column": 26 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!==", "start": 260, "end": 263, "loc": { "start": { "line": 9, "column": 27 }, "end": { "line": 9, "column": 30 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "undefined", "start": 264, "end": 275, "loc": { "start": { "line": 9, "column": 31 }, "end": { "line": 9, "column": 42 } } }, { "type": { "label": "&&", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 2, "updateContext": null }, "value": "&&", "start": 276, "end": 278, "loc": { "start": { "line": 9, "column": 43 }, "end": { "line": 9, "column": 45 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 279, "end": 285, "loc": { "start": { "line": 9, "column": 46 }, "end": { "line": 9, "column": 52 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 285, "end": 286, "loc": { "start": { "line": 9, "column": 52 }, "end": { "line": 9, "column": 53 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "randomBytes", "start": 286, "end": 297, "loc": { "start": { "line": 9, "column": 53 }, "end": { "line": 9, "column": 64 } } }, { "type": { "label": "==/!=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 6, "updateContext": null }, "value": "!=", "start": 298, "end": 300, "loc": { "start": { "line": 9, "column": 65 }, "end": { "line": 9, "column": 67 } } }, { "type": { "label": "null", "keyword": "null", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "null", "start": 301, "end": 305, "loc": { "start": { "line": 9, "column": 68 }, "end": { "line": 9, "column": 72 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 305, "end": 306, "loc": { "start": { "line": 9, "column": 72 }, "end": { "line": 9, "column": 73 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 307, "end": 308, "loc": { "start": { "line": 9, "column": 74 }, "end": { "line": 9, "column": 75 } } }, { "type": "CommentLine", "value": " node", "start": 313, "end": 320, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 11 } } }, { "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": 325, "end": 328, "loc": { "start": { "line": 11, "column": 4 }, "end": { "line": 11, "column": 7 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "buf", "start": 329, "end": 332, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 11 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 333, "end": 334, "loc": { "start": { "line": 11, "column": 12 }, "end": { "line": 11, "column": 13 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "crypto", "start": 335, "end": 341, "loc": { "start": { "line": 11, "column": 14 }, "end": { "line": 11, "column": 20 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 341, "end": 342, "loc": { "start": { "line": 11, "column": 20 }, "end": { "line": 11, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "randomBytes", "start": 342, "end": 353, "loc": { "start": { "line": 11, "column": 21 }, "end": { "line": 11, "column": 32 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 353, "end": 354, "loc": { "start": { "line": 11, "column": 32 }, "end": { "line": 11, "column": 33 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 4, "start": 354, "end": 355, "loc": { "start": { "line": 11, "column": 33 }, "end": { "line": 11, "column": 34 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 355, "end": 356, "loc": { "start": { "line": 11, "column": 34 }, "end": { "line": 11, "column": 35 } } }, { "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": 361, "end": 367, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 10 } } }, { "type": { "label": "new", "keyword": "new", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "new", "start": 368, "end": 371, "loc": { "start": { "line": 12, "column": 11 }, "end": { "line": 12, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Uint32Array", "start": 372, "end": 383, "loc": { "start": { "line": 12, "column": 15 }, "end": { "line": 12, "column": 26 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 383, "end": 384, "loc": { "start": { "line": 12, "column": 26 }, "end": { "line": 12, "column": 27 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "buf", "start": 384, "end": 387, "loc": { "start": { "line": 12, "column": 27 }, "end": { "line": 12, "column": 30 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 387, "end": 388, "loc": { "start": { "line": 12, "column": 30 }, "end": { "line": 12, "column": 31 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "buffer", "start": 388, "end": 394, "loc": { "start": { "line": 12, "column": 31 }, "end": { "line": 12, "column": 37 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 394, "end": 395, "loc": { "start": { "line": 12, "column": 37 }, "end": { "line": 12, "column": 38 } } }, { "type": { "label": "[", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 395, "end": 396, "loc": { "start": { "line": 12, "column": 38 }, "end": { "line": 12, "column": 39 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 0, "start": 396, "end": 397, "loc": { "start": { "line": 12, "column": 39 }, "end": { "line": 12, "column": 40 } } }, { "type": { "label": "]", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 397, "end": 398, "loc": { "start": { "line": 12, "column": 40 }, "end": { "line": 12, "column": 41 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 401, "end": 402, "loc": { "start": { "line": 13, "column": 2 }, "end": { "line": 13, "column": 3 } } }, { "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": 403, "end": 407, "loc": { "start": { "line": 13, "column": 4 }, "end": { "line": 13, "column": 8 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 408, "end": 409, "loc": { "start": { "line": 13, "column": 9 }, "end": { "line": 13, "column": 10 } } }, { "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": 414, "end": 420, "loc": { "start": { "line": 14, "column": 4 }, "end": { "line": 14, "column": 10 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Math", "start": 421, "end": 425, "loc": { "start": { "line": 14, "column": 11 }, "end": { "line": 14, "column": 15 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 425, "end": 426, "loc": { "start": { "line": 14, "column": 15 }, "end": { "line": 14, "column": 16 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "ceil", "start": 426, "end": 430, "loc": { "start": { "line": 14, "column": 16 }, "end": { "line": 14, "column": 20 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 430, "end": 431, "loc": { "start": { "line": 14, "column": 20 }, "end": { "line": 14, "column": 21 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "Math", "start": 431, "end": 435, "loc": { "start": { "line": 14, "column": 21 }, "end": { "line": 14, "column": 25 } } }, { "type": { "label": ".", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 435, "end": 436, "loc": { "start": { "line": 14, "column": 25 }, "end": { "line": 14, "column": 26 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "random", "start": 436, "end": 442, "loc": { "start": { "line": 14, "column": 26 }, "end": { "line": 14, "column": 32 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 442, "end": 443, "loc": { "start": { "line": 14, "column": 32 }, "end": { "line": 14, "column": 33 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 443, "end": 444, "loc": { "start": { "line": 14, "column": 33 }, "end": { "line": 14, "column": 34 } } }, { "type": { "label": "*", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": 10, "updateContext": null }, "value": "*", "start": 445, "end": 446, "loc": { "start": { "line": 14, "column": 35 }, "end": { "line": 14, "column": 36 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 4294967295, "start": 447, "end": 457, "loc": { "start": { "line": 14, "column": 37 }, "end": { "line": 14, "column": 47 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 457, "end": 458, "loc": { "start": { "line": 14, "column": 47 }, "end": { "line": 14, "column": 48 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 461, "end": 462, "loc": { "start": { "line": 15, "column": 2 }, "end": { "line": 15, "column": 3 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 463, "end": 464, "loc": { "start": { "line": 16, "column": 0 }, "end": { "line": 16, "column": 1 } } }, { "type": { "label": "eof", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 465, "end": 465, "loc": { "start": { "line": 17, "column": 0 }, "end": { "line": 17, "column": 0 } } } ] }