Skip to main content
Create new
Introduction
Reactivity
Props
Logic
Events
Bindings
Lifecycle
Stores
Motion
Transitions
Animations
Easing
SVG
Actions
Classes
Component composition
Context API
Special elements
Module context
Debugging
7GUIs
Miscellaneous
App.svelte
<script>
import { onMount } from 'svelte';

let canvas = $state();

onMount(() => {
const ctx = canvas.getContext('2d');
let frame;

(function loop() {
frame = requestAnimationFrame(loop);

const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);

for (let p = 0; p < imageData.data.length; p += 4) {
const i = p / 4;
const x = i % canvas.width;
const y = (i / canvas.height) >>> 0;

const t = window.performance.now();

const r = 64 + (128 * x) / canvas.width + 64 * Math.sin(t / 1000);
const g = 64 + (128 * y) / canvas.height + 64 * Math.cos(t / 1400);
const b = 128;

imageData.data[p + 0] = r;
imageData.data[p + 1] = g;
imageData.data[p + 2] = b;
imageData.data[p + 3] = 255;
}

ctx.putImageData(imageData, 0, 0);
})();

return () => {
cancelAnimationFrame(frame);

Error compiling component

WebAssembly.instantiateStreaming(): value type opcode @+13
import 'svelte/internal/disclose-version';
import * as $ from 'svelte/internal/client';
import { onMount } from 'svelte';

var root = $.template(`<canvas class="svelte-1mvjxco"></canvas>`);

export default function App($$anchor, $$props) {
$.push($$props, true);

let canvas = $.state(undefined);

onMount(() => {
const ctx = $.get(canvas).getContext('2d');
let frame;

(function loop() {
frame = requestAnimationFrame(loop);

const imageData = ctx.getImageData(0, 0, $.get(canvas).width, $.get(canvas).height);

for (let p = 0; p < imageData.data.length; p += 4) {
const i = p / 4;
const x = i % $.get(canvas).width;
const y = i / $.get(canvas).height >>> 0;
const t = window.performance.now();
const r = 64 + 128 * x / $.get(canvas).width + 64 * Math.sin(t / 1000);
const g = 64 + 128 * y / $.get(canvas).height + 64 * Math.cos(t / 1400);
const b = 128;

imageData.data[p + 0] = r;
imageData.data[p + 1] = g;
imageData.data[p + 2] = b;
imageData.data[p + 3] = 255;
}

ctx.putImageData(imageData, 0, 0);
result = svelte.compile(source, {
generate: ,
});

canvas.svelte-1mvjxco {
width: 100%;
height: 100%;
background-color: #666;
-webkit-mask: url(/svelte-logo-mask.svg) 50% 50% no-repeat;
mask: url(/svelte-logo-mask.svg) 50% 50% no-repeat;
}

		
			
				
  • Root {
    • css: StyleSheet {...}
      • type: "StyleSheet"
      • start: 942
      • end: 1144
      • attributes: []
      • children: [...] (1)
        • Rule {...}
          • type: "Rule"
          • prelude: SelectorList {...}
            • type: "SelectorList"
            • start: 951
            • end: 957
            • children: [...] (1)
              • ComplexSelector {...}
                • type: "ComplexSelector"
                • start: 951
                • end: 957
                • children: [...] (1)
                  • RelativeSelector {...}
                    • type: "RelativeSelector"
                    • combinator: null
                    • selectors: [...] (1)
                      • TypeSelector {...}
                        • type: "TypeSelector"
                        • name: "canvas"
                        • start: 951
                        • end: 957
                        }
                      ]
                    • start: 951
                    • end: 957
                    }
                  ]
                }
              ]
            }
          • block: Block {...}
            • type: "Block"
            • start: 958
            • end: 1135
            • children: [...] (5)
              • Declaration {...}
                • type: "Declaration"
                • start: 962
                • end: 973
                • property: "width"
                • value: "100%"
                }
              • Declaration {...}
                • type: "Declaration"
                • start: 977
                • end: 989
                • property: "height"
                • value: "100%"
                }
              • Declaration {...}
                • type: "Declaration"
                • start: 993
                • end: 1015
                • property: "background-color"
                • value: "#666"
                }
              • Declaration {...}
                • type: "Declaration"
                • start: 1019
                • end: 1077
                • property: "-webkit-mask"
                • value: "url(/svelte-logo-mask.svg) 50% 50% no-repeat"
                }
              • Declaration {...}
                • type: "Declaration"
                • start: 1081
                • end: 1131
                • property: "mask"
                • value: "url(/svelte-logo-mask.svg) 50% 50% no-repeat"
                }
              ]
            }
          • start: 951
          • end: 1135
          }
        ]
      • content: {...}
        • start: 949
        • end: 1136
        • styles: "\n\tcanvas {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbackground-color: #666;\n\t\t-webkit-mask: url(/svelte-logo-mask.svg) 50% 50% no-repeat;\n\t\tmask: url(/svelte-logo-mask.svg) 50% 50% no-repeat;\n\t}\n"
        • comment: null
        }
      }
    • js: []
    • start: 881
    • end: 940
    • type: "Root"
    • fragment: Fragment {...}
      • type: "Fragment"
      • nodes: [...] (3)
        • Text {...}
          • type: "Text"
          • start: 879
          • end: 881
          • raw: "\n\n"
          • data: "\n\n"
          }
        • RegularElement {...}
          • type: "RegularElement"
          • start: 881
          • end: 940
          • name: "canvas"
          • attributes: [...] (4)
            • BindDirective {...}
              • start: 889
              • end: 907
              • type: "BindDirective"
              • name: "this"
              • expression: Identifier {...}
                • type: "Identifier"
                • start: 900
                • end: 906
                • loc: {...}
                  • start: {...}
                    • line: 41
                    • column: 19
                    }
                  • end: {...}
                    • line: 41
                    • column: 25
                    }
                  }
                • name: "canvas"
                }
              • modifiers: []
              }
            • Attribute {...}
              • type: "Attribute"
              • start: 908
              • end: 918
              • name: "width"
              • value: ExpressionTag {...}
                • type: "ExpressionTag"
                • start: 914
                • end: 918
                • expression: Literal {...}
                  • type: "Literal"
                  • start: 915
                  • end: 917
                  • loc: {...}
                    • start: {...}
                      • line: 41
                      • column: 34
                      }
                    • end: {...}
                      • line: 41
                      • column: 36
                      }
                    }
                  • value: 32
                  • raw: "32"
                  }
                }
              }
            • Attribute {...}
              • type: "Attribute"
              • start: 919
              • end: 930
              • name: "height"
              • value: ExpressionTag {...}
                • type: "ExpressionTag"
                • start: 926
                • end: 930
                • expression: Literal {...}
                  • type: "Literal"
                  • start: 927
                  • end: 929
                  • loc: {...}
                    • start: {...}
                      • line: 41
                      • column: 46
                      }
                    • end: {...}
                      • line: 41
                      • column: 48
                      }
                    }
                  • value: 32
                  • raw: "32"
                  }
                }
              }
            • Attribute {...}
              • type: "Attribute"
              • start: -1
              • end: -1
              • name: "class"
              • value: [...] (1)
                • Text {...}
                  • type: "Text"
                  • data: "svelte-1mvjxco"
                  • raw: "svelte-1mvjxco"
                  • start: -1
                  • end: -1
                  }
                ]
              }
            ]
          • fragment: Fragment {...}
            • type: "Fragment"
            • nodes: []
            }
          }
        • Text {...}
          • type: "Text"
          • start: 940
          • end: 942
          • raw: "\n\n"
          • data: "\n\n"
          }
        ]
      }
    • options: null
    • instance: Script {...}
      • type: "Script"
      • start: 0
      • end: 879
      • context: "default"
      • content: Program {...}
        • type: "Program"
        • start: 8
        • end: 870
        • loc: {...}
          • start: {...}
            • line: 1
            • column: 0
            }
          • end: {...}
            • line: 39
            • column: 0
            }
          }
        • body: [...] (3)
          • ImportDeclaration {...}
            • type: "ImportDeclaration"
            • start: 10
            • end: 43
            • loc: {...}
              • start: {...}
                • line: 2
                • column: 1
                }
              • end: {...}
                • line: 2
                • column: 34
                }
              }
            • specifiers: [...] (1)
              • ImportSpecifier {...}
                • type: "ImportSpecifier"
                • start: 19
                • end: 26
                • loc: {...}
                  • start: {...}
                    • line: 2
                    • column: 10
                    }
                  • end: {...}
                    • line: 2
                    • column: 17
                    }
                  }
                • imported: Identifier {...}
                  • type: "Identifier"
                  • start: 19
                  • end: 26
                  • loc: {...}
                    • start: {...}
                      • line: 2
                      • column: 10
                      }
                    • end: {...}
                      • line: 2
                      • column: 17
                      }
                    }
                  • name: "onMount"
                  }
                • local: Identifier {...}
                  • type: "Identifier"
                  • start: 19
                  • end: 26
                  • loc: {...}
                    • start: {...}
                      • line: 2
                      • column: 10
                      }
                    • end: {...}
                      • line: 2
                      • column: 17
                      }
                    }
                  • name: "onMount"
                  }
                }
              ]
            • source: Literal {...}
              • type: "Literal"
              • start: 34
              • end: 42
              • loc: {...}
                • start: {...}
                  • line: 2
                  • column: 25
                  }
                • end: {...}
                  • line: 2
                  • column: 33
                  }
                }
              • value: "svelte"
              • raw: "'svelte'"
              }
            }
          • VariableDeclaration {...}
            • type: "VariableDeclaration"
            • start: 46
            • end: 68
            • loc: {...}
              • start: {...}
                • line: 4
                • column: 1
                }
              • end: {...}
                • line: 4
                • column: 23
                }
              }
            • declarations: [...] (1)
              • VariableDeclarator {...}
                • type: "VariableDeclarator"
                • start: 50
                • end: 67
                • loc: {...}
                  • start: {...}
                    • line: 4
                    • column: 5
                    }
                  • end: {...}
                    • line: 4
                    • column: 22
                    }
                  }
                • id: Identifier {...}
                  • type: "Identifier"
                  • start: 50
                  • end: 56
                  • loc: {...}
                    • start: {...}
                      • line: 4
                      • column: 5
                      }
                    • end: {...}
                      • line: 4
                      • column: 11
                      }
                    }
                  • name: "canvas"
                  }
                • init: CallExpression {...}
                  • type: "CallExpression"
                  • start: 59
                  • end: 67
                  • loc: {...}
                    • start: {...}
                      • line: 4
                      • column: 14
                      }
                    • end: {...}
                      • line: 4
                      • column: 22
                      }
                    }
                  • callee: Identifier {...}
                    • type: "Identifier"
                    • start: 59
                    • end: 65
                    • loc: {...}
                      • start: {...}
                        • line: 4
                        • column: 14
                        }
                      • end: {...}
                        • line: 4
                        • column: 20
                        }
                      }
                    • name: "$state"
                    }
                  • arguments: []
                  • optional: false
                  }
                }
              ]
            • kind: "let"
            }
          • ExpressionStatement {...}
            • type: "ExpressionStatement"
            • start: 71
            • end: 869
            • loc: {...}
              • start: {...}
                • line: 6
                • column: 1
                }
              • end: {...}
                • line: 38
                • column: 4
                }
              }
            • expression: CallExpression {...}
              • type: "CallExpression"
              • start: 71
              • end: 868
              • loc: {...}
                • start: {...}
                  • line: 6
                  • column: 1
                  }
                • end: {...}
                  • line: 38
                  • column: 3
                  }
                }
              • callee: Identifier {...}
                • type: "Identifier"
                • start: 71
                • end: 78
                • loc: {...}
                  • start: {...}
                    • line: 6
                    • column: 1
                    }
                  • end: {...}
                    • line: 6
                    • column: 8
                    }
                  }
                • name: "onMount"
                }
              • arguments: [...] (1)
                • ArrowFunctionExpression {...}
                  • type: "ArrowFunctionExpression"
                  • start: 79
                  • end: 867
                  • loc: {...}
                    • start: {...}
                      • line: 6
                      • column: 9
                      }
                    • end: {...}
                      • line: 38
                      • column: 2
                      }
                    }
                  • id: null
                  • expression: false
                  • generator: false
                  • async: false
                  • params: []
                  • body: BlockStatement {...}
                    • type: "BlockStatement"
                    • start: 85
                    • end: 867
                    • loc: {...}
                      • start: {...}
                        • line: 6
                        • column: 15
                        }
                      • end: {...}
                        • line: 38
                        • column: 2
                        }
                      }
                    • body: [...] (4)
                      • VariableDeclaration {...}
                        • type: "VariableDeclaration"
                        • start: 89
                        • end: 125
                        • loc: {...}
                          • start: {...}
                            • line: 7
                            • column: 2
                            }
                          • end: {...}
                            • line: 7
                            • column: 38
                            }
                          }
                        • declarations: [...] (1)
                          • VariableDeclarator {...}
                            • type: "VariableDeclarator"
                            • start: 95
                            • end: 124
                            • loc: {...}
                              • start: {...}
                                • line: 7
                                • column: 8
                                }
                              • end: {...}
                                • line: 7
                                • column: 37
                                }
                              }
                            • id: Identifier {...}
                              • type: "Identifier"
                              • start: 95
                              • end: 98
                              • loc: {...}
                                • start: {...}
                                  • line: 7
                                  • column: 8
                                  }
                                • end: {...}
                                  • line: 7
                                  • column: 11
                                  }
                                }
                              • name: "ctx"
                              }
                            • init: CallExpression {...}
                              • type: "CallExpression"
                              • start: 101
                              • end: 124
                              • loc: {...}
                                • start: {...}
                                  • line: 7
                                  • column: 14
                                  }
                                • end: {...}
                                  • line: 7
                                  • column: 37
                                  }
                                }
                              • callee: MemberExpression {...}
                                • type: "MemberExpression"
                                • start: 101
                                • end: 118
                                • loc: {...}
                                  • start: {...}
                                    • line: 7
                                    • column: 14
                                    }
                                  • end: {...}
                                    • line: 7
                                    • column: 31
                                    }
                                  }
                                • object: Identifier {...}
                                  • type: "Identifier"
                                  • start: 101
                                  • end: 107
                                  • loc: {...}
                                    • start: {...}
                                      • line: 7
                                      • column: 14
                                      }
                                    • end: {...}
                                      • line: 7
                                      • column: 20
                                      }
                                    }
                                  • name: "canvas"
                                  }
                                • property: Identifier {...}
                                  • type: "Identifier"
                                  • start: 108
                                  • end: 118
                                  • loc: {...}
                                    • start: {...}
                                      • line: 7
                                      • column: 21
                                      }
                                    • end: {...}
                                      • line: 7
                                      • column: 31
                                      }
                                    }
                                  • name: "getContext"
                                  }
                                • computed: false
                                • optional: false
                                }
                              • arguments: [...] (1)
                                • Literal {...}
                                  • type: "Literal"
                                  • start: 119
                                  • end: 123
                                  • loc: {...}
                                    • start: {...}
                                      • line: 7
                                      • column: 32
                                      }
                                    • end: {...}
                                      • line: 7
                                      • column: 36
                                      }
                                    }
                                  • value: "2d"
                                  • raw: "'2d'"
                                  }
                                ]
                              • optional: false
                              }
                            }
                          ]
                        • kind: "const"
                        }
                      • VariableDeclaration {...}
                        • type: "VariableDeclaration"
                        • start: 128
                        • end: 138
                        • loc: {...}
                          • start: {...}
                            • line: 8
                            • column: 2
                            }
                          • end: {...}
                            • line: 8
                            • column: 12
                            }
                          }
                        • declarations: [...] (1)
                          • VariableDeclarator {...}
                            • type: "VariableDeclarator"
                            • start: 132
                            • end: 137
                            • loc: {...}
                              • start: {...}
                                • line: 8
                                • column: 6
                                }
                              • end: {...}
                                • line: 8
                                • column: 11
                                }
                              }
                            • id: Identifier {...}
                              • type: "Identifier"
                              • start: 132
                              • end: 137
                              • loc: {...}
                                • start: {...}
                                  • line: 8
                                  • column: 6
                                  }
                                • end: {...}
                                  • line: 8
                                  • column: 11
                                  }
                                }
                              • name: "frame"
                              }
                            • init: null
                            }
                          ]
                        • kind: "let"
                        }
                      • ExpressionStatement {...}
                        • type: "ExpressionStatement"
                        • start: 142
                        • end: 809
                        • loc: {...}
                          • start: {...}
                            • line: 10
                            • column: 2
                            }
                          • end: {...}
                            • line: 33
                            • column: 7
                            }
                          }
                        • expression: CallExpression {...}
                          • type: "CallExpression"
                          • start: 142
                          • end: 808
                          • loc: {...}
                            • start: {...}
                              • line: 10
                              • column: 2
                              }
                            • end: {...}
                              • line: 33
                              • column: 6
                              }
                            }
                          • callee: FunctionExpression {...}
                            • type: "FunctionExpression"
                            • start: 143
                            • end: 805
                            • loc: {...}
                              • start: {...}
                                • line: 10
                                • column: 3
                                }
                              • end: {...}
                                • line: 33
                                • column: 3
                                }
                              }
                            • id: Identifier {...}
                              • type: "Identifier"
                              • start: 152
                              • end: 156
                              • loc: {...}
                                • start: {...}
                                  • line: 10
                                  • column: 12
                                  }
                                • end: {...}
                                  • line: 10
                                  • column: 16
                                  }
                                }
                              • name: "loop"
                              }
                            • expression: false
                            • generator: false
                            • async: false
                            • params: []
                            • body: BlockStatement {...}
                              • type: "BlockStatement"
                              • start: 159
                              • end: 805
                              • loc: {...}
                                • start: {...}
                                  • line: 10
                                  • column: 19
                                  }
                                • end: {...}
                                  • line: 33
                                  • column: 3
                                  }
                                }
                              • body: [...] (4)
                                • ExpressionStatement {...}
                                  • type: "ExpressionStatement"
                                  • start: 164
                                  • end: 200
                                  • loc: {...}
                                    • start: {...}
                                      • line: 11
                                      • column: 3
                                      }
                                    • end: {...}
                                      • line: 11
                                      • column: 39
                                      }
                                    }
                                  • expression: AssignmentExpression {...}
                                    • type: "AssignmentExpression"
                                    • start: 164
                                    • end: 199
                                    • loc: {...}
                                      • start: {...}
                                        • line: 11
                                        • column: 3
                                        }
                                      • end: {...}
                                        • line: 11
                                        • column: 38
                                        }
                                      }
                                    • operator: "="
                                    • left: Identifier {...}
                                      • type: "Identifier"
                                      • start: 164
                                      • end: 169
                                      • loc: {...}
                                        • start: {...}
                                          • line: 11
                                          • column: 3
                                          }
                                        • end: {...}
                                          • line: 11
                                          • column: 8
                                          }
                                        }
                                      • name: "frame"
                                      }
                                    • right: CallExpression {...}
                                      • type: "CallExpression"
                                      • start: 172
                                      • end: 199
                                      • loc: {...}
                                        • start: {...}
                                          • line: 11
                                          • column: 11
                                          }
                                        • end: {...}
                                          • line: 11
                                          • column: 38
                                          }
                                        }
                                      • callee: Identifier {...}
                                        • type: "Identifier"
                                        • start: 172
                                        • end: 193
                                        • loc: {...}
                                          • start: {...}
                                            • line: 11
                                            • column: 11
                                            }
                                          • end: {...}
                                            • line: 11
                                            • column: 32
                                            }
                                          }
                                        • name: "requestAnimationFrame"
                                        }
                                      • arguments: [...] (1)
                                        • Identifier {...}
                                          • type: "Identifier"
                                          • start: 194
                                          • end: 198
                                          • loc: {...}
                                            • start: {...}
                                              • line: 11
                                              • column: 33
                                              }
                                            • end: {...}
                                              • line: 11
                                              • column: 37
                                              }
                                            }
                                          • name: "loop"
                                          }
                                        ]
                                      • optional: false
                                      }
                                    }
                                  }
                                • VariableDeclaration {...}
                                  • type: "VariableDeclaration"
                                  • start: 205
                                  • end: 275
                                  • loc: {...}
                                    • start: {...}
                                      • line: 13
                                      • column: 3
                                      }
                                    • end: {...}
                                      • line: 13
                                      • column: 73
                                      }
                                    }
                                  • declarations: [...] (1)
                                    • VariableDeclarator {...}
                                      • type: "VariableDeclarator"
                                      • start: 211
                                      • end: 274
                                      • loc: {...}
                                        • start: {...}
                                          • line: 13
                                          • column: 9
                                          }
                                        • end: {...}
                                          • line: 13
                                          • column: 72
                                          }
                                        }
                                      • id: Identifier {...}
                                        • type: "Identifier"
                                        • start: 211
                                        • end: 220
                                        • loc: {...}
                                          • start: {...}
                                            • line: 13
                                            • column: 9
                                            }
                                          • end: {...}
                                            • line: 13
                                            • column: 18
                                            }
                                          }
                                        • name: "imageData"
                                        }
                                      • init: CallExpression {...}
                                        • type: "CallExpression"
                                        • start: 223
                                        • end: 274
                                        • loc: {...}
                                          • start: {...}
                                            • line: 13
                                            • column: 21
                                            }
                                          • end: {...}
                                            • line: 13
                                            • column: 72
                                            }
                                          }
                                        • callee: MemberExpression {...}
                                          • type: "MemberExpression"
                                          • start: 223
                                          • end: 239
                                          • loc: {...}
                                            • start: {...}
                                              • line: 13
                                              • column: 21
                                              }
                                            • end: {...}
                                              • line: 13
                                              • column: 37
                                              }
                                            }
                                          • object: Identifier {...}
                                            • type: "Identifier"
                                            • start: 223
                                            • end: 226
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 21
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 24
                                                }
                                              }
                                            • name: "ctx"
                                            }
                                          • property: Identifier {...}
                                            • type: "Identifier"
                                            • start: 227
                                            • end: 239
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 25
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 37
                                                }
                                              }
                                            • name: "getImageData"
                                            }
                                          • computed: false
                                          • optional: false
                                          }
                                        • arguments: [...] (4)
                                          • Literal {...}
                                            • type: "Literal"
                                            • start: 240
                                            • end: 241
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 38
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 39
                                                }
                                              }
                                            • value: 0
                                            • raw: "0"
                                            }
                                          • Literal {...}
                                            • type: "Literal"
                                            • start: 243
                                            • end: 244
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 41
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 42
                                                }
                                              }
                                            • value: 0
                                            • raw: "0"
                                            }
                                          • MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 246
                                            • end: 258
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 44
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 56
                                                }
                                              }
                                            • object: Identifier {...}
                                              • type: "Identifier"
                                              • start: 246
                                              • end: 252
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 13
                                                  • column: 44
                                                  }
                                                • end: {...}
                                                  • line: 13
                                                  • column: 50
                                                  }
                                                }
                                              • name: "canvas"
                                              }
                                            • property: Identifier {...}
                                              • type: "Identifier"
                                              • start: 253
                                              • end: 258
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 13
                                                  • column: 51
                                                  }
                                                • end: {...}
                                                  • line: 13
                                                  • column: 56
                                                  }
                                                }
                                              • name: "width"
                                              }
                                            • computed: false
                                            • optional: false
                                            }
                                          • MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 260
                                            • end: 273
                                            • loc: {...}
                                              • start: {...}
                                                • line: 13
                                                • column: 58
                                                }
                                              • end: {...}
                                                • line: 13
                                                • column: 71
                                                }
                                              }
                                            • object: Identifier {...}
                                              • type: "Identifier"
                                              • start: 260
                                              • end: 266
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 13
                                                  • column: 58
                                                  }
                                                • end: {...}
                                                  • line: 13
                                                  • column: 64
                                                  }
                                                }
                                              • name: "canvas"
                                              }
                                            • property: Identifier {...}
                                              • type: "Identifier"
                                              • start: 267
                                              • end: 273
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 13
                                                  • column: 65
                                                  }
                                                • end: {...}
                                                  • line: 13
                                                  • column: 71
                                                  }
                                                }
                                              • name: "height"
                                              }
                                            • computed: false
                                            • optional: false
                                            }
                                          ]
                                        • optional: false
                                        }
                                      }
                                    ]
                                  • kind: "const"
                                  }
                                • ForStatement {...}
                                  • type: "ForStatement"
                                  • start: 280
                                  • end: 762
                                  • loc: {...}
                                    • start: {...}
                                      • line: 15
                                      • column: 3
                                      }
                                    • end: {...}
                                      • line: 30
                                      • column: 4
                                      }
                                    }
                                  • init: VariableDeclaration {...}
                                    • type: "VariableDeclaration"
                                    • start: 285
                                    • end: 294
                                    • loc: {...}
                                      • start: {...}
                                        • line: 15
                                        • column: 8
                                        }
                                      • end: {...}
                                        • line: 15
                                        • column: 17
                                        }
                                      }
                                    • declarations: [...] (1)
                                      • VariableDeclarator {...}
                                        • type: "VariableDeclarator"
                                        • start: 289
                                        • end: 294
                                        • loc: {...}
                                          • start: {...}
                                            • line: 15
                                            • column: 12
                                            }
                                          • end: {...}
                                            • line: 15
                                            • column: 17
                                            }
                                          }
                                        • id: Identifier {...}
                                          • type: "Identifier"
                                          • start: 289
                                          • end: 290
                                          • loc: {...}
                                            • start: {...}
                                              • line: 15
                                              • column: 12
                                              }
                                            • end: {...}
                                              • line: 15
                                              • column: 13
                                              }
                                            }
                                          • name: "p"
                                          }
                                        • init: Literal {...}
                                          • type: "Literal"
                                          • start: 293
                                          • end: 294
                                          • loc: {...}
                                            • start: {...}
                                              • line: 15
                                              • column: 16
                                              }
                                            • end: {...}
                                              • line: 15
                                              • column: 17
                                              }
                                            }
                                          • value: 0
                                          • raw: "0"
                                          }
                                        }
                                      ]
                                    • kind: "let"
                                    }
                                  • test: BinaryExpression {...}
                                    • type: "BinaryExpression"
                                    • start: 296
                                    • end: 321
                                    • loc: {...}
                                      • start: {...}
                                        • line: 15
                                        • column: 19
                                        }
                                      • end: {...}
                                        • line: 15
                                        • column: 44
                                        }
                                      }
                                    • left: Identifier {...}
                                      • type: "Identifier"
                                      • start: 296
                                      • end: 297
                                      • loc: {...}
                                        • start: {...}
                                          • line: 15
                                          • column: 19
                                          }
                                        • end: {...}
                                          • line: 15
                                          • column: 20
                                          }
                                        }
                                      • name: "p"
                                      }
                                    • operator: "<"
                                    • right: MemberExpression {...}
                                      • type: "MemberExpression"
                                      • start: 300
                                      • end: 321
                                      • loc: {...}
                                        • start: {...}
                                          • line: 15
                                          • column: 23
                                          }
                                        • end: {...}
                                          • line: 15
                                          • column: 44
                                          }
                                        }
                                      • object: MemberExpression {...}
                                        • type: "MemberExpression"
                                        • start: 300
                                        • end: 314
                                        • loc: {...}
                                          • start: {...}
                                            • line: 15
                                            • column: 23
                                            }
                                          • end: {...}
                                            • line: 15
                                            • column: 37
                                            }
                                          }
                                        • object: Identifier {...}
                                          • type: "Identifier"
                                          • start: 300
                                          • end: 309
                                          • loc: {...}
                                            • start: {...}
                                              • line: 15
                                              • column: 23
                                              }
                                            • end: {...}
                                              • line: 15
                                              • column: 32
                                              }
                                            }
                                          • name: "imageData"
                                          }
                                        • property: Identifier {...}
                                          • type: "Identifier"
                                          • start: 310
                                          • end: 314
                                          • loc: {...}
                                            • start: {...}
                                              • line: 15
                                              • column: 33
                                              }
                                            • end: {...}
                                              • line: 15
                                              • column: 37
                                              }
                                            }
                                          • name: "data"
                                          }
                                        • computed: false
                                        • optional: false
                                        }
                                      • property: Identifier {...}
                                        • type: "Identifier"
                                        • start: 315
                                        • end: 321
                                        • loc: {...}
                                          • start: {...}
                                            • line: 15
                                            • column: 38
                                            }
                                          • end: {...}
                                            • line: 15
                                            • column: 44
                                            }
                                          }
                                        • name: "length"
                                        }
                                      • computed: false
                                      • optional: false
                                      }
                                    }
                                  • update: AssignmentExpression {...}
                                    • type: "AssignmentExpression"
                                    • start: 323
                                    • end: 329
                                    • loc: {...}
                                      • start: {...}
                                        • line: 15
                                        • column: 46
                                        }
                                      • end: {...}
                                        • line: 15
                                        • column: 52
                                        }
                                      }
                                    • operator: "+="
                                    • left: Identifier {...}
                                      • type: "Identifier"
                                      • start: 323
                                      • end: 324
                                      • loc: {...}
                                        • start: {...}
                                          • line: 15
                                          • column: 46
                                          }
                                        • end: {...}
                                          • line: 15
                                          • column: 47
                                          }
                                        }
                                      • name: "p"
                                      }
                                    • right: Literal {...}
                                      • type: "Literal"
                                      • start: 328
                                      • end: 329
                                      • loc: {...}
                                        • start: {...}
                                          • line: 15
                                          • column: 51
                                          }
                                        • end: {...}
                                          • line: 15
                                          • column: 52
                                          }
                                        }
                                      • value: 4
                                      • raw: "4"
                                      }
                                    }
                                  • body: BlockStatement {...}
                                    • type: "BlockStatement"
                                    • start: 331
                                    • end: 762
                                    • loc: {...}
                                      • start: {...}
                                        • line: 15
                                        • column: 54
                                        }
                                      • end: {...}
                                        • line: 30
                                        • column: 4
                                        }
                                      }
                                    • body: [...] (11)
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 337
                                        • end: 353
                                        • loc: {...}
                                          • start: {...}
                                            • line: 16
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 16
                                            • column: 20
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 343
                                            • end: 352
                                            • loc: {...}
                                              • start: {...}
                                                • line: 16
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 16
                                                • column: 19
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 343
                                              • end: 344
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 16
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 16
                                                  • column: 11
                                                  }
                                                }
                                              • name: "i"
                                              }
                                            • init: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 347
                                              • end: 352
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 16
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 16
                                                  • column: 19
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 347
                                                • end: 348
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 16
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 16
                                                    • column: 15
                                                    }
                                                  }
                                                • name: "p"
                                                }
                                              • operator: "/"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 351
                                                • end: 352
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 16
                                                    • column: 18
                                                    }
                                                  • end: {...}
                                                    • line: 16
                                                    • column: 19
                                                    }
                                                  }
                                                • value: 4
                                                • raw: "4"
                                                }
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 358
                                        • end: 385
                                        • loc: {...}
                                          • start: {...}
                                            • line: 17
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 17
                                            • column: 31
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 364
                                            • end: 384
                                            • loc: {...}
                                              • start: {...}
                                                • line: 17
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 17
                                                • column: 30
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 364
                                              • end: 365
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 17
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 17
                                                  • column: 11
                                                  }
                                                }
                                              • name: "x"
                                              }
                                            • init: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 368
                                              • end: 384
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 17
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 17
                                                  • column: 30
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 368
                                                • end: 369
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 17
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 17
                                                    • column: 15
                                                    }
                                                  }
                                                • name: "i"
                                                }
                                              • operator: "%"
                                              • right: MemberExpression {...}
                                                • type: "MemberExpression"
                                                • start: 372
                                                • end: 384
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 17
                                                    • column: 18
                                                    }
                                                  • end: {...}
                                                    • line: 17
                                                    • column: 30
                                                    }
                                                  }
                                                • object: Identifier {...}
                                                  • type: "Identifier"
                                                  • start: 372
                                                  • end: 378
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 17
                                                      • column: 18
                                                      }
                                                    • end: {...}
                                                      • line: 17
                                                      • column: 24
                                                      }
                                                    }
                                                  • name: "canvas"
                                                  }
                                                • property: Identifier {...}
                                                  • type: "Identifier"
                                                  • start: 379
                                                  • end: 384
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 17
                                                      • column: 25
                                                      }
                                                    • end: {...}
                                                      • line: 17
                                                      • column: 30
                                                      }
                                                    }
                                                  • name: "width"
                                                  }
                                                • computed: false
                                                • optional: false
                                                }
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 390
                                        • end: 426
                                        • loc: {...}
                                          • start: {...}
                                            • line: 18
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 18
                                            • column: 40
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 396
                                            • end: 425
                                            • loc: {...}
                                              • start: {...}
                                                • line: 18
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 18
                                                • column: 39
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 396
                                              • end: 397
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 18
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 18
                                                  • column: 11
                                                  }
                                                }
                                              • name: "y"
                                              }
                                            • init: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 400
                                              • end: 425
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 18
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 18
                                                  • column: 39
                                                  }
                                                }
                                              • left: BinaryExpression {...}
                                                • type: "BinaryExpression"
                                                • start: 401
                                                • end: 418
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 18
                                                    • column: 15
                                                    }
                                                  • end: {...}
                                                    • line: 18
                                                    • column: 32
                                                    }
                                                  }
                                                • left: Identifier {...}
                                                  • type: "Identifier"
                                                  • start: 401
                                                  • end: 402
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 18
                                                      • column: 15
                                                      }
                                                    • end: {...}
                                                      • line: 18
                                                      • column: 16
                                                      }
                                                    }
                                                  • name: "i"
                                                  }
                                                • operator: "/"
                                                • right: MemberExpression {...}
                                                  • type: "MemberExpression"
                                                  • start: 405
                                                  • end: 418
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 18
                                                      • column: 19
                                                      }
                                                    • end: {...}
                                                      • line: 18
                                                      • column: 32
                                                      }
                                                    }
                                                  • object: Identifier {...}
                                                    • type: "Identifier"
                                                    • start: 405
                                                    • end: 411
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 18
                                                        • column: 19
                                                        }
                                                      • end: {...}
                                                        • line: 18
                                                        • column: 25
                                                        }
                                                      }
                                                    • name: "canvas"
                                                    }
                                                  • property: Identifier {...}
                                                    • type: "Identifier"
                                                    • start: 412
                                                    • end: 418
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 18
                                                        • column: 26
                                                        }
                                                      • end: {...}
                                                        • line: 18
                                                        • column: 32
                                                        }
                                                      }
                                                    • name: "height"
                                                    }
                                                  • computed: false
                                                  • optional: false
                                                  }
                                                }
                                              • operator: ">>>"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 424
                                                • end: 425
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 18
                                                    • column: 38
                                                    }
                                                  • end: {...}
                                                    • line: 18
                                                    • column: 39
                                                    }
                                                  }
                                                • value: 0
                                                • raw: "0"
                                                }
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 432
                                        • end: 467
                                        • loc: {...}
                                          • start: {...}
                                            • line: 20
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 20
                                            • column: 39
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 438
                                            • end: 466
                                            • loc: {...}
                                              • start: {...}
                                                • line: 20
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 20
                                                • column: 38
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 438
                                              • end: 439
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 20
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 20
                                                  • column: 11
                                                  }
                                                }
                                              • name: "t"
                                              }
                                            • init: CallExpression {...}
                                              • type: "CallExpression"
                                              • start: 442
                                              • end: 466
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 20
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 20
                                                  • column: 38
                                                  }
                                                }
                                              • callee: MemberExpression {...}
                                                • type: "MemberExpression"
                                                • start: 442
                                                • end: 464
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 20
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 20
                                                    • column: 36
                                                    }
                                                  }
                                                • object: MemberExpression {...}
                                                  • type: "MemberExpression"
                                                  • start: 442
                                                  • end: 460
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 20
                                                      • column: 14
                                                      }
                                                    • end: {...}
                                                      • line: 20
                                                      • column: 32
                                                      }
                                                    }
                                                  • object: Identifier {...}
                                                    • type: "Identifier"
                                                    • start: 442
                                                    • end: 448
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 20
                                                        • column: 14
                                                        }
                                                      • end: {...}
                                                        • line: 20
                                                        • column: 20
                                                        }
                                                      }
                                                    • name: "window"
                                                    }
                                                  • property: Identifier {...}
                                                    • type: "Identifier"
                                                    • start: 449
                                                    • end: 460
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 20
                                                        • column: 21
                                                        }
                                                      • end: {...}
                                                        • line: 20
                                                        • column: 32
                                                        }
                                                      }
                                                    • name: "performance"
                                                    }
                                                  • computed: false
                                                  • optional: false
                                                  }
                                                • property: Identifier {...}
                                                  • type: "Identifier"
                                                  • start: 461
                                                  • end: 464
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 20
                                                      • column: 33
                                                      }
                                                    • end: {...}
                                                      • line: 20
                                                      • column: 36
                                                      }
                                                    }
                                                  • name: "now"
                                                  }
                                                • computed: false
                                                • optional: false
                                                }
                                              • arguments: []
                                              • optional: false
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 473
                                        • end: 539
                                        • loc: {...}
                                          • start: {...}
                                            • line: 22
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 22
                                            • column: 70
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 479
                                            • end: 538
                                            • loc: {...}
                                              • start: {...}
                                                • line: 22
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 22
                                                • column: 69
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 479
                                              • end: 480
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 22
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 22
                                                  • column: 11
                                                  }
                                                }
                                              • name: "r"
                                              }
                                            • init: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 483
                                              • end: 538
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 22
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 22
                                                  • column: 69
                                                  }
                                                }
                                              • left: BinaryExpression {...}
                                                • type: "BinaryExpression"
                                                • start: 483
                                                • end: 512
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 22
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 22
                                                    • column: 43
                                                    }
                                                  }
                                                • left: Literal {...}
                                                  • type: "Literal"
                                                  • start: 483
                                                  • end: 485
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 22
                                                      • column: 14
                                                      }
                                                    • end: {...}
                                                      • line: 22
                                                      • column: 16
                                                      }
                                                    }
                                                  • value: 64
                                                  • raw: "64"
                                                  }
                                                • operator: "+"
                                                • right: BinaryExpression {...}
                                                  • type: "BinaryExpression"
                                                  • start: 488
                                                  • end: 512
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 22
                                                      • column: 19
                                                      }
                                                    • end: {...}
                                                      • line: 22
                                                      • column: 43
                                                      }
                                                    }
                                                  • left: BinaryExpression {...}
                                                    • type: "BinaryExpression"
                                                    • start: 489
                                                    • end: 496
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 22
                                                        • column: 20
                                                        }
                                                      • end: {...}
                                                        • line: 22
                                                        • column: 27
                                                        }
                                                      }
                                                    • left: Literal {...}
                                                      • type: "Literal"
                                                      • start: 489
                                                      • end: 492
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 20
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 23
                                                          }
                                                        }
                                                      • value: 128
                                                      • raw: "128"
                                                      }
                                                    • operator: "*"
                                                    • right: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 495
                                                      • end: 496
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 26
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 27
                                                          }
                                                        }
                                                      • name: "x"
                                                      }
                                                    }
                                                  • operator: "/"
                                                  • right: MemberExpression {...}
                                                    • type: "MemberExpression"
                                                    • start: 500
                                                    • end: 512
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 22
                                                        • column: 31
                                                        }
                                                      • end: {...}
                                                        • line: 22
                                                        • column: 43
                                                        }
                                                      }
                                                    • object: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 500
                                                      • end: 506
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 31
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 37
                                                          }
                                                        }
                                                      • name: "canvas"
                                                      }
                                                    • property: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 507
                                                      • end: 512
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 38
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 43
                                                          }
                                                        }
                                                      • name: "width"
                                                      }
                                                    • computed: false
                                                    • optional: false
                                                    }
                                                  }
                                                }
                                              • operator: "+"
                                              • right: BinaryExpression {...}
                                                • type: "BinaryExpression"
                                                • start: 515
                                                • end: 538
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 22
                                                    • column: 46
                                                    }
                                                  • end: {...}
                                                    • line: 22
                                                    • column: 69
                                                    }
                                                  }
                                                • left: Literal {...}
                                                  • type: "Literal"
                                                  • start: 515
                                                  • end: 517
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 22
                                                      • column: 46
                                                      }
                                                    • end: {...}
                                                      • line: 22
                                                      • column: 48
                                                      }
                                                    }
                                                  • value: 64
                                                  • raw: "64"
                                                  }
                                                • operator: "*"
                                                • right: CallExpression {...}
                                                  • type: "CallExpression"
                                                  • start: 520
                                                  • end: 538
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 22
                                                      • column: 51
                                                      }
                                                    • end: {...}
                                                      • line: 22
                                                      • column: 69
                                                      }
                                                    }
                                                  • callee: MemberExpression {...}
                                                    • type: "MemberExpression"
                                                    • start: 520
                                                    • end: 528
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 22
                                                        • column: 51
                                                        }
                                                      • end: {...}
                                                        • line: 22
                                                        • column: 59
                                                        }
                                                      }
                                                    • object: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 520
                                                      • end: 524
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 51
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 55
                                                          }
                                                        }
                                                      • name: "Math"
                                                      }
                                                    • property: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 525
                                                      • end: 528
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 56
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 59
                                                          }
                                                        }
                                                      • name: "sin"
                                                      }
                                                    • computed: false
                                                    • optional: false
                                                    }
                                                  • arguments: [...] (1)
                                                    • BinaryExpression {...}
                                                      • type: "BinaryExpression"
                                                      • start: 529
                                                      • end: 537
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 22
                                                          • column: 60
                                                          }
                                                        • end: {...}
                                                          • line: 22
                                                          • column: 68
                                                          }
                                                        }
                                                      • left: Identifier {...}
                                                        • type: "Identifier"
                                                        • start: 529
                                                        • end: 530
                                                        • loc: {...}
                                                          • start: {...}
                                                            • line: 22
                                                            • column: 60
                                                            }
                                                          • end: {...}
                                                            • line: 22
                                                            • column: 61
                                                            }
                                                          }
                                                        • name: "t"
                                                        }
                                                      • operator: "/"
                                                      • right: Literal {...}
                                                        • type: "Literal"
                                                        • start: 533
                                                        • end: 537
                                                        • loc: {...}
                                                          • start: {...}
                                                            • line: 22
                                                            • column: 64
                                                            }
                                                          • end: {...}
                                                            • line: 22
                                                            • column: 68
                                                            }
                                                          }
                                                        • value: 1000
                                                        • raw: "1000"
                                                        }
                                                      }
                                                    ]
                                                  • optional: false
                                                  }
                                                }
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 544
                                        • end: 611
                                        • loc: {...}
                                          • start: {...}
                                            • line: 23
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 23
                                            • column: 71
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 550
                                            • end: 610
                                            • loc: {...}
                                              • start: {...}
                                                • line: 23
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 23
                                                • column: 70
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 550
                                              • end: 551
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 23
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 23
                                                  • column: 11
                                                  }
                                                }
                                              • name: "g"
                                              }
                                            • init: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 554
                                              • end: 610
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 23
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 23
                                                  • column: 70
                                                  }
                                                }
                                              • left: BinaryExpression {...}
                                                • type: "BinaryExpression"
                                                • start: 554
                                                • end: 584
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 23
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 23
                                                    • column: 44
                                                    }
                                                  }
                                                • left: Literal {...}
                                                  • type: "Literal"
                                                  • start: 554
                                                  • end: 556
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 23
                                                      • column: 14
                                                      }
                                                    • end: {...}
                                                      • line: 23
                                                      • column: 16
                                                      }
                                                    }
                                                  • value: 64
                                                  • raw: "64"
                                                  }
                                                • operator: "+"
                                                • right: BinaryExpression {...}
                                                  • type: "BinaryExpression"
                                                  • start: 559
                                                  • end: 584
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 23
                                                      • column: 19
                                                      }
                                                    • end: {...}
                                                      • line: 23
                                                      • column: 44
                                                      }
                                                    }
                                                  • left: BinaryExpression {...}
                                                    • type: "BinaryExpression"
                                                    • start: 560
                                                    • end: 567
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 23
                                                        • column: 20
                                                        }
                                                      • end: {...}
                                                        • line: 23
                                                        • column: 27
                                                        }
                                                      }
                                                    • left: Literal {...}
                                                      • type: "Literal"
                                                      • start: 560
                                                      • end: 563
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 20
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 23
                                                          }
                                                        }
                                                      • value: 128
                                                      • raw: "128"
                                                      }
                                                    • operator: "*"
                                                    • right: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 566
                                                      • end: 567
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 26
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 27
                                                          }
                                                        }
                                                      • name: "y"
                                                      }
                                                    }
                                                  • operator: "/"
                                                  • right: MemberExpression {...}
                                                    • type: "MemberExpression"
                                                    • start: 571
                                                    • end: 584
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 23
                                                        • column: 31
                                                        }
                                                      • end: {...}
                                                        • line: 23
                                                        • column: 44
                                                        }
                                                      }
                                                    • object: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 571
                                                      • end: 577
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 31
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 37
                                                          }
                                                        }
                                                      • name: "canvas"
                                                      }
                                                    • property: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 578
                                                      • end: 584
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 38
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 44
                                                          }
                                                        }
                                                      • name: "height"
                                                      }
                                                    • computed: false
                                                    • optional: false
                                                    }
                                                  }
                                                }
                                              • operator: "+"
                                              • right: BinaryExpression {...}
                                                • type: "BinaryExpression"
                                                • start: 587
                                                • end: 610
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 23
                                                    • column: 47
                                                    }
                                                  • end: {...}
                                                    • line: 23
                                                    • column: 70
                                                    }
                                                  }
                                                • left: Literal {...}
                                                  • type: "Literal"
                                                  • start: 587
                                                  • end: 589
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 23
                                                      • column: 47
                                                      }
                                                    • end: {...}
                                                      • line: 23
                                                      • column: 49
                                                      }
                                                    }
                                                  • value: 64
                                                  • raw: "64"
                                                  }
                                                • operator: "*"
                                                • right: CallExpression {...}
                                                  • type: "CallExpression"
                                                  • start: 592
                                                  • end: 610
                                                  • loc: {...}
                                                    • start: {...}
                                                      • line: 23
                                                      • column: 52
                                                      }
                                                    • end: {...}
                                                      • line: 23
                                                      • column: 70
                                                      }
                                                    }
                                                  • callee: MemberExpression {...}
                                                    • type: "MemberExpression"
                                                    • start: 592
                                                    • end: 600
                                                    • loc: {...}
                                                      • start: {...}
                                                        • line: 23
                                                        • column: 52
                                                        }
                                                      • end: {...}
                                                        • line: 23
                                                        • column: 60
                                                        }
                                                      }
                                                    • object: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 592
                                                      • end: 596
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 52
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 56
                                                          }
                                                        }
                                                      • name: "Math"
                                                      }
                                                    • property: Identifier {...}
                                                      • type: "Identifier"
                                                      • start: 597
                                                      • end: 600
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 57
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 60
                                                          }
                                                        }
                                                      • name: "cos"
                                                      }
                                                    • computed: false
                                                    • optional: false
                                                    }
                                                  • arguments: [...] (1)
                                                    • BinaryExpression {...}
                                                      • type: "BinaryExpression"
                                                      • start: 601
                                                      • end: 609
                                                      • loc: {...}
                                                        • start: {...}
                                                          • line: 23
                                                          • column: 61
                                                          }
                                                        • end: {...}
                                                          • line: 23
                                                          • column: 69
                                                          }
                                                        }
                                                      • left: Identifier {...}
                                                        • type: "Identifier"
                                                        • start: 601
                                                        • end: 602
                                                        • loc: {...}
                                                          • start: {...}
                                                            • line: 23
                                                            • column: 61
                                                            }
                                                          • end: {...}
                                                            • line: 23
                                                            • column: 62
                                                            }
                                                          }
                                                        • name: "t"
                                                        }
                                                      • operator: "/"
                                                      • right: Literal {...}
                                                        • type: "Literal"
                                                        • start: 605
                                                        • end: 609
                                                        • loc: {...}
                                                          • start: {...}
                                                            • line: 23
                                                            • column: 65
                                                            }
                                                          • end: {...}
                                                            • line: 23
                                                            • column: 69
                                                            }
                                                          }
                                                        • value: 1400
                                                        • raw: "1400"
                                                        }
                                                      }
                                                    ]
                                                  • optional: false
                                                  }
                                                }
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • VariableDeclaration {...}
                                        • type: "VariableDeclaration"
                                        • start: 616
                                        • end: 630
                                        • loc: {...}
                                          • start: {...}
                                            • line: 24
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 24
                                            • column: 18
                                            }
                                          }
                                        • declarations: [...] (1)
                                          • VariableDeclarator {...}
                                            • type: "VariableDeclarator"
                                            • start: 622
                                            • end: 629
                                            • loc: {...}
                                              • start: {...}
                                                • line: 24
                                                • column: 10
                                                }
                                              • end: {...}
                                                • line: 24
                                                • column: 17
                                                }
                                              }
                                            • id: Identifier {...}
                                              • type: "Identifier"
                                              • start: 622
                                              • end: 623
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 24
                                                  • column: 10
                                                  }
                                                • end: {...}
                                                  • line: 24
                                                  • column: 11
                                                  }
                                                }
                                              • name: "b"
                                              }
                                            • init: Literal {...}
                                              • type: "Literal"
                                              • start: 626
                                              • end: 629
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 24
                                                  • column: 14
                                                  }
                                                • end: {...}
                                                  • line: 24
                                                  • column: 17
                                                  }
                                                }
                                              • value: 128
                                              • raw: "128"
                                              }
                                            }
                                          ]
                                        • kind: "const"
                                        }
                                      • ExpressionStatement {...}
                                        • type: "ExpressionStatement"
                                        • start: 636
                                        • end: 662
                                        • loc: {...}
                                          • start: {...}
                                            • line: 26
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 26
                                            • column: 30
                                            }
                                          }
                                        • expression: AssignmentExpression {...}
                                          • type: "AssignmentExpression"
                                          • start: 636
                                          • end: 661
                                          • loc: {...}
                                            • start: {...}
                                              • line: 26
                                              • column: 4
                                              }
                                            • end: {...}
                                              • line: 26
                                              • column: 29
                                              }
                                            }
                                          • operator: "="
                                          • left: MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 636
                                            • end: 657
                                            • loc: {...}
                                              • start: {...}
                                                • line: 26
                                                • column: 4
                                                }
                                              • end: {...}
                                                • line: 26
                                                • column: 25
                                                }
                                              }
                                            • object: MemberExpression {...}
                                              • type: "MemberExpression"
                                              • start: 636
                                              • end: 650
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 26
                                                  • column: 4
                                                  }
                                                • end: {...}
                                                  • line: 26
                                                  • column: 18
                                                  }
                                                }
                                              • object: Identifier {...}
                                                • type: "Identifier"
                                                • start: 636
                                                • end: 645
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 26
                                                    • column: 4
                                                    }
                                                  • end: {...}
                                                    • line: 26
                                                    • column: 13
                                                    }
                                                  }
                                                • name: "imageData"
                                                }
                                              • property: Identifier {...}
                                                • type: "Identifier"
                                                • start: 646
                                                • end: 650
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 26
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 26
                                                    • column: 18
                                                    }
                                                  }
                                                • name: "data"
                                                }
                                              • computed: false
                                              • optional: false
                                              }
                                            • property: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 651
                                              • end: 656
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 26
                                                  • column: 19
                                                  }
                                                • end: {...}
                                                  • line: 26
                                                  • column: 24
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 651
                                                • end: 652
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 26
                                                    • column: 19
                                                    }
                                                  • end: {...}
                                                    • line: 26
                                                    • column: 20
                                                    }
                                                  }
                                                • name: "p"
                                                }
                                              • operator: "+"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 655
                                                • end: 656
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 26
                                                    • column: 23
                                                    }
                                                  • end: {...}
                                                    • line: 26
                                                    • column: 24
                                                    }
                                                  }
                                                • value: 0
                                                • raw: "0"
                                                }
                                              }
                                            • computed: true
                                            • optional: false
                                            }
                                          • right: Identifier {...}
                                            • type: "Identifier"
                                            • start: 660
                                            • end: 661
                                            • loc: {...}
                                              • start: {...}
                                                • line: 26
                                                • column: 28
                                                }
                                              • end: {...}
                                                • line: 26
                                                • column: 29
                                                }
                                              }
                                            • name: "r"
                                            }
                                          }
                                        }
                                      • ExpressionStatement {...}
                                        • type: "ExpressionStatement"
                                        • start: 667
                                        • end: 693
                                        • loc: {...}
                                          • start: {...}
                                            • line: 27
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 27
                                            • column: 30
                                            }
                                          }
                                        • expression: AssignmentExpression {...}
                                          • type: "AssignmentExpression"
                                          • start: 667
                                          • end: 692
                                          • loc: {...}
                                            • start: {...}
                                              • line: 27
                                              • column: 4
                                              }
                                            • end: {...}
                                              • line: 27
                                              • column: 29
                                              }
                                            }
                                          • operator: "="
                                          • left: MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 667
                                            • end: 688
                                            • loc: {...}
                                              • start: {...}
                                                • line: 27
                                                • column: 4
                                                }
                                              • end: {...}
                                                • line: 27
                                                • column: 25
                                                }
                                              }
                                            • object: MemberExpression {...}
                                              • type: "MemberExpression"
                                              • start: 667
                                              • end: 681
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 27
                                                  • column: 4
                                                  }
                                                • end: {...}
                                                  • line: 27
                                                  • column: 18
                                                  }
                                                }
                                              • object: Identifier {...}
                                                • type: "Identifier"
                                                • start: 667
                                                • end: 676
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 27
                                                    • column: 4
                                                    }
                                                  • end: {...}
                                                    • line: 27
                                                    • column: 13
                                                    }
                                                  }
                                                • name: "imageData"
                                                }
                                              • property: Identifier {...}
                                                • type: "Identifier"
                                                • start: 677
                                                • end: 681
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 27
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 27
                                                    • column: 18
                                                    }
                                                  }
                                                • name: "data"
                                                }
                                              • computed: false
                                              • optional: false
                                              }
                                            • property: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 682
                                              • end: 687
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 27
                                                  • column: 19
                                                  }
                                                • end: {...}
                                                  • line: 27
                                                  • column: 24
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 682
                                                • end: 683
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 27
                                                    • column: 19
                                                    }
                                                  • end: {...}
                                                    • line: 27
                                                    • column: 20
                                                    }
                                                  }
                                                • name: "p"
                                                }
                                              • operator: "+"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 686
                                                • end: 687
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 27
                                                    • column: 23
                                                    }
                                                  • end: {...}
                                                    • line: 27
                                                    • column: 24
                                                    }
                                                  }
                                                • value: 1
                                                • raw: "1"
                                                }
                                              }
                                            • computed: true
                                            • optional: false
                                            }
                                          • right: Identifier {...}
                                            • type: "Identifier"
                                            • start: 691
                                            • end: 692
                                            • loc: {...}
                                              • start: {...}
                                                • line: 27
                                                • column: 28
                                                }
                                              • end: {...}
                                                • line: 27
                                                • column: 29
                                                }
                                              }
                                            • name: "g"
                                            }
                                          }
                                        }
                                      • ExpressionStatement {...}
                                        • type: "ExpressionStatement"
                                        • start: 698
                                        • end: 724
                                        • loc: {...}
                                          • start: {...}
                                            • line: 28
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 28
                                            • column: 30
                                            }
                                          }
                                        • expression: AssignmentExpression {...}
                                          • type: "AssignmentExpression"
                                          • start: 698
                                          • end: 723
                                          • loc: {...}
                                            • start: {...}
                                              • line: 28
                                              • column: 4
                                              }
                                            • end: {...}
                                              • line: 28
                                              • column: 29
                                              }
                                            }
                                          • operator: "="
                                          • left: MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 698
                                            • end: 719
                                            • loc: {...}
                                              • start: {...}
                                                • line: 28
                                                • column: 4
                                                }
                                              • end: {...}
                                                • line: 28
                                                • column: 25
                                                }
                                              }
                                            • object: MemberExpression {...}
                                              • type: "MemberExpression"
                                              • start: 698
                                              • end: 712
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 28
                                                  • column: 4
                                                  }
                                                • end: {...}
                                                  • line: 28
                                                  • column: 18
                                                  }
                                                }
                                              • object: Identifier {...}
                                                • type: "Identifier"
                                                • start: 698
                                                • end: 707
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 28
                                                    • column: 4
                                                    }
                                                  • end: {...}
                                                    • line: 28
                                                    • column: 13
                                                    }
                                                  }
                                                • name: "imageData"
                                                }
                                              • property: Identifier {...}
                                                • type: "Identifier"
                                                • start: 708
                                                • end: 712
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 28
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 28
                                                    • column: 18
                                                    }
                                                  }
                                                • name: "data"
                                                }
                                              • computed: false
                                              • optional: false
                                              }
                                            • property: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 713
                                              • end: 718
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 28
                                                  • column: 19
                                                  }
                                                • end: {...}
                                                  • line: 28
                                                  • column: 24
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 713
                                                • end: 714
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 28
                                                    • column: 19
                                                    }
                                                  • end: {...}
                                                    • line: 28
                                                    • column: 20
                                                    }
                                                  }
                                                • name: "p"
                                                }
                                              • operator: "+"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 717
                                                • end: 718
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 28
                                                    • column: 23
                                                    }
                                                  • end: {...}
                                                    • line: 28
                                                    • column: 24
                                                    }
                                                  }
                                                • value: 2
                                                • raw: "2"
                                                }
                                              }
                                            • computed: true
                                            • optional: false
                                            }
                                          • right: Identifier {...}
                                            • type: "Identifier"
                                            • start: 722
                                            • end: 723
                                            • loc: {...}
                                              • start: {...}
                                                • line: 28
                                                • column: 28
                                                }
                                              • end: {...}
                                                • line: 28
                                                • column: 29
                                                }
                                              }
                                            • name: "b"
                                            }
                                          }
                                        }
                                      • ExpressionStatement {...}
                                        • type: "ExpressionStatement"
                                        • start: 729
                                        • end: 757
                                        • loc: {...}
                                          • start: {...}
                                            • line: 29
                                            • column: 4
                                            }
                                          • end: {...}
                                            • line: 29
                                            • column: 32
                                            }
                                          }
                                        • expression: AssignmentExpression {...}
                                          • type: "AssignmentExpression"
                                          • start: 729
                                          • end: 756
                                          • loc: {...}
                                            • start: {...}
                                              • line: 29
                                              • column: 4
                                              }
                                            • end: {...}
                                              • line: 29
                                              • column: 31
                                              }
                                            }
                                          • operator: "="
                                          • left: MemberExpression {...}
                                            • type: "MemberExpression"
                                            • start: 729
                                            • end: 750
                                            • loc: {...}
                                              • start: {...}
                                                • line: 29
                                                • column: 4
                                                }
                                              • end: {...}
                                                • line: 29
                                                • column: 25
                                                }
                                              }
                                            • object: MemberExpression {...}
                                              • type: "MemberExpression"
                                              • start: 729
                                              • end: 743
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 29
                                                  • column: 4
                                                  }
                                                • end: {...}
                                                  • line: 29
                                                  • column: 18
                                                  }
                                                }
                                              • object: Identifier {...}
                                                • type: "Identifier"
                                                • start: 729
                                                • end: 738
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 29
                                                    • column: 4
                                                    }
                                                  • end: {...}
                                                    • line: 29
                                                    • column: 13
                                                    }
                                                  }
                                                • name: "imageData"
                                                }
                                              • property: Identifier {...}
                                                • type: "Identifier"
                                                • start: 739
                                                • end: 743
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 29
                                                    • column: 14
                                                    }
                                                  • end: {...}
                                                    • line: 29
                                                    • column: 18
                                                    }
                                                  }
                                                • name: "data"
                                                }
                                              • computed: false
                                              • optional: false
                                              }
                                            • property: BinaryExpression {...}
                                              • type: "BinaryExpression"
                                              • start: 744
                                              • end: 749
                                              • loc: {...}
                                                • start: {...}
                                                  • line: 29
                                                  • column: 19
                                                  }
                                                • end: {...}
                                                  • line: 29
                                                  • column: 24
                                                  }
                                                }
                                              • left: Identifier {...}
                                                • type: "Identifier"
                                                • start: 744
                                                • end: 745
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 29
                                                    • column: 19
                                                    }
                                                  • end: {...}
                                                    • line: 29
                                                    • column: 20
                                                    }
                                                  }
                                                • name: "p"
                                                }
                                              • operator: "+"
                                              • right: Literal {...}
                                                • type: "Literal"
                                                • start: 748
                                                • end: 749
                                                • loc: {...}
                                                  • start: {...}
                                                    • line: 29
                                                    • column: 23
                                                    }
                                                  • end: {...}
                                                    • line: 29
                                                    • column: 24
                                                    }
                                                  }
                                                • value: 3
                                                • raw: "3"
                                                }
                                              }
                                            • computed: true
                                            • optional: false
                                            }
                                          • right: Literal {...}
                                            • type: "Literal"
                                            • start: 753
                                            • end: 756
                                            • loc: {...}
                                              • start: {...}
                                                • line: 29
                                                • column: 28
                                                }
                                              • end: {...}
                                                • line: 29
                                                • column: 31
                                                }
                                              }
                                            • value: 255
                                            • raw: "255"
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  }
                                • ExpressionStatement {...}
                                  • type: "ExpressionStatement"
                                  • start: 767
                                  • end: 801
                                  • loc: {...}
                                    • start: {...}
                                      • line: 32
                                      • column: 3
                                      }
                                    • end: {...}
                                      • line: 32
                                      • column: 37
                                      }
                                    }
                                  • expression: CallExpression {...}
                                    • type: "CallExpression"
                                    • start: 767
                                    • end: 800
                                    • loc: {...}
                                      • start: {...}
                                        • line: 32
                                        • column: 3
                                        }
                                      • end: {...}
                                        • line: 32
                                        • column: 36
                                        }
                                      }
                                    • callee: MemberExpression {...}
                                      • type: "MemberExpression"
                                      • start: 767
                                      • end: 783
                                      • loc: {...}
                                        • start: {...}
                                          • line: 32
                                          • column: 3
                                          }
                                        • end: {...}
                                          • line: 32
                                          • column: 19
                                          }
                                        }
                                      • object: Identifier {...}
                                        • type: "Identifier"
                                        • start: 767
                                        • end: 770
                                        • loc: {...}
                                          • start: {...}
                                            • line: 32
                                            • column: 3
                                            }
                                          • end: {...}
                                            • line: 32
                                            • column: 6
                                            }
                                          }
                                        • name: "ctx"
                                        }
                                      • property: Identifier {...}
                                        • type: "Identifier"
                                        • start: 771
                                        • end: 783
                                        • loc: {...}
                                          • start: {...}
                                            • line: 32
                                            • column: 7
                                            }
                                          • end: {...}
                                            • line: 32
                                            • column: 19
                                            }
                                          }
                                        • name: "putImageData"
                                        }
                                      • computed: false
                                      • optional: false
                                      }
                                    • arguments: [...] (3)
                                      • Identifier {...}
                                        • type: "Identifier"
                                        • start: 784
                                        • end: 793
                                        • loc: {...}
                                          • start: {...}
                                            • line: 32
                                            • column: 20
                                            }
                                          • end: {...}
                                            • line: 32
                                            • column: 29
                                            }
                                          }
                                        • name: "imageData"
                                        }
                                      • Literal {...}
                                        • type: "Literal"
                                        • start: 795
                                        • end: 796
                                        • loc: {...}
                                          • start: {...}
                                            • line: 32
                                            • column: 31
                                            }
                                          • end: {...}
                                            • line: 32
                                            • column: 32
                                            }
                                          }
                                        • value: 0
                                        • raw: "0"
                                        }
                                      • Literal {...}
                                        • type: "Literal"
                                        • start: 798
                                        • end: 799
                                        • loc: {...}
                                          • start: {...}
                                            • line: 32
                                            • column: 34
                                            }
                                          • end: {...}
                                            • line: 32
                                            • column: 35
                                            }
                                          }
                                        • value: 0
                                        • raw: "0"
                                        }
                                      ]
                                    • optional: false
                                    }
                                  }
                                ]
                              }
                            }
                          • arguments: []
                          • optional: false
                          }
                        }
                      • ReturnStatement {...}
                        • type: "ReturnStatement"
                        • start: 813
                        • end: 864
                        • loc: {...}
                          • start: {...}
                            • line: 35
                            • column: 2
                            }
                          • end: {...}
                            • line: 37
                            • column: 4
                            }
                          }
                        • argument: ArrowFunctionExpression {...}
                          • type: "ArrowFunctionExpression"
                          • start: 820
                          • end: 863
                          • loc: {...}
                            • start: {...}
                              • line: 35
                              • column: 9
                              }
                            • end: {...}
                              • line: 37
                              • column: 3
                              }
                            }
                          • id: null
                          • expression: false
                          • generator: false
                          • async: false
                          • params: []
                          • body: BlockStatement {...}
                            • type: "BlockStatement"
                            • start: 826
                            • end: 863
                            • loc: {...}
                              • start: {...}
                                • line: 35
                                • column: 15
                                }
                              • end: {...}
                                • line: 37
                                • column: 3
                                }
                              }
                            • body: [...] (1)
                              • ExpressionStatement {...}
                                • type: "ExpressionStatement"
                                • start: 831
                                • end: 859
                                • loc: {...}
                                  • start: {...}
                                    • line: 36
                                    • column: 3
                                    }
                                  • end: {...}
                                    • line: 36
                                    • column: 31
                                    }
                                  }
                                • expression: CallExpression {...}
                                  • type: "CallExpression"
                                  • start: 831
                                  • end: 858
                                  • loc: {...}
                                    • start: {...}
                                      • line: 36
                                      • column: 3
                                      }
                                    • end: {...}
                                      • line: 36
                                      • column: 30
                                      }
                                    }
                                  • callee: Identifier {...}
                                    • type: "Identifier"
                                    • start: 831
                                    • end: 851
                                    • loc: {...}
                                      • start: {...}
                                        • line: 36
                                        • column: 3
                                        }
                                      • end: {...}
                                        • line: 36
                                        • column: 23
                                        }
                                      }
                                    • name: "cancelAnimationFrame"
                                    }
                                  • arguments: [...] (1)
                                    • Identifier {...}
                                      • type: "Identifier"
                                      • start: 852
                                      • end: 857
                                      • loc: {...}
                                        • start: {...}
                                          • line: 36
                                          • column: 24
                                          }
                                        • end: {...}
                                          • line: 36
                                          • column: 29
                                          }
                                        }
                                      • name: "frame"
                                      }
                                    ]
                                  • optional: false
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ]
                    }
                  }
                ]
              • optional: false
              }
            }
          ]
        • sourceType: "module"
        }
      • attributes: []
      }
    }
The AST is not public API and may change at any point in time
bind:this={canvas} • Playground • Svelte