masax-fireworks-js-animation 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,271 @@
1
+ # Fireworks JS Animation (Pháo Hoa JS) 🎆
2
+
3
+ Một thư viện hiệu ứng pháo hoa nhẹ, không phụ thuộc, và dễ dàng tùy biến. Hoạt động mượt mà trên **Vanilla JS**, **React**, **Vue**, **Angular**, v.v.
4
+
5
+ A lightweight, zero-dependency, and highly customizable fireworks animation library. Works seamlessly with **Vanilla JS**, **React**, **Vue**, **Angular**, and more.
6
+
7
+ 轻量级、零依赖且高度可定制的烟花动画库。完美支持 **Vanilla JS**、**React**、**Vue**、**Angular** 等。
8
+
9
+ ![Screenshot](./media/demo.png)
10
+
11
+ ---
12
+
13
+ ## 🌍 Ngôn ngữ / Languages / 语言
14
+
15
+ - [Tiếng Việt](#tiếng-việt)
16
+ - [English](#english)
17
+ - [中文 (Chinese)](#中文-chinese)
18
+
19
+ ---
20
+
21
+ ## <a id="tiếng-việt"></a>Tiếng Việt
22
+
23
+ ### Cài đặt
24
+
25
+ ```bash
26
+ npm install fireworks-js-animation
27
+ ```
28
+
29
+ ### Hướng dẫn sử dụng
30
+
31
+ #### 1. Vanilla JS (HTML thuần)
32
+
33
+ Dùng thẻ script để nhúng thư viện:
34
+
35
+ ```html
36
+ <canvas id="fireworks-canvas"></canvas>
37
+ <!-- Ưu tiên dùng phiên bản đã nén cho môi trường production -->
38
+ <script src="./dist/fireworks.min.js"></script>
39
+
40
+ <script>
41
+ const canvas = document.getElementById("fireworks-canvas");
42
+ // Đặt kích thước cho canvas
43
+ canvas.width = window.innerWidth;
44
+ canvas.height = window.innerHeight;
45
+
46
+ // Khởi tạo pháo hoa
47
+ const fireworks = new Fireworks(canvas, {
48
+ hue: { min: 0, max: 360 }, // Màu sắc
49
+ particles: 50, // Số lượng hạt nổ
50
+ // ... các tùy chọn khác
51
+ });
52
+
53
+ // Bắt đầu bắn
54
+ fireworks.start();
55
+ </script>
56
+ ```
57
+
58
+ #### 2. React
59
+
60
+ Sử dụng `useEffect` và `useRef` để khởi tạo pháo hoa khi component được mount.
61
+
62
+ ```jsx
63
+ import React, { useEffect, useRef } from "react";
64
+ import { Fireworks } from "fireworks-js-animation";
65
+
66
+ const FireworksComponent = () => {
67
+ const canvasRef = useRef(null);
68
+
69
+ useEffect(() => {
70
+ if (canvasRef.current) {
71
+ const fireworks = new Fireworks(canvasRef.current, {
72
+ /* options */
73
+ });
74
+ fireworks.start();
75
+ return () => fireworks.stop(); // Dọn dẹp khi component unmount
76
+ }
77
+ }, []);
78
+
79
+ return <canvas ref={canvasRef} style={{ width: "100%", height: "100vh" }} />;
80
+ };
81
+ export default FireworksComponent;
82
+ ```
83
+
84
+ ---
85
+
86
+ ## <a id="english"></a>English
87
+
88
+ ### Installation
89
+
90
+ ```bash
91
+ npm install fireworks-js-animation
92
+ ```
93
+
94
+ ### Usage
95
+
96
+ #### 1. Vanilla JS (HTML)
97
+
98
+ ```html
99
+ <canvas id="fireworks-canvas"></canvas>
100
+ <!-- Use minified version for production -->
101
+ <script src="path/to/dist/fireworks.min.js"></script>
102
+
103
+ <script>
104
+ const canvas = document.getElementById("fireworks-canvas");
105
+ canvas.width = window.innerWidth;
106
+ canvas.height = window.innerHeight;
107
+
108
+ const fireworks = new Fireworks(canvas, {
109
+ /* options */
110
+ });
111
+ fireworks.start();
112
+ </script>
113
+ ```
114
+
115
+ #### 2. React
116
+
117
+ ```jsx
118
+ import React, { useEffect, useRef } from "react";
119
+ import { Fireworks } from "fireworks-js-animation";
120
+
121
+ const FireworksComponent = () => {
122
+ const canvasRef = useRef(null);
123
+
124
+ useEffect(() => {
125
+ if (canvasRef.current) {
126
+ const fireworks = new Fireworks(canvasRef.current, {
127
+ hue: { min: 0, max: 360 },
128
+ particles: 50,
129
+ // ... other options
130
+ });
131
+ fireworks.start();
132
+
133
+ return () => fireworks.stop(); // Cleanup
134
+ }
135
+ }, []);
136
+
137
+ return <canvas ref={canvasRef} style={{ width: "100%", height: "100vh" }} />;
138
+ };
139
+
140
+ export default FireworksComponent;
141
+ ```
142
+
143
+ #### 3. Vue 3
144
+
145
+ ```vue
146
+ <template>
147
+ <canvas ref="canvasRef" style="width: 100%; height: 100vh;"></canvas>
148
+ </template>
149
+
150
+ <script setup>
151
+ import { onMounted, onUnmounted, ref } from "vue";
152
+ import { Fireworks } from "fireworks-js-animation";
153
+
154
+ const canvasRef = ref(null);
155
+ let fireworks = null;
156
+
157
+ onMounted(() => {
158
+ if (canvasRef.value) {
159
+ fireworks = new Fireworks(canvasRef.value, {
160
+ /* options */
161
+ });
162
+ fireworks.start();
163
+ }
164
+ });
165
+
166
+ onUnmounted(() => {
167
+ if (fireworks) fireworks.stop();
168
+ });
169
+ </script>
170
+ ```
171
+
172
+ ---
173
+
174
+ ## <a id="中文-chinese"></a>中文 (Chinese)
175
+
176
+ ### 安装
177
+
178
+ ```bash
179
+ npm install fireworks-js-animation
180
+ ```
181
+
182
+ ### 使用方法
183
+
184
+ #### 1. 原生 JS (Vanilla JS)
185
+
186
+ ```html
187
+ <canvas id="fireworks-canvas"></canvas>
188
+ <script src="./dist/fireworks.min.js"></script>
189
+
190
+ <script>
191
+ const canvas = document.getElementById("fireworks-canvas");
192
+ canvas.width = window.innerWidth;
193
+ canvas.height = window.innerHeight;
194
+
195
+ const fireworks = new Fireworks(canvas, {
196
+ /* 配置项 */
197
+ });
198
+ fireworks.start();
199
+ </script>
200
+ ```
201
+
202
+ #### 2. Vue 3 Setup
203
+
204
+ ```vue
205
+ <template>
206
+ <canvas ref="canvasRef" style="width: 100%; height: 100vh;"></canvas>
207
+ </template>
208
+
209
+ <script setup>
210
+ import { onMounted, onUnmounted, ref } from "vue";
211
+ import { Fireworks } from "fireworks-js-animation";
212
+
213
+ const canvasRef = ref(null);
214
+ let fireworks = null;
215
+
216
+ onMounted(() => {
217
+ if (canvasRef.value) {
218
+ fireworks = new Fireworks(canvasRef.value, {
219
+ /* 配置项 */
220
+ });
221
+ fireworks.start();
222
+ }
223
+ });
224
+
225
+ onUnmounted(() => {
226
+ if (fireworks) fireworks.stop();
227
+ });
228
+ </script>
229
+ ```
230
+
231
+ ---
232
+
233
+ ## Thứ tự hiển thị & Tương tác / Z-Index & Interaction / 层级与交互
234
+
235
+ Để đảm bảo các nút bấm và thành phần giao diện có thể click được, chúng phải có `z-index` cao hơn canvas.
236
+
237
+ To ensure buttons and other UI elements are clickable, they must have a higher `z-index` than the canvas.
238
+
239
+ 为了确保按钮和其他 UI 元素可点击,它们的 `z-index` 必须高于 canvas。
240
+
241
+ ```css
242
+ /* CSS */
243
+ canvas#fireworks-canvas {
244
+ position: absolute;
245
+ top: 0;
246
+ left: 0;
247
+ z-index: 1000; /* Background layer */
248
+ }
249
+
250
+ .my-interface {
251
+ position: relative;
252
+ z-index: 2000; /* Floating above canvas */
253
+ }
254
+ ```
255
+
256
+ ---
257
+
258
+ ## Tùy chọn / Options / 配置项
259
+
260
+ | Option | Type | Default | Mô tả | Description | 描述 |
261
+ | :------------- | :------ | :------------------- | :---------------------- | :---------------------------------- | :--------------- |
262
+ | `hue` | Object | `{min: 0, max: 360}` | Dải màu sắc | Color range | 颜色范围 |
263
+ | `particles` | Number | `50` | Số lượng hạt mỗi lần nổ | Number of particles per explosion | 每次爆炸的粒子数 |
264
+ | `friction` | Number | `0.95` | Độ ma sát (cản gió) | Air resistance (slower = more drag) | 空气阻力 |
265
+ | `gravity` | Number | `1.5` | Trọng lực | Gravity effect | 重力效果 |
266
+ | `acceleration` | Number | `1.05` | Gia tốc tên lửa | Rocket acceleration | 火箭加速度 |
267
+ | `mouse.click` | Boolean | `false` | Bắn khi click chuột | Launch on click | 点击发射 |
268
+
269
+ ## License
270
+
271
+ UNLICENSED
@@ -0,0 +1 @@
1
+ function a0_0x5263(){const _0x1c3c35=['function\x20*\x5c(\x20*\x5c)','arrayBuffer','clear','value',',\x20100%,\x20','decay','explosion','soundOptions','isEnabled','apply','sin','max','{}.constructor(\x22return\x20this\x22)(\x20)','removeEventListener','webkitAudioContext','onInit','ctx','gravity','pointerdown','push','append','lineTo','brightness','audioContext','round','clearRect','createElement','toString','fillRect','traceLength','resizer','initTrace','3593752XqsNep','isArray','random','pageY','intensity','lighter','mount','traces','lineWidth','start','running','remove','now','waitStop','constructor','pause','counter','drawTrace','bind','hsla(','render','explosion1.mp3','rafId','traceSpeed','explosionLength','debu','resize','includes','offsetTop','pop','prototype','currentOptions','version','lineJoin','boundaries','test','10Qigfka','clientHeight','console','trace','chain','log','object','pointerDown','1254120VWYHFu','rgba(0,\x200,\x200,\x20','explosions','observe','Expected\x20alpha\x200-1\x20range,\x20got\x20`','getContext','stateObject','drawExplosion','launch','waitStopRaf','target','pointerMove','angle','stroke','218038ySHtFb','explosion2.mp3','while\x20(true)\x20{}','1479306uBjmEw','canvas','unobserve','\x5c+\x5c+\x20*(?:[a-zA-Z_$][0-9a-zA-Z_$]*)','buffers','pointerUp','function','decodeAudioData','options','body','cos','createTrace','opacity','min','getPrototypeOf','draw','isRunning','sqrt','globalCompositeOperation','__proto__','search','(((.+)+)+)+$','exports','pageX','destination','info','stop','gain','opts','80Rrxrdj','alpha','createBufferSource','sound','raf','splice','moveTo','loadSounds','particles','addEventListener','friction','reduce','active','updateOptions','coordinates','2721573xZkjZv','gger','strokeStyle','action','Expected\x20lightness\x200-100\x20range,\x20got\x20`','beginPath','unshift','3eGGrPg','totalDistance','isConnected','initExplosion','move','createCanvas','keys','assign','pow','amd','return\x20(function()\x20','error','play','fps','floor','undefined','click','pointerup','%,\x20','string','4584055otYnuD','updateSize','unmount','762198UXobKv','update','container','currentDistance','volume','lineCap','flickering','connect','table','mouse','abs','createGain','mouseOptions','height','tolerance','autoresize','exception','length','init','tick','acceleration','hue','width','speed','then','usePointer','call','rocketsPoint'];a0_0x5263=function(){return _0x1c3c35;};return a0_0x5263();}const a0_0x417a7c=a0_0x2818;(function(_0x201624,_0x5f7093){const _0x1d7265=a0_0x2818,_0x231c80=_0x201624();while(!![]){try{const _0x501678=-parseInt(_0x1d7265(0xc8))/0x1+parseInt(_0x1d7265(0xcb))/0x2*(-parseInt(_0x1d7265(0xfe))/0x3)+parseInt(_0x1d7265(0x17d))/0x4+-parseInt(_0x1d7265(0x175))/0x5*(parseInt(_0x1d7265(0x115))/0x6)+-parseInt(_0x1d7265(0x112))/0x7+-parseInt(_0x1d7265(0x151))/0x8+parseInt(_0x1d7265(0xf7))/0x9*(parseInt(_0x1d7265(0xe8))/0xa);if(_0x501678===_0x5f7093)break;else _0x231c80['push'](_0x231c80['shift']());}catch(_0x2ff142){_0x231c80['push'](_0x231c80['shift']());}}}(a0_0x5263,0x65c61),function(_0x35a24d,_0x4dbfed){const _0x1252ba=a0_0x2818,_0x29f8e6=(function(){let _0x40cf2f=!![];return function(_0x31a2ea,_0x59934c){const _0x4ccccb=_0x40cf2f?function(){if(_0x59934c){const _0x5c727f=_0x59934c['apply'](_0x31a2ea,arguments);return _0x59934c=null,_0x5c727f;}}:function(){};return _0x40cf2f=![],_0x4ccccb;};}()),_0x5ce146=_0x29f8e6(this,function(){const _0x401685=a0_0x2818;return _0x5ce146[_0x401685(0x14c)]()['search'](_0x401685(0xe0))['toString']()[_0x401685(0x15f)](_0x5ce146)[_0x401685(0xdf)]('(((.+)+)+)+$');});_0x5ce146();const _0x5677af=(function(){let _0x34c133=!![];return function(_0x453235,_0x340c18){const _0x2db551=_0x34c133?function(){const _0x4e5004=a0_0x2818;if(_0x340c18){const _0x19c9e0=_0x340c18[_0x4e5004(0x13a)](_0x453235,arguments);return _0x340c18=null,_0x19c9e0;}}:function(){};return _0x34c133=![],_0x2db551;};}());(function(){_0x5677af(this,function(){const _0x166fba=a0_0x2818,_0x1940bf=new RegExp(_0x166fba(0x131)),_0x2b1503=new RegExp(_0x166fba(0xce),'i'),_0x56c15a=_0xae5775(_0x166fba(0x127));!_0x1940bf[_0x166fba(0x174)](_0x56c15a+_0x166fba(0x179))||!_0x2b1503[_0x166fba(0x174)](_0x56c15a+'input')?_0x56c15a('0'):_0xae5775();})();}());const _0x37fccf=(function(){let _0x3e1c9c=!![];return function(_0x40a0e5,_0x4efd5a){const _0x565f1d=_0x3e1c9c?function(){const _0x5ce772=a0_0x2818;if(_0x4efd5a){const _0x3b8252=_0x4efd5a[_0x5ce772(0x13a)](_0x40a0e5,arguments);return _0x4efd5a=null,_0x3b8252;}}:function(){};return _0x3e1c9c=![],_0x565f1d;};}()),_0x19390d=_0x37fccf(this,function(){const _0x509130=a0_0x2818,_0x564b7d=function(){const _0x101107=a0_0x2818;let _0x505cf0;try{_0x505cf0=Function(_0x101107(0x108)+_0x101107(0x13d)+');')();}catch(_0x44ae8f){_0x505cf0=window;}return _0x505cf0;},_0x3d9493=_0x564b7d(),_0x1c9077=_0x3d9493['console']=_0x3d9493[_0x509130(0x177)]||{},_0x89b567=[_0x509130(0x17a),'warn',_0x509130(0xe4),_0x509130(0x109),_0x509130(0x125),_0x509130(0x11d),_0x509130(0x178)];for(let _0x4880c7=0x0;_0x4880c7<_0x89b567[_0x509130(0x126)];_0x4880c7++){const _0x6ec335=_0x37fccf[_0x509130(0x15f)][_0x509130(0x16f)][_0x509130(0x163)](_0x37fccf),_0xbad2ef=_0x89b567[_0x4880c7],_0x1aa432=_0x1c9077[_0xbad2ef]||_0x6ec335;_0x6ec335[_0x509130(0xde)]=_0x37fccf['bind'](_0x37fccf),_0x6ec335['toString']=_0x1aa432[_0x509130(0x14c)][_0x509130(0x163)](_0x1aa432),_0x1c9077[_0xbad2ef]=_0x6ec335;}});_0x19390d();if(typeof define===_0x1252ba(0xd1)&&define[_0x1252ba(0x107)])define([],_0x4dbfed);else typeof module==='object'&&module[_0x1252ba(0xe1)]?module[_0x1252ba(0xe1)]=_0x4dbfed():_0x35a24d['Fireworks']=_0x4dbfed();}(typeof self!==a0_0x417a7c(0x10d)?self:this,function(){'use strict';const _0x4fba36=a0_0x417a7c;function _0x247eb6(_0x74da3){const _0x48018e=a0_0x2818;return Math[_0x48018e(0x11f)](Math[_0x48018e(0x10c)](_0x74da3));}function _0x3a1ccd(_0x43ee49,_0x237b27){const _0x2d4eb1=a0_0x2818;return Math[_0x2d4eb1(0x153)]()*(_0x237b27-_0x43ee49)+_0x43ee49;}function _0x27292a(_0x26ac76,_0x59d682){const _0x5bb22e=a0_0x2818;return Math[_0x5bb22e(0x10c)](_0x3a1ccd(_0x26ac76,_0x59d682+0x1));}function _0x4d1c8a(_0x4e2aaa,_0x47393a,_0x539768,_0x5b9fd2){const _0x26c6f3=a0_0x2818;let _0x2d05f8=Math[_0x26c6f3(0x106)];return Math[_0x26c6f3(0xdc)](_0x2d05f8(_0x4e2aaa-_0x539768,0x2)+_0x2d05f8(_0x47393a-_0x5b9fd2,0x2));}function _0x53a812(_0x359441,_0x4feac5,_0x23ac6a=0x1){const _0x7a502c=a0_0x2818;if(_0x359441>0x168||_0x359441<0x0)throw Error('Expected\x20hue\x200-360\x20range,\x20got\x20`'+_0x359441+'`');if(_0x4feac5>0x64||_0x4feac5<0x0)throw Error(_0x7a502c(0xfb)+_0x4feac5+'`');if(_0x23ac6a>0x1||_0x23ac6a<0x0)throw Error(_0x7a502c(0x181)+_0x23ac6a+'`');return _0x7a502c(0x164)+_0x359441+_0x7a502c(0x135)+_0x4feac5+_0x7a502c(0x110)+_0x23ac6a+')';}let _0x441c44=_0x14a486=>{const _0x355839=a0_0x2818;if(_0x355839(0x17b)==typeof _0x14a486&&null!==_0x14a486){if('function'==typeof Object[_0x355839(0xd9)]){let _0x542575=Object[_0x355839(0xd9)](_0x14a486);return _0x542575===Object[_0x355839(0x16f)]||null===_0x542575;}return'[object\x20Object]'===Object['prototype'][_0x355839(0x14c)]['call'](_0x14a486);}return!0x1;},_0xad1631=[_0x4fba36(0xde),_0x4fba36(0x15f),_0x4fba36(0x16f)],_0x433856=(..._0x55bf81)=>_0x55bf81[_0x4fba36(0xf3)]((_0x5afb51,_0x3929f3)=>(Object[_0x4fba36(0x104)](_0x3929f3)['forEach'](_0x53cb04=>{const _0x5dbfd9=_0x4fba36;_0xad1631[_0x5dbfd9(0x16c)](_0x53cb04)||(Array[_0x5dbfd9(0x152)](_0x5afb51[_0x53cb04])&&Array[_0x5dbfd9(0x152)](_0x3929f3[_0x53cb04])?_0x5afb51[_0x53cb04]=_0x3929f3[_0x53cb04]:_0x441c44(_0x5afb51[_0x53cb04])&&_0x441c44(_0x3929f3[_0x53cb04])?_0x5afb51[_0x53cb04]=_0x433856(_0x5afb51[_0x53cb04],_0x3929f3[_0x53cb04]):_0x5afb51[_0x53cb04]=_0x3929f3[_0x53cb04]);}),_0x5afb51),{});class _0x487037{constructor({x:_0x2c7e17,y:_0x550d59,ctx:_0x1a91a5,hue:_0x112cd9,decay:_0xd361ff,gravity:_0x54f7cf,friction:_0x5bcb99,brightness:_0x4cffcf,flickering:_0x57038c,lineWidth:_0x4f47f0,explosionLength:_0x36ff5e}){const _0x486742=_0x4fba36;for(this['x']=_0x2c7e17,this['y']=_0x550d59,this['ctx']=_0x1a91a5,this['hue']=_0x112cd9,this[_0x486742(0x142)]=_0x54f7cf,this[_0x486742(0xf2)]=_0x5bcb99,this[_0x486742(0x11b)]=_0x57038c,this['lineWidth']=_0x4f47f0,this['explosionLength']=_0x36ff5e,this[_0x486742(0xc6)]=_0x3a1ccd(0x0,0x2*Math['PI']),this[_0x486742(0x12c)]=_0x27292a(0x1,0xa),this[_0x486742(0x147)]=_0x27292a(_0x4cffcf[_0x486742(0xd8)],_0x4cffcf['max']),this[_0x486742(0x136)]=_0x3a1ccd(_0xd361ff[_0x486742(0xd8)],_0xd361ff[_0x486742(0x13c)]);this['explosionLength']--;)this[_0x486742(0xf6)][_0x486742(0x144)]([_0x2c7e17,_0x550d59]);}['x'];['y'];['ctx'];['hue'];[_0x4fba36(0xf2)];['gravity'];[_0x4fba36(0x11b)];[_0x4fba36(0x159)];[_0x4fba36(0x169)];[_0x4fba36(0xc6)];['speed'];['brightness'];[_0x4fba36(0xf6)]=[];['decay'];[_0x4fba36(0xe9)]=0x1;[_0x4fba36(0x116)](_0x31ec26){const _0x18e1d5=_0x4fba36;this[_0x18e1d5(0xf6)][_0x18e1d5(0x16e)](),this['coordinates'][_0x18e1d5(0xfd)]([this['x'],this['y']]),this[_0x18e1d5(0x12c)]*=this[_0x18e1d5(0xf2)],this['x']+=Math[_0x18e1d5(0xd5)](this[_0x18e1d5(0xc6)])*this[_0x18e1d5(0x12c)],this['y']+=Math[_0x18e1d5(0x13b)](this[_0x18e1d5(0xc6)])*this[_0x18e1d5(0x12c)]+this[_0x18e1d5(0x142)],this[_0x18e1d5(0xe9)]-=this[_0x18e1d5(0x136)],this[_0x18e1d5(0xe9)]<=this[_0x18e1d5(0x136)]&&_0x31ec26();}[_0x4fba36(0xda)](){const _0x43acfe=_0x4fba36;let _0xdf23fe=this[_0x43acfe(0xf6)][_0x43acfe(0x126)]-0x1;this[_0x43acfe(0x141)]['beginPath'](),this[_0x43acfe(0x141)][_0x43acfe(0x159)]=this[_0x43acfe(0x159)],this[_0x43acfe(0x141)]['fillStyle']=_0x53a812(this['hue'],this[_0x43acfe(0x147)],this[_0x43acfe(0xe9)]),this[_0x43acfe(0x141)][_0x43acfe(0xee)](this[_0x43acfe(0xf6)][_0xdf23fe][0x0],this[_0x43acfe(0xf6)][_0xdf23fe][0x1]),this[_0x43acfe(0x141)][_0x43acfe(0x146)](this['x'],this['y']),this[_0x43acfe(0x141)][_0x43acfe(0xf9)]=_0x53a812(this[_0x43acfe(0x12a)],this[_0x43acfe(0x11b)]?_0x3a1ccd(0x0,this[_0x43acfe(0x147)]):this[_0x43acfe(0x147)],this['alpha']),this['ctx']['stroke']();}}class _0x190445{constructor(_0x43ab93,_0x3b8ad9){const _0x1db5af=_0x4fba36;this['options']=_0x43ab93,this[_0x1db5af(0xcc)]=_0x3b8ad9,this[_0x1db5af(0x17c)]=this['pointerDown'][_0x1db5af(0x163)](this),this['pointerUp']=this[_0x1db5af(0xd0)]['bind'](this),this[_0x1db5af(0xc5)]=this[_0x1db5af(0xc5)][_0x1db5af(0x163)](this);}['active']=!0x1;['x'];['y'];get[_0x4fba36(0x121)](){const _0x115d5d=_0x4fba36;return this[_0x115d5d(0xd3)]['mouse'];}[_0x4fba36(0x157)](){const _0x26e9ca=_0x4fba36;this[_0x26e9ca(0xcc)][_0x26e9ca(0xf1)]('pointerdown',this[_0x26e9ca(0x17c)]),this[_0x26e9ca(0xcc)][_0x26e9ca(0xf1)](_0x26e9ca(0x10f),this[_0x26e9ca(0xd0)]),this[_0x26e9ca(0xcc)]['addEventListener']('pointermove',this[_0x26e9ca(0xc5)]);}[_0x4fba36(0x114)](){const _0x2d8f7f=_0x4fba36;this[_0x2d8f7f(0xcc)]['removeEventListener'](_0x2d8f7f(0x143),this['pointerDown']),this['canvas'][_0x2d8f7f(0x13e)]('pointerup',this[_0x2d8f7f(0xd0)]),this['canvas'][_0x2d8f7f(0x13e)]('pointermove',this[_0x2d8f7f(0xc5)]);}[_0x4fba36(0x12e)](_0x17644c,_0x218f42){const _0x2cf377=_0x4fba36;let {click:_0x3cb284,move:_0x5d2cd1}=this[_0x2cf377(0x121)];(_0x3cb284||_0x5d2cd1)&&(this['x']=_0x17644c[_0x2cf377(0xe2)]-this[_0x2cf377(0xcc)]['offsetLeft'],this['y']=_0x17644c[_0x2cf377(0x154)]-this[_0x2cf377(0xcc)][_0x2cf377(0x16d)],this[_0x2cf377(0xf4)]=_0x218f42);}[_0x4fba36(0x17c)](_0x315f1f){const _0x523b98=_0x4fba36;this['usePointer'](_0x315f1f,this[_0x523b98(0x121)][_0x523b98(0x10e)]);}[_0x4fba36(0xd0)](_0xf97b5){this['usePointer'](_0xf97b5,!0x1);}[_0x4fba36(0xc5)](_0x2fcb2d){const _0x4df89c=_0x4fba36;this['usePointer'](_0x2fcb2d,this[_0x4df89c(0xf4)]);}}class _0x356bda{constructor(){const _0x4200c5=_0x4fba36;this[_0x4200c5(0x124)]=!0x0,this['lineStyle']='round',this[_0x4200c5(0x11b)]=0x32,this[_0x4200c5(0x14e)]=0x3,this[_0x4200c5(0x168)]=0xa,this[_0x4200c5(0x155)]=0x1e,this[_0x4200c5(0x137)]=0x5,this[_0x4200c5(0x142)]=1.5,this['opacity']=0.5,this[_0x4200c5(0xf0)]=0x32,this[_0x4200c5(0xf2)]=0.95,this[_0x4200c5(0x129)]=1.05,this[_0x4200c5(0x12a)]={'min':0x0,'max':0x168},this[_0x4200c5(0x130)]={'min':0x32,'max':0x32},this[_0x4200c5(0x159)]={'explosion':{'min':0x1,'max':0x3},'trace':{'min':0x1,'max':0x2}},this[_0x4200c5(0x11e)]={'click':!0x1,'move':!0x1,'max':0x1},this['delay']={'min':0x1e,'max':0x3c},this[_0x4200c5(0x147)]={'min':0x32,'max':0x50},this[_0x4200c5(0x136)]={'min':0.015,'max':0.03},this[_0x4200c5(0xeb)]={'enabled':!0x1,'files':['explosion0.mp3',_0x4200c5(0x166),_0x4200c5(0xc9)],'volume':{'min':0x4,'max':0x8}},this[_0x4200c5(0x173)]={'debug':!0x1,'height':0x0,'width':0x0,'x':0x32,'y':0x32};}['hue'];['rocketsPoint'];[_0x4fba36(0xd7)];[_0x4fba36(0x129)];[_0x4fba36(0xf2)];[_0x4fba36(0x142)];[_0x4fba36(0xf0)];[_0x4fba36(0x137)];[_0x4fba36(0x11e)];[_0x4fba36(0x173)];[_0x4fba36(0xeb)];['delay'];[_0x4fba36(0x147)];['decay'];[_0x4fba36(0x11b)];[_0x4fba36(0x155)];[_0x4fba36(0x14e)];[_0x4fba36(0x168)];['lineWidth'];['lineStyle'];[_0x4fba36(0x124)];[_0x4fba36(0x116)](_0x2d2ef4){const _0x221f63=_0x4fba36;Object[_0x221f63(0x105)](this,_0x433856(this,_0x2d2ef4));}}class _0x23661d{constructor(_0x192b14,_0x1e61e0){const _0x264f18=_0x4fba36;this[_0x264f18(0xd3)]=_0x192b14,this['render']=_0x1e61e0;}[_0x4fba36(0x128)]=0x0;['rafId']=0x0;[_0x4fba36(0x10b)]=0x3c;['tolerance']=0.1;['now'];['mount'](){const _0x180db4=_0x4fba36;this[_0x180db4(0x15d)]=performance[_0x180db4(0x15d)]();let _0x1341f0=0x3e8/this[_0x180db4(0x10b)],_0x4e42d7=_0x2d75aa=>{const _0x562ece=_0x180db4;this['rafId']=requestAnimationFrame(_0x4e42d7);let _0x49107c=_0x2d75aa-this[_0x562ece(0x15d)];_0x49107c>=_0x1341f0-this[_0x562ece(0x123)]&&(this[_0x562ece(0x165)](),this['now']=_0x2d75aa-_0x49107c%_0x1341f0,this[_0x562ece(0x128)]+=_0x49107c*(this[_0x562ece(0xd3)][_0x562ece(0x155)]*Math['PI'])/0x3e8);};this[_0x180db4(0x167)]=requestAnimationFrame(_0x4e42d7);}[_0x4fba36(0x114)](){cancelAnimationFrame(this['rafId']);}}class _0x3154cb{constructor(_0x5a7e70,_0x3c7b83,_0x4475d8){const _0x3ac51a=_0x4fba36;this['options']=_0x5a7e70,this[_0x3ac51a(0x113)]=_0x3c7b83,this[_0x3ac51a(0x117)]=_0x4475d8;}['resizer'];[_0x4fba36(0x157)](){const _0x1297da=_0x4fba36;if(!this[_0x1297da(0x14f)]){var _0x2c8275;let _0x19d479,_0x557a88=(_0x2c8275=()=>this[_0x1297da(0x113)](),(..._0x41a5db)=>{_0x19d479&&clearTimeout(_0x19d479),_0x19d479=setTimeout(()=>_0x2c8275(..._0x41a5db),0x64);});this[_0x1297da(0x14f)]=new ResizeObserver(_0x557a88);}this[_0x1297da(0xd3)]['autoresize']&&this[_0x1297da(0x14f)][_0x1297da(0x180)](this[_0x1297da(0x117)]);}[_0x4fba36(0x114)](){const _0x1c1a22=_0x4fba36;this['resizer']&&this['resizer'][_0x1c1a22(0xcd)](this['container']);}}class _0x2bdf53{constructor(_0x3b4685){const _0x2b4795=_0x4fba36;this[_0x2b4795(0xd3)]=_0x3b4685,this[_0x2b4795(0x127)]();}[_0x4fba36(0xcf)]=[];[_0x4fba36(0x148)];[_0x4fba36(0x140)]=!0x1;get['isEnabled'](){const _0x142823=_0x4fba36;return this[_0x142823(0xd3)][_0x142823(0xeb)]['enabled'];}get[_0x4fba36(0x138)](){const _0x447bdd=_0x4fba36;return this[_0x447bdd(0xd3)][_0x447bdd(0xeb)];}[_0x4fba36(0x127)](){const _0x5aa643=_0x4fba36;!this['onInit']&&this[_0x5aa643(0x139)]&&(this[_0x5aa643(0x140)]=!0x0,this[_0x5aa643(0x148)]=new(window['AudioContext']||window[(_0x5aa643(0x13f))])(),this[_0x5aa643(0xef)]());}async[_0x4fba36(0xef)](){const _0x24d9e5=_0x4fba36;for(let _0x18b67e of this[_0x24d9e5(0x138)]['files']){let _0xe23304=await(await fetch(_0x18b67e))[_0x24d9e5(0x132)]();this[_0x24d9e5(0x148)][_0x24d9e5(0xd2)](_0xe23304)[_0x24d9e5(0x12d)](_0x3ed931=>{const _0xdb955c=_0x24d9e5;this[_0xdb955c(0xcf)]['push'](_0x3ed931);})['catch'](_0xc9afaf=>{throw _0xc9afaf;});}}[_0x4fba36(0x10a)](){const _0x2b4569=_0x4fba36;if(this[_0x2b4569(0x139)]&&this['buffers'][_0x2b4569(0x126)]){let _0x27fda9=this[_0x2b4569(0x148)][_0x2b4569(0xea)](),_0x48a425=this[_0x2b4569(0xcf)][_0x27292a(0x0,this[_0x2b4569(0xcf)][_0x2b4569(0x126)]-0x1)],_0x206ede=this[_0x2b4569(0x148)][_0x2b4569(0x120)]();_0x27fda9['buffer']=_0x48a425,_0x206ede[_0x2b4569(0xe6)][_0x2b4569(0x134)]=_0x3a1ccd(this[_0x2b4569(0x138)][_0x2b4569(0x119)]['min']/0x64,this[_0x2b4569(0x138)][_0x2b4569(0x119)][_0x2b4569(0x13c)]/0x64),_0x206ede[_0x2b4569(0x11c)](this[_0x2b4569(0x148)][_0x2b4569(0xe3)]),_0x27fda9[_0x2b4569(0x11c)](_0x206ede),_0x27fda9['start'](0x0);}else this['init']();}}class _0x3a7b63{constructor({x:_0x5561df,y:_0x1ec04d,dx:_0x221852,dy:_0x45a11c,ctx:_0x16bc90,hue:_0x2d31d6,speed:_0x1b013a,traceLength:_0x4bf1ba,acceleration:_0x11c395}){const _0x4e1208=_0x4fba36;for(this['x']=_0x5561df,this['y']=_0x1ec04d,this['sx']=_0x5561df,this['sy']=_0x1ec04d,this['dx']=_0x221852,this['dy']=_0x45a11c,this[_0x4e1208(0x141)]=_0x16bc90,this[_0x4e1208(0x12a)]=_0x2d31d6,this[_0x4e1208(0x12c)]=_0x1b013a,this['traceLength']=_0x4bf1ba,this[_0x4e1208(0x129)]=_0x11c395,this['totalDistance']=_0x4d1c8a(_0x5561df,_0x1ec04d,_0x221852,_0x45a11c),this[_0x4e1208(0xc6)]=Math['atan2'](_0x45a11c-_0x1ec04d,_0x221852-_0x5561df),this['brightness']=_0x27292a(0x32,0x46);this[_0x4e1208(0x14e)]--;)this['coordinates']['push']([_0x5561df,_0x1ec04d]);}['x'];['y'];['sx'];['sy'];['dx'];['dy'];[_0x4fba36(0x141)];['hue'];[_0x4fba36(0x12c)];[_0x4fba36(0x129)];[_0x4fba36(0x14e)];[_0x4fba36(0xff)];[_0x4fba36(0xc6)];[_0x4fba36(0x147)];[_0x4fba36(0xf6)]=[];['currentDistance']=0x0;[_0x4fba36(0x116)](_0x6b8c31){const _0x3a9301=_0x4fba36;this[_0x3a9301(0xf6)][_0x3a9301(0x16e)](),this['coordinates']['unshift']([this['x'],this['y']]),this['speed']*=this['acceleration'];let _0x3a6eb1=Math[_0x3a9301(0xd5)](this[_0x3a9301(0xc6)])*this[_0x3a9301(0x12c)],_0x1152fb=Math['sin'](this['angle'])*this['speed'];this[_0x3a9301(0x118)]=_0x4d1c8a(this['sx'],this['sy'],this['x']+_0x3a6eb1,this['y']+_0x1152fb),this[_0x3a9301(0x118)]>=this[_0x3a9301(0xff)]?_0x6b8c31(this['dx'],this['dy'],this['hue']):(this['x']+=_0x3a6eb1,this['y']+=_0x1152fb);}[_0x4fba36(0xda)](){const _0x1651f5=_0x4fba36;let _0x3fbca2=this[_0x1651f5(0xf6)][_0x1651f5(0x126)]-0x1;this['ctx'][_0x1651f5(0xfc)](),this[_0x1651f5(0x141)]['moveTo'](this[_0x1651f5(0xf6)][_0x3fbca2][0x0],this[_0x1651f5(0xf6)][_0x3fbca2][0x1]),this['ctx']['lineTo'](this['x'],this['y']),this[_0x1651f5(0x141)][_0x1651f5(0xf9)]=_0x53a812(this[_0x1651f5(0x12a)],this[_0x1651f5(0x147)]),this[_0x1651f5(0x141)][_0x1651f5(0xc7)]();}}class _0x2a3006{constructor(_0x380c92,_0x4a3a1d={}){const _0xfc99b5=_0x4fba36;this[_0xfc99b5(0x187)]=_0x380c92,this[_0xfc99b5(0x117)]=_0x380c92,this[_0xfc99b5(0xe7)]=new _0x356bda(),this[_0xfc99b5(0x103)](this[_0xfc99b5(0x187)]),this[_0xfc99b5(0xf5)](_0x4a3a1d),this[_0xfc99b5(0xeb)]=new _0x2bdf53(this['opts']),this[_0xfc99b5(0x16b)]=new _0x3154cb(this['opts'],this['updateSize'][_0xfc99b5(0x163)](this),this['container']),this[_0xfc99b5(0x11e)]=new _0x190445(this[_0xfc99b5(0xe7)],this[_0xfc99b5(0xcc)]),this[_0xfc99b5(0xec)]=new _0x23661d(this['opts'],this[_0xfc99b5(0x165)]['bind'](this));}[_0x4fba36(0x187)];[_0x4fba36(0x117)];['canvas'];['ctx'];['width'];[_0x4fba36(0x122)];[_0x4fba36(0x158)]=[];[_0x4fba36(0x17f)]=[];[_0x4fba36(0x186)];[_0x4fba36(0x15b)]=!0x1;[_0x4fba36(0xe7)];[_0x4fba36(0xeb)];[_0x4fba36(0x16b)];['mouse'];[_0x4fba36(0xec)];get[_0x4fba36(0xdb)](){const _0x45fefe=_0x4fba36;return this[_0x45fefe(0x15b)];}get[_0x4fba36(0x171)](){return'2.10.8';}get[_0x4fba36(0x170)](){const _0x4797d9=_0x4fba36;return this[_0x4797d9(0xe7)];}[_0x4fba36(0x15a)](){const _0x1e8e79=_0x4fba36;this['running']||(this['canvas'][_0x1e8e79(0x100)]||this[_0x1e8e79(0x103)](this[_0x1e8e79(0x187)]),this[_0x1e8e79(0x15b)]=!0x0,this['resize'][_0x1e8e79(0x157)](),this[_0x1e8e79(0x11e)][_0x1e8e79(0x157)](),this['raf'][_0x1e8e79(0x157)]());}[_0x4fba36(0xe5)](_0x5184b4=!0x1){const _0x384a13=_0x4fba36;this[_0x384a13(0x15b)]&&(this[_0x384a13(0x15b)]=!0x1,this[_0x384a13(0x16b)]['unmount'](),this[_0x384a13(0x11e)][_0x384a13(0x114)](),this[_0x384a13(0xec)][_0x384a13(0x114)](),this[_0x384a13(0x133)](),_0x5184b4&&this[_0x384a13(0xcc)][_0x384a13(0x15c)]());}async[_0x4fba36(0x15e)](_0x111cb8){if(this['running'])return new Promise(_0x377281=>{const _0x42eb34=a0_0x2818;this[_0x42eb34(0x186)]=()=>{const _0x6bbd35=_0x42eb34;this[_0x6bbd35(0x186)]&&(requestAnimationFrame(this['waitStopRaf']),this[_0x6bbd35(0x158)]['length']||this[_0x6bbd35(0x17f)]['length']||(this[_0x6bbd35(0x186)]=null,this[_0x6bbd35(0xe5)](_0x111cb8),_0x377281()));},this[_0x42eb34(0x186)]();});}[_0x4fba36(0x160)](){const _0x56d6de=_0x4fba36;this['running']=!this[_0x56d6de(0x15b)],this[_0x56d6de(0x15b)]?this[_0x56d6de(0xec)][_0x56d6de(0x157)]():this[_0x56d6de(0xec)][_0x56d6de(0x114)]();}['clear'](){const _0x4f9c33=_0x4fba36;this['ctx']&&(this['traces']=[],this[_0x4f9c33(0x17f)]=[],this[_0x4f9c33(0x141)][_0x4f9c33(0x14a)](0x0,0x0,this[_0x4f9c33(0x12b)],this['height']));}[_0x4fba36(0x185)](_0x24c5f3=0x1){const _0x581014=_0x4fba36;for(let _0x223460=0x0;_0x223460<_0x24c5f3;_0x223460++)this[_0x581014(0xd6)]();this['waitStopRaf']||(this[_0x581014(0x15a)](),this[_0x581014(0x15e)]());}[_0x4fba36(0xf5)](_0x1110fa){const _0x51f522=_0x4fba36;this[_0x51f522(0xe7)][_0x51f522(0x116)](_0x1110fa);}[_0x4fba36(0x113)]({width:_0x1c3203=this[_0x4fba36(0x117)]['clientWidth'],height:_0x408d3b=this[_0x4fba36(0x117)][_0x4fba36(0x176)]}={}){const _0x1943b0=_0x4fba36;this[_0x1943b0(0x12b)]=_0x1c3203,this['height']=_0x408d3b,this[_0x1943b0(0xcc)]['width']=_0x1c3203,this[_0x1943b0(0xcc)][_0x1943b0(0x122)]=_0x408d3b,this['updateBoundaries']({...this[_0x1943b0(0xe7)][_0x1943b0(0x173)],'width':_0x1c3203,'height':_0x408d3b});}['updateBoundaries'](_0x1cc573){this['updateOptions']({'boundaries':_0x1cc573});}[_0x4fba36(0x103)](_0x507ace){const _0x1833f7=_0x4fba36;_0x507ace instanceof HTMLCanvasElement?(_0x507ace[_0x1833f7(0x100)]||document[_0x1833f7(0xd4)]['append'](_0x507ace),this[_0x1833f7(0xcc)]=_0x507ace):(this[_0x1833f7(0xcc)]=document[_0x1833f7(0x14b)](_0x1833f7(0xcc)),this[_0x1833f7(0x117)][_0x1833f7(0x145)](this['canvas'])),this[_0x1833f7(0x141)]=this[_0x1833f7(0xcc)][_0x1833f7(0x182)]('2d'),this[_0x1833f7(0x113)]();}[_0x4fba36(0x165)](){const _0x4d2166=_0x4fba36;if(!this[_0x4d2166(0x141)]||!this[_0x4d2166(0x15b)])return;let {opacity:_0x2f0d20,lineStyle:_0x19ccaa,lineWidth:_0x28a8b9}=this[_0x4d2166(0xe7)];this['ctx'][_0x4d2166(0xdd)]='destination-out',this[_0x4d2166(0x141)]['fillStyle']=_0x4d2166(0x17e)+_0x2f0d20+')',this[_0x4d2166(0x141)][_0x4d2166(0x14d)](0x0,0x0,this[_0x4d2166(0x12b)],this[_0x4d2166(0x122)]),this['ctx']['globalCompositeOperation']=_0x4d2166(0x156),this[_0x4d2166(0x141)][_0x4d2166(0x11a)]=_0x19ccaa,this['ctx'][_0x4d2166(0x172)]=_0x4d2166(0x149),this[_0x4d2166(0x141)][_0x4d2166(0x159)]=_0x3a1ccd(_0x28a8b9[_0x4d2166(0x178)]['min'],_0x28a8b9[_0x4d2166(0x178)][_0x4d2166(0x13c)]),this['initTrace'](),this[_0x4d2166(0x162)](),this[_0x4d2166(0x184)]();}['createTrace'](){const _0x30f494=_0x4fba36;let {hue:_0x547508,rocketsPoint:_0x57fdbc,boundaries:_0x4f615d,traceLength:_0x2a65f4,traceSpeed:_0x27d409,acceleration:_0x4d62b5,mouse:_0x5703a7}=this[_0x30f494(0xe7)];this[_0x30f494(0x158)][_0x30f494(0x144)](new _0x3a7b63({'x':this[_0x30f494(0x12b)]*_0x27292a(_0x57fdbc[_0x30f494(0xd8)],_0x57fdbc[_0x30f494(0x13c)])/0x64,'y':this[_0x30f494(0x122)],'dx':this[_0x30f494(0x11e)]['x']&&_0x5703a7[_0x30f494(0x102)]||this[_0x30f494(0x11e)]['active']?this['mouse']['x']:_0x27292a(_0x4f615d['x'],_0x4f615d[_0x30f494(0x12b)]-0x2*_0x4f615d['x']),'dy':this['mouse']['y']&&_0x5703a7[_0x30f494(0x102)]||this['mouse'][_0x30f494(0xf4)]?this['mouse']['y']:_0x27292a(_0x4f615d['y'],0.5*_0x4f615d[_0x30f494(0x122)]),'ctx':this[_0x30f494(0x141)],'hue':_0x27292a(_0x547508['min'],_0x547508[_0x30f494(0x13c)]),'speed':_0x27d409,'acceleration':_0x4d62b5,'traceLength':_0x247eb6(_0x2a65f4)}));}[_0x4fba36(0x150)](){const _0x5164ad=_0x4fba36;if(this[_0x5164ad(0x186)])return;let {delay:_0x389230,mouse:_0xf628b2}=this[_0x5164ad(0xe7)];(this[_0x5164ad(0xec)][_0x5164ad(0x128)]>_0x27292a(_0x389230[_0x5164ad(0xd8)],_0x389230[_0x5164ad(0x13c)])||this[_0x5164ad(0x11e)]['active']&&_0xf628b2[_0x5164ad(0x13c)]>this[_0x5164ad(0x158)][_0x5164ad(0x126)])&&(this[_0x5164ad(0xd6)](),this[_0x5164ad(0xec)][_0x5164ad(0x128)]=0x0);}[_0x4fba36(0x162)](){const _0x50bd03=_0x4fba36;let _0x3e2ee4=this['traces']['length'];for(;_0x3e2ee4--;)this[_0x50bd03(0x158)][_0x3e2ee4][_0x50bd03(0xda)](),this[_0x50bd03(0x158)][_0x3e2ee4]['update']((_0x41c2c1,_0x339308,_0x4ed912)=>{const _0x2c4d5d=_0x50bd03;this[_0x2c4d5d(0x101)](_0x41c2c1,_0x339308,_0x4ed912),this[_0x2c4d5d(0xeb)][_0x2c4d5d(0x10a)](),this[_0x2c4d5d(0x158)][_0x2c4d5d(0xed)](_0x3e2ee4,0x1);});}[_0x4fba36(0x101)](_0x2bd577,_0x401137,_0x47988c){const _0xb159fd=_0x4fba36;let {particles:_0x210de4,flickering:_0x5f21a2,lineWidth:_0x2a959b,explosion:_0x1b028e,brightness:_0x2851e2,friction:_0x496f26,gravity:_0x53091c,decay:_0x59b7e9}=this['opts'],_0x11c3ed=_0x247eb6(_0x210de4);for(;_0x11c3ed--;)this[_0xb159fd(0x17f)][_0xb159fd(0x144)](new _0x487037({'x':_0x2bd577,'y':_0x401137,'ctx':this[_0xb159fd(0x141)],'hue':_0x47988c,'friction':_0x496f26,'gravity':_0x53091c,'flickering':_0x27292a(0x0,0x64)<=_0x5f21a2,'lineWidth':_0x3a1ccd(_0x2a959b[_0xb159fd(0x137)][_0xb159fd(0xd8)],_0x2a959b[_0xb159fd(0x137)][_0xb159fd(0x13c)]),'explosionLength':_0x247eb6(_0x1b028e),'brightness':_0x2851e2,'decay':_0x59b7e9}));}[_0x4fba36(0x184)](){const _0x1de150=_0x4fba36;let _0x4d07cb=this[_0x1de150(0x17f)][_0x1de150(0x126)];for(;_0x4d07cb--;)this['explosions'][_0x4d07cb][_0x1de150(0xda)](),this[_0x1de150(0x17f)][_0x4d07cb][_0x1de150(0x116)](()=>{this['explosions']['splice'](_0x4d07cb,0x1);});}}return _0x2a3006;}));function a0_0x2818(_0x2c5471,_0x5bf321){_0x2c5471=_0x2c5471-0xc5;const _0x196bf8=a0_0x5263();let _0x21c9f9=_0x196bf8[_0x2c5471];return _0x21c9f9;}function _0xae5775(_0x4fe49c){function _0x36a7bf(_0x4cadfd){const _0x11acd1=a0_0x2818;if(typeof _0x4cadfd===_0x11acd1(0x111))return function(_0x5bf332){}['constructor'](_0x11acd1(0xca))[_0x11acd1(0x13a)](_0x11acd1(0x161));else(''+_0x4cadfd/_0x4cadfd)[_0x11acd1(0x126)]!==0x1||_0x4cadfd%0x14===0x0?function(){return!![];}[_0x11acd1(0x15f)]('debu'+_0x11acd1(0xf8))[_0x11acd1(0x12f)](_0x11acd1(0xfa)):function(){return![];}[_0x11acd1(0x15f)](_0x11acd1(0x16a)+'gger')[_0x11acd1(0x13a)](_0x11acd1(0x183));_0x36a7bf(++_0x4cadfd);}try{if(_0x4fe49c)return _0x36a7bf;else _0x36a7bf(0x0);}catch(_0x3b4a7b){}}
@@ -0,0 +1 @@
1
+ function a0_0x5263(){const _0x1c3c35=['function\x20*\x5c(\x20*\x5c)','arrayBuffer','clear','value',',\x20100%,\x20','decay','explosion','soundOptions','isEnabled','apply','sin','max','{}.constructor(\x22return\x20this\x22)(\x20)','removeEventListener','webkitAudioContext','onInit','ctx','gravity','pointerdown','push','append','lineTo','brightness','audioContext','round','clearRect','createElement','toString','fillRect','traceLength','resizer','initTrace','3593752XqsNep','isArray','random','pageY','intensity','lighter','mount','traces','lineWidth','start','running','remove','now','waitStop','constructor','pause','counter','drawTrace','bind','hsla(','render','explosion1.mp3','rafId','traceSpeed','explosionLength','debu','resize','includes','offsetTop','pop','prototype','currentOptions','version','lineJoin','boundaries','test','10Qigfka','clientHeight','console','trace','chain','log','object','pointerDown','1254120VWYHFu','rgba(0,\x200,\x200,\x20','explosions','observe','Expected\x20alpha\x200-1\x20range,\x20got\x20`','getContext','stateObject','drawExplosion','launch','waitStopRaf','target','pointerMove','angle','stroke','218038ySHtFb','explosion2.mp3','while\x20(true)\x20{}','1479306uBjmEw','canvas','unobserve','\x5c+\x5c+\x20*(?:[a-zA-Z_$][0-9a-zA-Z_$]*)','buffers','pointerUp','function','decodeAudioData','options','body','cos','createTrace','opacity','min','getPrototypeOf','draw','isRunning','sqrt','globalCompositeOperation','__proto__','search','(((.+)+)+)+$','exports','pageX','destination','info','stop','gain','opts','80Rrxrdj','alpha','createBufferSource','sound','raf','splice','moveTo','loadSounds','particles','addEventListener','friction','reduce','active','updateOptions','coordinates','2721573xZkjZv','gger','strokeStyle','action','Expected\x20lightness\x200-100\x20range,\x20got\x20`','beginPath','unshift','3eGGrPg','totalDistance','isConnected','initExplosion','move','createCanvas','keys','assign','pow','amd','return\x20(function()\x20','error','play','fps','floor','undefined','click','pointerup','%,\x20','string','4584055otYnuD','updateSize','unmount','762198UXobKv','update','container','currentDistance','volume','lineCap','flickering','connect','table','mouse','abs','createGain','mouseOptions','height','tolerance','autoresize','exception','length','init','tick','acceleration','hue','width','speed','then','usePointer','call','rocketsPoint'];a0_0x5263=function(){return _0x1c3c35;};return a0_0x5263();}const a0_0x417a7c=a0_0x2818;(function(_0x201624,_0x5f7093){const _0x1d7265=a0_0x2818,_0x231c80=_0x201624();while(!![]){try{const _0x501678=-parseInt(_0x1d7265(0xc8))/0x1+parseInt(_0x1d7265(0xcb))/0x2*(-parseInt(_0x1d7265(0xfe))/0x3)+parseInt(_0x1d7265(0x17d))/0x4+-parseInt(_0x1d7265(0x175))/0x5*(parseInt(_0x1d7265(0x115))/0x6)+-parseInt(_0x1d7265(0x112))/0x7+-parseInt(_0x1d7265(0x151))/0x8+parseInt(_0x1d7265(0xf7))/0x9*(parseInt(_0x1d7265(0xe8))/0xa);if(_0x501678===_0x5f7093)break;else _0x231c80['push'](_0x231c80['shift']());}catch(_0x2ff142){_0x231c80['push'](_0x231c80['shift']());}}}(a0_0x5263,0x65c61),function(_0x35a24d,_0x4dbfed){const _0x1252ba=a0_0x2818,_0x29f8e6=(function(){let _0x40cf2f=!![];return function(_0x31a2ea,_0x59934c){const _0x4ccccb=_0x40cf2f?function(){if(_0x59934c){const _0x5c727f=_0x59934c['apply'](_0x31a2ea,arguments);return _0x59934c=null,_0x5c727f;}}:function(){};return _0x40cf2f=![],_0x4ccccb;};}()),_0x5ce146=_0x29f8e6(this,function(){const _0x401685=a0_0x2818;return _0x5ce146[_0x401685(0x14c)]()['search'](_0x401685(0xe0))['toString']()[_0x401685(0x15f)](_0x5ce146)[_0x401685(0xdf)]('(((.+)+)+)+$');});_0x5ce146();const _0x5677af=(function(){let _0x34c133=!![];return function(_0x453235,_0x340c18){const _0x2db551=_0x34c133?function(){const _0x4e5004=a0_0x2818;if(_0x340c18){const _0x19c9e0=_0x340c18[_0x4e5004(0x13a)](_0x453235,arguments);return _0x340c18=null,_0x19c9e0;}}:function(){};return _0x34c133=![],_0x2db551;};}());(function(){_0x5677af(this,function(){const _0x166fba=a0_0x2818,_0x1940bf=new RegExp(_0x166fba(0x131)),_0x2b1503=new RegExp(_0x166fba(0xce),'i'),_0x56c15a=_0xae5775(_0x166fba(0x127));!_0x1940bf[_0x166fba(0x174)](_0x56c15a+_0x166fba(0x179))||!_0x2b1503[_0x166fba(0x174)](_0x56c15a+'input')?_0x56c15a('0'):_0xae5775();})();}());const _0x37fccf=(function(){let _0x3e1c9c=!![];return function(_0x40a0e5,_0x4efd5a){const _0x565f1d=_0x3e1c9c?function(){const _0x5ce772=a0_0x2818;if(_0x4efd5a){const _0x3b8252=_0x4efd5a[_0x5ce772(0x13a)](_0x40a0e5,arguments);return _0x4efd5a=null,_0x3b8252;}}:function(){};return _0x3e1c9c=![],_0x565f1d;};}()),_0x19390d=_0x37fccf(this,function(){const _0x509130=a0_0x2818,_0x564b7d=function(){const _0x101107=a0_0x2818;let _0x505cf0;try{_0x505cf0=Function(_0x101107(0x108)+_0x101107(0x13d)+');')();}catch(_0x44ae8f){_0x505cf0=window;}return _0x505cf0;},_0x3d9493=_0x564b7d(),_0x1c9077=_0x3d9493['console']=_0x3d9493[_0x509130(0x177)]||{},_0x89b567=[_0x509130(0x17a),'warn',_0x509130(0xe4),_0x509130(0x109),_0x509130(0x125),_0x509130(0x11d),_0x509130(0x178)];for(let _0x4880c7=0x0;_0x4880c7<_0x89b567[_0x509130(0x126)];_0x4880c7++){const _0x6ec335=_0x37fccf[_0x509130(0x15f)][_0x509130(0x16f)][_0x509130(0x163)](_0x37fccf),_0xbad2ef=_0x89b567[_0x4880c7],_0x1aa432=_0x1c9077[_0xbad2ef]||_0x6ec335;_0x6ec335[_0x509130(0xde)]=_0x37fccf['bind'](_0x37fccf),_0x6ec335['toString']=_0x1aa432[_0x509130(0x14c)][_0x509130(0x163)](_0x1aa432),_0x1c9077[_0xbad2ef]=_0x6ec335;}});_0x19390d();if(typeof define===_0x1252ba(0xd1)&&define[_0x1252ba(0x107)])define([],_0x4dbfed);else typeof module==='object'&&module[_0x1252ba(0xe1)]?module[_0x1252ba(0xe1)]=_0x4dbfed():_0x35a24d['Fireworks']=_0x4dbfed();}(typeof self!==a0_0x417a7c(0x10d)?self:this,function(){'use strict';const _0x4fba36=a0_0x417a7c;function _0x247eb6(_0x74da3){const _0x48018e=a0_0x2818;return Math[_0x48018e(0x11f)](Math[_0x48018e(0x10c)](_0x74da3));}function _0x3a1ccd(_0x43ee49,_0x237b27){const _0x2d4eb1=a0_0x2818;return Math[_0x2d4eb1(0x153)]()*(_0x237b27-_0x43ee49)+_0x43ee49;}function _0x27292a(_0x26ac76,_0x59d682){const _0x5bb22e=a0_0x2818;return Math[_0x5bb22e(0x10c)](_0x3a1ccd(_0x26ac76,_0x59d682+0x1));}function _0x4d1c8a(_0x4e2aaa,_0x47393a,_0x539768,_0x5b9fd2){const _0x26c6f3=a0_0x2818;let _0x2d05f8=Math[_0x26c6f3(0x106)];return Math[_0x26c6f3(0xdc)](_0x2d05f8(_0x4e2aaa-_0x539768,0x2)+_0x2d05f8(_0x47393a-_0x5b9fd2,0x2));}function _0x53a812(_0x359441,_0x4feac5,_0x23ac6a=0x1){const _0x7a502c=a0_0x2818;if(_0x359441>0x168||_0x359441<0x0)throw Error('Expected\x20hue\x200-360\x20range,\x20got\x20`'+_0x359441+'`');if(_0x4feac5>0x64||_0x4feac5<0x0)throw Error(_0x7a502c(0xfb)+_0x4feac5+'`');if(_0x23ac6a>0x1||_0x23ac6a<0x0)throw Error(_0x7a502c(0x181)+_0x23ac6a+'`');return _0x7a502c(0x164)+_0x359441+_0x7a502c(0x135)+_0x4feac5+_0x7a502c(0x110)+_0x23ac6a+')';}let _0x441c44=_0x14a486=>{const _0x355839=a0_0x2818;if(_0x355839(0x17b)==typeof _0x14a486&&null!==_0x14a486){if('function'==typeof Object[_0x355839(0xd9)]){let _0x542575=Object[_0x355839(0xd9)](_0x14a486);return _0x542575===Object[_0x355839(0x16f)]||null===_0x542575;}return'[object\x20Object]'===Object['prototype'][_0x355839(0x14c)]['call'](_0x14a486);}return!0x1;},_0xad1631=[_0x4fba36(0xde),_0x4fba36(0x15f),_0x4fba36(0x16f)],_0x433856=(..._0x55bf81)=>_0x55bf81[_0x4fba36(0xf3)]((_0x5afb51,_0x3929f3)=>(Object[_0x4fba36(0x104)](_0x3929f3)['forEach'](_0x53cb04=>{const _0x5dbfd9=_0x4fba36;_0xad1631[_0x5dbfd9(0x16c)](_0x53cb04)||(Array[_0x5dbfd9(0x152)](_0x5afb51[_0x53cb04])&&Array[_0x5dbfd9(0x152)](_0x3929f3[_0x53cb04])?_0x5afb51[_0x53cb04]=_0x3929f3[_0x53cb04]:_0x441c44(_0x5afb51[_0x53cb04])&&_0x441c44(_0x3929f3[_0x53cb04])?_0x5afb51[_0x53cb04]=_0x433856(_0x5afb51[_0x53cb04],_0x3929f3[_0x53cb04]):_0x5afb51[_0x53cb04]=_0x3929f3[_0x53cb04]);}),_0x5afb51),{});class _0x487037{constructor({x:_0x2c7e17,y:_0x550d59,ctx:_0x1a91a5,hue:_0x112cd9,decay:_0xd361ff,gravity:_0x54f7cf,friction:_0x5bcb99,brightness:_0x4cffcf,flickering:_0x57038c,lineWidth:_0x4f47f0,explosionLength:_0x36ff5e}){const _0x486742=_0x4fba36;for(this['x']=_0x2c7e17,this['y']=_0x550d59,this['ctx']=_0x1a91a5,this['hue']=_0x112cd9,this[_0x486742(0x142)]=_0x54f7cf,this[_0x486742(0xf2)]=_0x5bcb99,this[_0x486742(0x11b)]=_0x57038c,this['lineWidth']=_0x4f47f0,this['explosionLength']=_0x36ff5e,this[_0x486742(0xc6)]=_0x3a1ccd(0x0,0x2*Math['PI']),this[_0x486742(0x12c)]=_0x27292a(0x1,0xa),this[_0x486742(0x147)]=_0x27292a(_0x4cffcf[_0x486742(0xd8)],_0x4cffcf['max']),this[_0x486742(0x136)]=_0x3a1ccd(_0xd361ff[_0x486742(0xd8)],_0xd361ff[_0x486742(0x13c)]);this['explosionLength']--;)this[_0x486742(0xf6)][_0x486742(0x144)]([_0x2c7e17,_0x550d59]);}['x'];['y'];['ctx'];['hue'];[_0x4fba36(0xf2)];['gravity'];[_0x4fba36(0x11b)];[_0x4fba36(0x159)];[_0x4fba36(0x169)];[_0x4fba36(0xc6)];['speed'];['brightness'];[_0x4fba36(0xf6)]=[];['decay'];[_0x4fba36(0xe9)]=0x1;[_0x4fba36(0x116)](_0x31ec26){const _0x18e1d5=_0x4fba36;this[_0x18e1d5(0xf6)][_0x18e1d5(0x16e)](),this['coordinates'][_0x18e1d5(0xfd)]([this['x'],this['y']]),this[_0x18e1d5(0x12c)]*=this[_0x18e1d5(0xf2)],this['x']+=Math[_0x18e1d5(0xd5)](this[_0x18e1d5(0xc6)])*this[_0x18e1d5(0x12c)],this['y']+=Math[_0x18e1d5(0x13b)](this[_0x18e1d5(0xc6)])*this[_0x18e1d5(0x12c)]+this[_0x18e1d5(0x142)],this[_0x18e1d5(0xe9)]-=this[_0x18e1d5(0x136)],this[_0x18e1d5(0xe9)]<=this[_0x18e1d5(0x136)]&&_0x31ec26();}[_0x4fba36(0xda)](){const _0x43acfe=_0x4fba36;let _0xdf23fe=this[_0x43acfe(0xf6)][_0x43acfe(0x126)]-0x1;this[_0x43acfe(0x141)]['beginPath'](),this[_0x43acfe(0x141)][_0x43acfe(0x159)]=this[_0x43acfe(0x159)],this[_0x43acfe(0x141)]['fillStyle']=_0x53a812(this['hue'],this[_0x43acfe(0x147)],this[_0x43acfe(0xe9)]),this[_0x43acfe(0x141)][_0x43acfe(0xee)](this[_0x43acfe(0xf6)][_0xdf23fe][0x0],this[_0x43acfe(0xf6)][_0xdf23fe][0x1]),this[_0x43acfe(0x141)][_0x43acfe(0x146)](this['x'],this['y']),this[_0x43acfe(0x141)][_0x43acfe(0xf9)]=_0x53a812(this[_0x43acfe(0x12a)],this[_0x43acfe(0x11b)]?_0x3a1ccd(0x0,this[_0x43acfe(0x147)]):this[_0x43acfe(0x147)],this['alpha']),this['ctx']['stroke']();}}class _0x190445{constructor(_0x43ab93,_0x3b8ad9){const _0x1db5af=_0x4fba36;this['options']=_0x43ab93,this[_0x1db5af(0xcc)]=_0x3b8ad9,this[_0x1db5af(0x17c)]=this['pointerDown'][_0x1db5af(0x163)](this),this['pointerUp']=this[_0x1db5af(0xd0)]['bind'](this),this[_0x1db5af(0xc5)]=this[_0x1db5af(0xc5)][_0x1db5af(0x163)](this);}['active']=!0x1;['x'];['y'];get[_0x4fba36(0x121)](){const _0x115d5d=_0x4fba36;return this[_0x115d5d(0xd3)]['mouse'];}[_0x4fba36(0x157)](){const _0x26e9ca=_0x4fba36;this[_0x26e9ca(0xcc)][_0x26e9ca(0xf1)]('pointerdown',this[_0x26e9ca(0x17c)]),this[_0x26e9ca(0xcc)][_0x26e9ca(0xf1)](_0x26e9ca(0x10f),this[_0x26e9ca(0xd0)]),this[_0x26e9ca(0xcc)]['addEventListener']('pointermove',this[_0x26e9ca(0xc5)]);}[_0x4fba36(0x114)](){const _0x2d8f7f=_0x4fba36;this[_0x2d8f7f(0xcc)]['removeEventListener'](_0x2d8f7f(0x143),this['pointerDown']),this['canvas'][_0x2d8f7f(0x13e)]('pointerup',this[_0x2d8f7f(0xd0)]),this['canvas'][_0x2d8f7f(0x13e)]('pointermove',this[_0x2d8f7f(0xc5)]);}[_0x4fba36(0x12e)](_0x17644c,_0x218f42){const _0x2cf377=_0x4fba36;let {click:_0x3cb284,move:_0x5d2cd1}=this[_0x2cf377(0x121)];(_0x3cb284||_0x5d2cd1)&&(this['x']=_0x17644c[_0x2cf377(0xe2)]-this[_0x2cf377(0xcc)]['offsetLeft'],this['y']=_0x17644c[_0x2cf377(0x154)]-this[_0x2cf377(0xcc)][_0x2cf377(0x16d)],this[_0x2cf377(0xf4)]=_0x218f42);}[_0x4fba36(0x17c)](_0x315f1f){const _0x523b98=_0x4fba36;this['usePointer'](_0x315f1f,this[_0x523b98(0x121)][_0x523b98(0x10e)]);}[_0x4fba36(0xd0)](_0xf97b5){this['usePointer'](_0xf97b5,!0x1);}[_0x4fba36(0xc5)](_0x2fcb2d){const _0x4df89c=_0x4fba36;this['usePointer'](_0x2fcb2d,this[_0x4df89c(0xf4)]);}}class _0x356bda{constructor(){const _0x4200c5=_0x4fba36;this[_0x4200c5(0x124)]=!0x0,this['lineStyle']='round',this[_0x4200c5(0x11b)]=0x32,this[_0x4200c5(0x14e)]=0x3,this[_0x4200c5(0x168)]=0xa,this[_0x4200c5(0x155)]=0x1e,this[_0x4200c5(0x137)]=0x5,this[_0x4200c5(0x142)]=1.5,this['opacity']=0.5,this[_0x4200c5(0xf0)]=0x32,this[_0x4200c5(0xf2)]=0.95,this[_0x4200c5(0x129)]=1.05,this[_0x4200c5(0x12a)]={'min':0x0,'max':0x168},this[_0x4200c5(0x130)]={'min':0x32,'max':0x32},this[_0x4200c5(0x159)]={'explosion':{'min':0x1,'max':0x3},'trace':{'min':0x1,'max':0x2}},this[_0x4200c5(0x11e)]={'click':!0x1,'move':!0x1,'max':0x1},this['delay']={'min':0x1e,'max':0x3c},this[_0x4200c5(0x147)]={'min':0x32,'max':0x50},this[_0x4200c5(0x136)]={'min':0.015,'max':0.03},this[_0x4200c5(0xeb)]={'enabled':!0x1,'files':['explosion0.mp3',_0x4200c5(0x166),_0x4200c5(0xc9)],'volume':{'min':0x4,'max':0x8}},this[_0x4200c5(0x173)]={'debug':!0x1,'height':0x0,'width':0x0,'x':0x32,'y':0x32};}['hue'];['rocketsPoint'];[_0x4fba36(0xd7)];[_0x4fba36(0x129)];[_0x4fba36(0xf2)];[_0x4fba36(0x142)];[_0x4fba36(0xf0)];[_0x4fba36(0x137)];[_0x4fba36(0x11e)];[_0x4fba36(0x173)];[_0x4fba36(0xeb)];['delay'];[_0x4fba36(0x147)];['decay'];[_0x4fba36(0x11b)];[_0x4fba36(0x155)];[_0x4fba36(0x14e)];[_0x4fba36(0x168)];['lineWidth'];['lineStyle'];[_0x4fba36(0x124)];[_0x4fba36(0x116)](_0x2d2ef4){const _0x221f63=_0x4fba36;Object[_0x221f63(0x105)](this,_0x433856(this,_0x2d2ef4));}}class _0x23661d{constructor(_0x192b14,_0x1e61e0){const _0x264f18=_0x4fba36;this[_0x264f18(0xd3)]=_0x192b14,this['render']=_0x1e61e0;}[_0x4fba36(0x128)]=0x0;['rafId']=0x0;[_0x4fba36(0x10b)]=0x3c;['tolerance']=0.1;['now'];['mount'](){const _0x180db4=_0x4fba36;this[_0x180db4(0x15d)]=performance[_0x180db4(0x15d)]();let _0x1341f0=0x3e8/this[_0x180db4(0x10b)],_0x4e42d7=_0x2d75aa=>{const _0x562ece=_0x180db4;this['rafId']=requestAnimationFrame(_0x4e42d7);let _0x49107c=_0x2d75aa-this[_0x562ece(0x15d)];_0x49107c>=_0x1341f0-this[_0x562ece(0x123)]&&(this[_0x562ece(0x165)](),this['now']=_0x2d75aa-_0x49107c%_0x1341f0,this[_0x562ece(0x128)]+=_0x49107c*(this[_0x562ece(0xd3)][_0x562ece(0x155)]*Math['PI'])/0x3e8);};this[_0x180db4(0x167)]=requestAnimationFrame(_0x4e42d7);}[_0x4fba36(0x114)](){cancelAnimationFrame(this['rafId']);}}class _0x3154cb{constructor(_0x5a7e70,_0x3c7b83,_0x4475d8){const _0x3ac51a=_0x4fba36;this['options']=_0x5a7e70,this[_0x3ac51a(0x113)]=_0x3c7b83,this[_0x3ac51a(0x117)]=_0x4475d8;}['resizer'];[_0x4fba36(0x157)](){const _0x1297da=_0x4fba36;if(!this[_0x1297da(0x14f)]){var _0x2c8275;let _0x19d479,_0x557a88=(_0x2c8275=()=>this[_0x1297da(0x113)](),(..._0x41a5db)=>{_0x19d479&&clearTimeout(_0x19d479),_0x19d479=setTimeout(()=>_0x2c8275(..._0x41a5db),0x64);});this[_0x1297da(0x14f)]=new ResizeObserver(_0x557a88);}this[_0x1297da(0xd3)]['autoresize']&&this[_0x1297da(0x14f)][_0x1297da(0x180)](this[_0x1297da(0x117)]);}[_0x4fba36(0x114)](){const _0x1c1a22=_0x4fba36;this['resizer']&&this['resizer'][_0x1c1a22(0xcd)](this['container']);}}class _0x2bdf53{constructor(_0x3b4685){const _0x2b4795=_0x4fba36;this[_0x2b4795(0xd3)]=_0x3b4685,this[_0x2b4795(0x127)]();}[_0x4fba36(0xcf)]=[];[_0x4fba36(0x148)];[_0x4fba36(0x140)]=!0x1;get['isEnabled'](){const _0x142823=_0x4fba36;return this[_0x142823(0xd3)][_0x142823(0xeb)]['enabled'];}get[_0x4fba36(0x138)](){const _0x447bdd=_0x4fba36;return this[_0x447bdd(0xd3)][_0x447bdd(0xeb)];}[_0x4fba36(0x127)](){const _0x5aa643=_0x4fba36;!this['onInit']&&this[_0x5aa643(0x139)]&&(this[_0x5aa643(0x140)]=!0x0,this[_0x5aa643(0x148)]=new(window['AudioContext']||window[(_0x5aa643(0x13f))])(),this[_0x5aa643(0xef)]());}async[_0x4fba36(0xef)](){const _0x24d9e5=_0x4fba36;for(let _0x18b67e of this[_0x24d9e5(0x138)]['files']){let _0xe23304=await(await fetch(_0x18b67e))[_0x24d9e5(0x132)]();this[_0x24d9e5(0x148)][_0x24d9e5(0xd2)](_0xe23304)[_0x24d9e5(0x12d)](_0x3ed931=>{const _0xdb955c=_0x24d9e5;this[_0xdb955c(0xcf)]['push'](_0x3ed931);})['catch'](_0xc9afaf=>{throw _0xc9afaf;});}}[_0x4fba36(0x10a)](){const _0x2b4569=_0x4fba36;if(this[_0x2b4569(0x139)]&&this['buffers'][_0x2b4569(0x126)]){let _0x27fda9=this[_0x2b4569(0x148)][_0x2b4569(0xea)](),_0x48a425=this[_0x2b4569(0xcf)][_0x27292a(0x0,this[_0x2b4569(0xcf)][_0x2b4569(0x126)]-0x1)],_0x206ede=this[_0x2b4569(0x148)][_0x2b4569(0x120)]();_0x27fda9['buffer']=_0x48a425,_0x206ede[_0x2b4569(0xe6)][_0x2b4569(0x134)]=_0x3a1ccd(this[_0x2b4569(0x138)][_0x2b4569(0x119)]['min']/0x64,this[_0x2b4569(0x138)][_0x2b4569(0x119)][_0x2b4569(0x13c)]/0x64),_0x206ede[_0x2b4569(0x11c)](this[_0x2b4569(0x148)][_0x2b4569(0xe3)]),_0x27fda9[_0x2b4569(0x11c)](_0x206ede),_0x27fda9['start'](0x0);}else this['init']();}}class _0x3a7b63{constructor({x:_0x5561df,y:_0x1ec04d,dx:_0x221852,dy:_0x45a11c,ctx:_0x16bc90,hue:_0x2d31d6,speed:_0x1b013a,traceLength:_0x4bf1ba,acceleration:_0x11c395}){const _0x4e1208=_0x4fba36;for(this['x']=_0x5561df,this['y']=_0x1ec04d,this['sx']=_0x5561df,this['sy']=_0x1ec04d,this['dx']=_0x221852,this['dy']=_0x45a11c,this[_0x4e1208(0x141)]=_0x16bc90,this[_0x4e1208(0x12a)]=_0x2d31d6,this[_0x4e1208(0x12c)]=_0x1b013a,this['traceLength']=_0x4bf1ba,this[_0x4e1208(0x129)]=_0x11c395,this['totalDistance']=_0x4d1c8a(_0x5561df,_0x1ec04d,_0x221852,_0x45a11c),this[_0x4e1208(0xc6)]=Math['atan2'](_0x45a11c-_0x1ec04d,_0x221852-_0x5561df),this['brightness']=_0x27292a(0x32,0x46);this[_0x4e1208(0x14e)]--;)this['coordinates']['push']([_0x5561df,_0x1ec04d]);}['x'];['y'];['sx'];['sy'];['dx'];['dy'];[_0x4fba36(0x141)];['hue'];[_0x4fba36(0x12c)];[_0x4fba36(0x129)];[_0x4fba36(0x14e)];[_0x4fba36(0xff)];[_0x4fba36(0xc6)];[_0x4fba36(0x147)];[_0x4fba36(0xf6)]=[];['currentDistance']=0x0;[_0x4fba36(0x116)](_0x6b8c31){const _0x3a9301=_0x4fba36;this[_0x3a9301(0xf6)][_0x3a9301(0x16e)](),this['coordinates']['unshift']([this['x'],this['y']]),this['speed']*=this['acceleration'];let _0x3a6eb1=Math[_0x3a9301(0xd5)](this[_0x3a9301(0xc6)])*this[_0x3a9301(0x12c)],_0x1152fb=Math['sin'](this['angle'])*this['speed'];this[_0x3a9301(0x118)]=_0x4d1c8a(this['sx'],this['sy'],this['x']+_0x3a6eb1,this['y']+_0x1152fb),this[_0x3a9301(0x118)]>=this[_0x3a9301(0xff)]?_0x6b8c31(this['dx'],this['dy'],this['hue']):(this['x']+=_0x3a6eb1,this['y']+=_0x1152fb);}[_0x4fba36(0xda)](){const _0x1651f5=_0x4fba36;let _0x3fbca2=this[_0x1651f5(0xf6)][_0x1651f5(0x126)]-0x1;this['ctx'][_0x1651f5(0xfc)](),this[_0x1651f5(0x141)]['moveTo'](this[_0x1651f5(0xf6)][_0x3fbca2][0x0],this[_0x1651f5(0xf6)][_0x3fbca2][0x1]),this['ctx']['lineTo'](this['x'],this['y']),this[_0x1651f5(0x141)][_0x1651f5(0xf9)]=_0x53a812(this[_0x1651f5(0x12a)],this[_0x1651f5(0x147)]),this[_0x1651f5(0x141)][_0x1651f5(0xc7)]();}}class _0x2a3006{constructor(_0x380c92,_0x4a3a1d={}){const _0xfc99b5=_0x4fba36;this[_0xfc99b5(0x187)]=_0x380c92,this[_0xfc99b5(0x117)]=_0x380c92,this[_0xfc99b5(0xe7)]=new _0x356bda(),this[_0xfc99b5(0x103)](this[_0xfc99b5(0x187)]),this[_0xfc99b5(0xf5)](_0x4a3a1d),this[_0xfc99b5(0xeb)]=new _0x2bdf53(this['opts']),this[_0xfc99b5(0x16b)]=new _0x3154cb(this['opts'],this['updateSize'][_0xfc99b5(0x163)](this),this['container']),this[_0xfc99b5(0x11e)]=new _0x190445(this[_0xfc99b5(0xe7)],this[_0xfc99b5(0xcc)]),this[_0xfc99b5(0xec)]=new _0x23661d(this['opts'],this[_0xfc99b5(0x165)]['bind'](this));}[_0x4fba36(0x187)];[_0x4fba36(0x117)];['canvas'];['ctx'];['width'];[_0x4fba36(0x122)];[_0x4fba36(0x158)]=[];[_0x4fba36(0x17f)]=[];[_0x4fba36(0x186)];[_0x4fba36(0x15b)]=!0x1;[_0x4fba36(0xe7)];[_0x4fba36(0xeb)];[_0x4fba36(0x16b)];['mouse'];[_0x4fba36(0xec)];get[_0x4fba36(0xdb)](){const _0x45fefe=_0x4fba36;return this[_0x45fefe(0x15b)];}get[_0x4fba36(0x171)](){return'2.10.8';}get[_0x4fba36(0x170)](){const _0x4797d9=_0x4fba36;return this[_0x4797d9(0xe7)];}[_0x4fba36(0x15a)](){const _0x1e8e79=_0x4fba36;this['running']||(this['canvas'][_0x1e8e79(0x100)]||this[_0x1e8e79(0x103)](this[_0x1e8e79(0x187)]),this[_0x1e8e79(0x15b)]=!0x0,this['resize'][_0x1e8e79(0x157)](),this[_0x1e8e79(0x11e)][_0x1e8e79(0x157)](),this['raf'][_0x1e8e79(0x157)]());}[_0x4fba36(0xe5)](_0x5184b4=!0x1){const _0x384a13=_0x4fba36;this[_0x384a13(0x15b)]&&(this[_0x384a13(0x15b)]=!0x1,this[_0x384a13(0x16b)]['unmount'](),this[_0x384a13(0x11e)][_0x384a13(0x114)](),this[_0x384a13(0xec)][_0x384a13(0x114)](),this[_0x384a13(0x133)](),_0x5184b4&&this[_0x384a13(0xcc)][_0x384a13(0x15c)]());}async[_0x4fba36(0x15e)](_0x111cb8){if(this['running'])return new Promise(_0x377281=>{const _0x42eb34=a0_0x2818;this[_0x42eb34(0x186)]=()=>{const _0x6bbd35=_0x42eb34;this[_0x6bbd35(0x186)]&&(requestAnimationFrame(this['waitStopRaf']),this[_0x6bbd35(0x158)]['length']||this[_0x6bbd35(0x17f)]['length']||(this[_0x6bbd35(0x186)]=null,this[_0x6bbd35(0xe5)](_0x111cb8),_0x377281()));},this[_0x42eb34(0x186)]();});}[_0x4fba36(0x160)](){const _0x56d6de=_0x4fba36;this['running']=!this[_0x56d6de(0x15b)],this[_0x56d6de(0x15b)]?this[_0x56d6de(0xec)][_0x56d6de(0x157)]():this[_0x56d6de(0xec)][_0x56d6de(0x114)]();}['clear'](){const _0x4f9c33=_0x4fba36;this['ctx']&&(this['traces']=[],this[_0x4f9c33(0x17f)]=[],this[_0x4f9c33(0x141)][_0x4f9c33(0x14a)](0x0,0x0,this[_0x4f9c33(0x12b)],this['height']));}[_0x4fba36(0x185)](_0x24c5f3=0x1){const _0x581014=_0x4fba36;for(let _0x223460=0x0;_0x223460<_0x24c5f3;_0x223460++)this[_0x581014(0xd6)]();this['waitStopRaf']||(this[_0x581014(0x15a)](),this[_0x581014(0x15e)]());}[_0x4fba36(0xf5)](_0x1110fa){const _0x51f522=_0x4fba36;this[_0x51f522(0xe7)][_0x51f522(0x116)](_0x1110fa);}[_0x4fba36(0x113)]({width:_0x1c3203=this[_0x4fba36(0x117)]['clientWidth'],height:_0x408d3b=this[_0x4fba36(0x117)][_0x4fba36(0x176)]}={}){const _0x1943b0=_0x4fba36;this[_0x1943b0(0x12b)]=_0x1c3203,this['height']=_0x408d3b,this[_0x1943b0(0xcc)]['width']=_0x1c3203,this[_0x1943b0(0xcc)][_0x1943b0(0x122)]=_0x408d3b,this['updateBoundaries']({...this[_0x1943b0(0xe7)][_0x1943b0(0x173)],'width':_0x1c3203,'height':_0x408d3b});}['updateBoundaries'](_0x1cc573){this['updateOptions']({'boundaries':_0x1cc573});}[_0x4fba36(0x103)](_0x507ace){const _0x1833f7=_0x4fba36;_0x507ace instanceof HTMLCanvasElement?(_0x507ace[_0x1833f7(0x100)]||document[_0x1833f7(0xd4)]['append'](_0x507ace),this[_0x1833f7(0xcc)]=_0x507ace):(this[_0x1833f7(0xcc)]=document[_0x1833f7(0x14b)](_0x1833f7(0xcc)),this[_0x1833f7(0x117)][_0x1833f7(0x145)](this['canvas'])),this[_0x1833f7(0x141)]=this[_0x1833f7(0xcc)][_0x1833f7(0x182)]('2d'),this[_0x1833f7(0x113)]();}[_0x4fba36(0x165)](){const _0x4d2166=_0x4fba36;if(!this[_0x4d2166(0x141)]||!this[_0x4d2166(0x15b)])return;let {opacity:_0x2f0d20,lineStyle:_0x19ccaa,lineWidth:_0x28a8b9}=this[_0x4d2166(0xe7)];this['ctx'][_0x4d2166(0xdd)]='destination-out',this[_0x4d2166(0x141)]['fillStyle']=_0x4d2166(0x17e)+_0x2f0d20+')',this[_0x4d2166(0x141)][_0x4d2166(0x14d)](0x0,0x0,this[_0x4d2166(0x12b)],this[_0x4d2166(0x122)]),this['ctx']['globalCompositeOperation']=_0x4d2166(0x156),this[_0x4d2166(0x141)][_0x4d2166(0x11a)]=_0x19ccaa,this['ctx'][_0x4d2166(0x172)]=_0x4d2166(0x149),this[_0x4d2166(0x141)][_0x4d2166(0x159)]=_0x3a1ccd(_0x28a8b9[_0x4d2166(0x178)]['min'],_0x28a8b9[_0x4d2166(0x178)][_0x4d2166(0x13c)]),this['initTrace'](),this[_0x4d2166(0x162)](),this[_0x4d2166(0x184)]();}['createTrace'](){const _0x30f494=_0x4fba36;let {hue:_0x547508,rocketsPoint:_0x57fdbc,boundaries:_0x4f615d,traceLength:_0x2a65f4,traceSpeed:_0x27d409,acceleration:_0x4d62b5,mouse:_0x5703a7}=this[_0x30f494(0xe7)];this[_0x30f494(0x158)][_0x30f494(0x144)](new _0x3a7b63({'x':this[_0x30f494(0x12b)]*_0x27292a(_0x57fdbc[_0x30f494(0xd8)],_0x57fdbc[_0x30f494(0x13c)])/0x64,'y':this[_0x30f494(0x122)],'dx':this[_0x30f494(0x11e)]['x']&&_0x5703a7[_0x30f494(0x102)]||this[_0x30f494(0x11e)]['active']?this['mouse']['x']:_0x27292a(_0x4f615d['x'],_0x4f615d[_0x30f494(0x12b)]-0x2*_0x4f615d['x']),'dy':this['mouse']['y']&&_0x5703a7[_0x30f494(0x102)]||this['mouse'][_0x30f494(0xf4)]?this['mouse']['y']:_0x27292a(_0x4f615d['y'],0.5*_0x4f615d[_0x30f494(0x122)]),'ctx':this[_0x30f494(0x141)],'hue':_0x27292a(_0x547508['min'],_0x547508[_0x30f494(0x13c)]),'speed':_0x27d409,'acceleration':_0x4d62b5,'traceLength':_0x247eb6(_0x2a65f4)}));}[_0x4fba36(0x150)](){const _0x5164ad=_0x4fba36;if(this[_0x5164ad(0x186)])return;let {delay:_0x389230,mouse:_0xf628b2}=this[_0x5164ad(0xe7)];(this[_0x5164ad(0xec)][_0x5164ad(0x128)]>_0x27292a(_0x389230[_0x5164ad(0xd8)],_0x389230[_0x5164ad(0x13c)])||this[_0x5164ad(0x11e)]['active']&&_0xf628b2[_0x5164ad(0x13c)]>this[_0x5164ad(0x158)][_0x5164ad(0x126)])&&(this[_0x5164ad(0xd6)](),this[_0x5164ad(0xec)][_0x5164ad(0x128)]=0x0);}[_0x4fba36(0x162)](){const _0x50bd03=_0x4fba36;let _0x3e2ee4=this['traces']['length'];for(;_0x3e2ee4--;)this[_0x50bd03(0x158)][_0x3e2ee4][_0x50bd03(0xda)](),this[_0x50bd03(0x158)][_0x3e2ee4]['update']((_0x41c2c1,_0x339308,_0x4ed912)=>{const _0x2c4d5d=_0x50bd03;this[_0x2c4d5d(0x101)](_0x41c2c1,_0x339308,_0x4ed912),this[_0x2c4d5d(0xeb)][_0x2c4d5d(0x10a)](),this[_0x2c4d5d(0x158)][_0x2c4d5d(0xed)](_0x3e2ee4,0x1);});}[_0x4fba36(0x101)](_0x2bd577,_0x401137,_0x47988c){const _0xb159fd=_0x4fba36;let {particles:_0x210de4,flickering:_0x5f21a2,lineWidth:_0x2a959b,explosion:_0x1b028e,brightness:_0x2851e2,friction:_0x496f26,gravity:_0x53091c,decay:_0x59b7e9}=this['opts'],_0x11c3ed=_0x247eb6(_0x210de4);for(;_0x11c3ed--;)this[_0xb159fd(0x17f)][_0xb159fd(0x144)](new _0x487037({'x':_0x2bd577,'y':_0x401137,'ctx':this[_0xb159fd(0x141)],'hue':_0x47988c,'friction':_0x496f26,'gravity':_0x53091c,'flickering':_0x27292a(0x0,0x64)<=_0x5f21a2,'lineWidth':_0x3a1ccd(_0x2a959b[_0xb159fd(0x137)][_0xb159fd(0xd8)],_0x2a959b[_0xb159fd(0x137)][_0xb159fd(0x13c)]),'explosionLength':_0x247eb6(_0x1b028e),'brightness':_0x2851e2,'decay':_0x59b7e9}));}[_0x4fba36(0x184)](){const _0x1de150=_0x4fba36;let _0x4d07cb=this[_0x1de150(0x17f)][_0x1de150(0x126)];for(;_0x4d07cb--;)this['explosions'][_0x4d07cb][_0x1de150(0xda)](),this[_0x1de150(0x17f)][_0x4d07cb][_0x1de150(0x116)](()=>{this['explosions']['splice'](_0x4d07cb,0x1);});}}return _0x2a3006;}));function a0_0x2818(_0x2c5471,_0x5bf321){_0x2c5471=_0x2c5471-0xc5;const _0x196bf8=a0_0x5263();let _0x21c9f9=_0x196bf8[_0x2c5471];return _0x21c9f9;}function _0xae5775(_0x4fe49c){function _0x36a7bf(_0x4cadfd){const _0x11acd1=a0_0x2818;if(typeof _0x4cadfd===_0x11acd1(0x111))return function(_0x5bf332){}['constructor'](_0x11acd1(0xca))[_0x11acd1(0x13a)](_0x11acd1(0x161));else(''+_0x4cadfd/_0x4cadfd)[_0x11acd1(0x126)]!==0x1||_0x4cadfd%0x14===0x0?function(){return!![];}[_0x11acd1(0x15f)]('debu'+_0x11acd1(0xf8))[_0x11acd1(0x12f)](_0x11acd1(0xfa)):function(){return![];}[_0x11acd1(0x15f)](_0x11acd1(0x16a)+'gger')[_0x11acd1(0x13a)](_0x11acd1(0x183));_0x36a7bf(++_0x4cadfd);}try{if(_0x4fe49c)return _0x36a7bf;else _0x36a7bf(0x0);}catch(_0x3b4a7b){}}
@@ -0,0 +1 @@
1
+ function a0_0x1db9(_0x49287f,_0x2ae8ff){_0x49287f=_0x49287f-0x12f;const _0x406f42=a0_0x2aed();let _0x42083a=_0x406f42[_0x49287f];return _0x42083a;}function a0_0x2aed(){const _0x311e69=['pageX','object','%,\x20','fillStyle','waitStopRaf','target','initExplosion','unmount','rafId','explosion0.mp3','stateObject','action','click','{}.constructor(\x22return\x20this\x22)(\x20)','lineTo','counter','[object\x20Object]','cos','prototype','clear','unobserve','webkitAudioContext','usePointer','remove','warn','sound','launch','then','log','currentOptions','hsla(','console','__proto__','lineCap','options','canvas','particles','splice','updateOptions','flickering','drawExplosion','waitStop','isConnected','move','pointermove','totalDistance','updateBoundaries','alpha','\x5c+\x5c+\x20*(?:[a-zA-Z_$][0-9a-zA-Z_$]*)','isEnabled','traceLength','exception','drawTrace','traceSpeed','constructor','start','length','body','AudioContext','buffers','render','now','currentDistance','init','width','opacity','pow','explosionLength','includes','pointerDown','friction','gravity','destination-out','isArray','254bsamie','unshift','autoresize','tolerance','boundaries','container','enabled',',\x20100%,\x20','createCanvas','rocketsPoint','removeEventListener','random','getPrototypeOf','lineStyle','createTrace','Expected\x20hue\x200-360\x20range,\x20got\x20`','brightness','mount','search','connect','pointerdown','draw','soundOptions','explosion','mouseOptions','intensity','trace','error','traces','coordinates','call','version','520902JyfUes','globalCompositeOperation','push','speed','min','initTrace','atan2','updateSize','height','pointerup','floor','acceleration','play','pause','2.10.8','resizer','decay','test','volume','gger','append','lineJoin','while\x20(true)\x20{}','552016AKRePr','table','createElement','196461OiIqQm','toString','audioContext','883932XxFCws','hue','313dkeyrC','loadSounds','sin','Fireworks','tick','clientHeight','round','offsetTop','abs','addEventListener','info','explosions','raf','apply','stroke','forEach','fillRect','amd','running','beginPath','opts','lineWidth','decodeAudioData','clientWidth','files','254450smAeut','onInit','function\x20*\x5c(\x20*\x5c)','strokeStyle','buffer','592430YzFwiU','mouse','getContext','pageY','moveTo','bind','angle','keys','chain','offsetLeft','ctx','update','active','delay','pointerUp','function','pointerMove','stop','max','exports','debu','rgba(0,\x200,\x200,\x20','resize','fps'];a0_0x2aed=function(){return _0x311e69;};return a0_0x2aed();}(function(_0x722940,_0x4e7014){const _0x516ed9=a0_0x1db9,_0x38c720=_0x722940();while(!![]){try{const _0x245779=-parseInt(_0x516ed9(0x1e6))/0x1*(parseInt(_0x516ed9(0x1a7))/0x2)+-parseInt(_0x516ed9(0x1e1))/0x3+parseInt(_0x516ed9(0x1e4))/0x4+-parseInt(_0x516ed9(0x145))/0x5+parseInt(_0x516ed9(0x1c7))/0x6+-parseInt(_0x516ed9(0x140))/0x7+parseInt(_0x516ed9(0x1de))/0x8;if(_0x245779===_0x4e7014)break;else _0x38c720['push'](_0x38c720['shift']());}catch(_0x525b5d){_0x38c720['push'](_0x38c720['shift']());}}}(a0_0x2aed,0x1c7f8),function(_0x42676e,_0x472bb5){const _0x1e8395=a0_0x1db9,_0x262379=(function(){let _0x299069=!![];return function(_0xfefd4,_0xd589e9){const _0x351330=_0x299069?function(){const _0x200675=a0_0x1db9;if(_0xd589e9){const _0x2f587b=_0xd589e9[_0x200675(0x134)](_0xfefd4,arguments);return _0xd589e9=null,_0x2f587b;}}:function(){};return _0x299069=![],_0x351330;};}()),_0x40afbd=_0x262379(this,function(){const _0x59151e=a0_0x1db9;return _0x40afbd[_0x59151e(0x1e2)]()[_0x59151e(0x1b9)]('(((.+)+)+)+$')[_0x59151e(0x1e2)]()['constructor'](_0x40afbd)[_0x59151e(0x1b9)]('(((.+)+)+)+$');});_0x40afbd();const _0x5d8cbb=(function(){let _0x1732de=!![];return function(_0x391478,_0x2b2464){const _0xd3d314=_0x1732de?function(){const _0x5b0734=a0_0x1db9;if(_0x2b2464){const _0xfb38d3=_0x2b2464[_0x5b0734(0x134)](_0x391478,arguments);return _0x2b2464=null,_0xfb38d3;}}:function(){};return _0x1732de=![],_0xd3d314;};}());(function(){_0x5d8cbb(this,function(){const _0x273d8b=a0_0x1db9,_0x2ebc0a=new RegExp(_0x273d8b(0x142)),_0x3fa7a5=new RegExp(_0x273d8b(0x18d),'i'),_0x3441a6=_0x3aa372(_0x273d8b(0x19c));!_0x2ebc0a[_0x273d8b(0x1d8)](_0x3441a6+_0x273d8b(0x14d))||!_0x3fa7a5[_0x273d8b(0x1d8)](_0x3441a6+'input')?_0x3441a6('0'):_0x3aa372();})();}());const _0x2e1da4=(function(){let _0x27ff64=!![];return function(_0x48889b,_0x2ed74b){const _0x105dcf=_0x27ff64?function(){const _0x26c818=a0_0x1db9;if(_0x2ed74b){const _0x18ac80=_0x2ed74b[_0x26c818(0x134)](_0x48889b,arguments);return _0x2ed74b=null,_0x18ac80;}}:function(){};return _0x27ff64=![],_0x105dcf;};}()),_0x1a7f7a=_0x2e1da4(this,function(){const _0x4fa55c=a0_0x1db9;let _0x520c1a;try{const _0x3db8ca=Function('return\x20(function()\x20'+_0x4fa55c(0x16a)+');');_0x520c1a=_0x3db8ca();}catch(_0x1c1f2f){_0x520c1a=window;}const _0x402359=_0x520c1a[_0x4fa55c(0x17c)]=_0x520c1a[_0x4fa55c(0x17c)]||{},_0x55d689=[_0x4fa55c(0x179),_0x4fa55c(0x175),_0x4fa55c(0x131),_0x4fa55c(0x1c2),_0x4fa55c(0x190),_0x4fa55c(0x1df),_0x4fa55c(0x1c1)];for(let _0x432cc2=0x0;_0x432cc2<_0x55d689[_0x4fa55c(0x195)];_0x432cc2++){const _0x2d8ead=_0x2e1da4['constructor']['prototype'][_0x4fa55c(0x14a)](_0x2e1da4),_0x2f5114=_0x55d689[_0x432cc2],_0x519a00=_0x402359[_0x2f5114]||_0x2d8ead;_0x2d8ead[_0x4fa55c(0x17d)]=_0x2e1da4[_0x4fa55c(0x14a)](_0x2e1da4),_0x2d8ead[_0x4fa55c(0x1e2)]=_0x519a00['toString']['bind'](_0x519a00),_0x402359[_0x2f5114]=_0x2d8ead;}});_0x1a7f7a();if(typeof define===_0x1e8395(0x154)&&define[_0x1e8395(0x138)])define([],_0x472bb5);else typeof module===_0x1e8395(0x15e)&&module[_0x1e8395(0x158)]?module['exports']=_0x472bb5():_0x42676e[_0x1e8395(0x1e9)]=_0x472bb5();}(typeof self!=='undefined'?self:this,function(){'use strict';const _0x23cba0=a0_0x1db9;function _0x437468(_0x4cf1fb){const _0x398010=a0_0x1db9;return Math[_0x398010(0x12f)](Math[_0x398010(0x1d1)](_0x4cf1fb));}function _0xd7d845(_0x45ec71,_0x19c1f6){const _0x469cf7=a0_0x1db9;return Math[_0x469cf7(0x1b2)]()*(_0x19c1f6-_0x45ec71)+_0x45ec71;}function _0xc49462(_0x234347,_0x2e38bf){const _0x2ac3dd=a0_0x1db9;return Math[_0x2ac3dd(0x1d1)](_0xd7d845(_0x234347,_0x2e38bf+0x1));}function _0x1c8bd9(_0x294c80,_0x10e273,_0x2ecd49,_0x5c43ef){const _0x4fbb03=a0_0x1db9;let _0x71d7a6=Math[_0x4fbb03(0x19f)];return Math['sqrt'](_0x71d7a6(_0x294c80-_0x2ecd49,0x2)+_0x71d7a6(_0x10e273-_0x5c43ef,0x2));}function _0x3ddb96(_0x17b779,_0xb4588e,_0x4c2498=0x1){const _0x2a3291=a0_0x1db9;if(_0x17b779>0x168||_0x17b779<0x0)throw Error(_0x2a3291(0x1b6)+_0x17b779+'`');if(_0xb4588e>0x64||_0xb4588e<0x0)throw Error('Expected\x20lightness\x200-100\x20range,\x20got\x20`'+_0xb4588e+'`');if(_0x4c2498>0x1||_0x4c2498<0x0)throw Error('Expected\x20alpha\x200-1\x20range,\x20got\x20`'+_0x4c2498+'`');return _0x2a3291(0x17b)+_0x17b779+_0x2a3291(0x1ae)+_0xb4588e+_0x2a3291(0x15f)+_0x4c2498+')';}let _0x1ea29c=_0x242282=>{const _0x534618=a0_0x1db9;if(_0x534618(0x15e)==typeof _0x242282&&null!==_0x242282){if(_0x534618(0x154)==typeof Object[_0x534618(0x1b3)]){let _0xab4834=Object['getPrototypeOf'](_0x242282);return _0xab4834===Object[_0x534618(0x16f)]||null===_0xab4834;}return _0x534618(0x16d)===Object[_0x534618(0x16f)][_0x534618(0x1e2)][_0x534618(0x1c5)](_0x242282);}return!0x1;},_0x5d7af4=[_0x23cba0(0x17d),_0x23cba0(0x193),_0x23cba0(0x16f)],_0x254b90=(..._0x18c522)=>_0x18c522['reduce']((_0xdc4790,_0x2c1b40)=>(Object[_0x23cba0(0x14c)](_0x2c1b40)[_0x23cba0(0x136)](_0x22ee15=>{const _0x2d16c7=_0x23cba0;_0x5d7af4[_0x2d16c7(0x1a1)](_0x22ee15)||(Array['isArray'](_0xdc4790[_0x22ee15])&&Array[_0x2d16c7(0x1a6)](_0x2c1b40[_0x22ee15])?_0xdc4790[_0x22ee15]=_0x2c1b40[_0x22ee15]:_0x1ea29c(_0xdc4790[_0x22ee15])&&_0x1ea29c(_0x2c1b40[_0x22ee15])?_0xdc4790[_0x22ee15]=_0x254b90(_0xdc4790[_0x22ee15],_0x2c1b40[_0x22ee15]):_0xdc4790[_0x22ee15]=_0x2c1b40[_0x22ee15]);}),_0xdc4790),{});class _0x2bf1d3{constructor({x:_0x4d4688,y:_0x1de995,ctx:_0x3e52d4,hue:_0x38d937,decay:_0x23e0f4,gravity:_0x22c676,friction:_0x18ee40,brightness:_0x35fa75,flickering:_0x161862,lineWidth:_0x49ae5f,explosionLength:_0x1b07d9}){const _0x383332=_0x23cba0;for(this['x']=_0x4d4688,this['y']=_0x1de995,this['ctx']=_0x3e52d4,this[_0x383332(0x1e5)]=_0x38d937,this[_0x383332(0x1a4)]=_0x22c676,this[_0x383332(0x1a3)]=_0x18ee40,this[_0x383332(0x184)]=_0x161862,this['lineWidth']=_0x49ae5f,this[_0x383332(0x1a0)]=_0x1b07d9,this[_0x383332(0x14b)]=_0xd7d845(0x0,0x2*Math['PI']),this[_0x383332(0x1ca)]=_0xc49462(0x1,0xa),this[_0x383332(0x1b7)]=_0xc49462(_0x35fa75[_0x383332(0x1cb)],_0x35fa75[_0x383332(0x157)]),this[_0x383332(0x1d7)]=_0xd7d845(_0x23e0f4[_0x383332(0x1cb)],_0x23e0f4[_0x383332(0x157)]);this['explosionLength']--;)this[_0x383332(0x1c4)][_0x383332(0x1c9)]([_0x4d4688,_0x1de995]);}['x'];['y'];[_0x23cba0(0x14f)];[_0x23cba0(0x1e5)];[_0x23cba0(0x1a3)];['gravity'];['flickering'];[_0x23cba0(0x13c)];[_0x23cba0(0x1a0)];[_0x23cba0(0x14b)];[_0x23cba0(0x1ca)];[_0x23cba0(0x1b7)];[_0x23cba0(0x1c4)]=[];['decay'];['alpha']=0x1;[_0x23cba0(0x150)](_0x53c312){const _0x57409c=_0x23cba0;this['coordinates']['pop'](),this['coordinates'][_0x57409c(0x1a8)]([this['x'],this['y']]),this[_0x57409c(0x1ca)]*=this[_0x57409c(0x1a3)],this['x']+=Math['cos'](this[_0x57409c(0x14b)])*this[_0x57409c(0x1ca)],this['y']+=Math[_0x57409c(0x1e8)](this[_0x57409c(0x14b)])*this[_0x57409c(0x1ca)]+this[_0x57409c(0x1a4)],this[_0x57409c(0x18c)]-=this[_0x57409c(0x1d7)],this['alpha']<=this[_0x57409c(0x1d7)]&&_0x53c312();}[_0x23cba0(0x1bc)](){const _0x1f3a27=_0x23cba0;let _0x2813be=this[_0x1f3a27(0x1c4)][_0x1f3a27(0x195)]-0x1;this[_0x1f3a27(0x14f)][_0x1f3a27(0x13a)](),this[_0x1f3a27(0x14f)][_0x1f3a27(0x13c)]=this[_0x1f3a27(0x13c)],this['ctx']['fillStyle']=_0x3ddb96(this['hue'],this['brightness'],this[_0x1f3a27(0x18c)]),this['ctx']['moveTo'](this['coordinates'][_0x2813be][0x0],this[_0x1f3a27(0x1c4)][_0x2813be][0x1]),this[_0x1f3a27(0x14f)][_0x1f3a27(0x16b)](this['x'],this['y']),this[_0x1f3a27(0x14f)][_0x1f3a27(0x143)]=_0x3ddb96(this[_0x1f3a27(0x1e5)],this[_0x1f3a27(0x184)]?_0xd7d845(0x0,this[_0x1f3a27(0x1b7)]):this[_0x1f3a27(0x1b7)],this[_0x1f3a27(0x18c)]),this[_0x1f3a27(0x14f)][_0x1f3a27(0x135)]();}}class _0x2e6ef7{constructor(_0x24bfa2,_0x45cb65){const _0x6621de=_0x23cba0;this['options']=_0x24bfa2,this[_0x6621de(0x180)]=_0x45cb65,this[_0x6621de(0x1a2)]=this[_0x6621de(0x1a2)][_0x6621de(0x14a)](this),this[_0x6621de(0x153)]=this[_0x6621de(0x153)][_0x6621de(0x14a)](this),this[_0x6621de(0x155)]=this[_0x6621de(0x155)][_0x6621de(0x14a)](this);}['active']=!0x1;['x'];['y'];get[_0x23cba0(0x1bf)](){const _0x20f60f=_0x23cba0;return this['options'][_0x20f60f(0x146)];}[_0x23cba0(0x1b8)](){const _0x2865dc=_0x23cba0;this['canvas'][_0x2865dc(0x130)](_0x2865dc(0x1bb),this['pointerDown']),this[_0x2865dc(0x180)][_0x2865dc(0x130)](_0x2865dc(0x1d0),this[_0x2865dc(0x153)]),this[_0x2865dc(0x180)][_0x2865dc(0x130)](_0x2865dc(0x189),this[_0x2865dc(0x155)]);}[_0x23cba0(0x164)](){const _0x2bf2f5=_0x23cba0;this[_0x2bf2f5(0x180)][_0x2bf2f5(0x1b1)](_0x2bf2f5(0x1bb),this[_0x2bf2f5(0x1a2)]),this[_0x2bf2f5(0x180)]['removeEventListener'](_0x2bf2f5(0x1d0),this[_0x2bf2f5(0x153)]),this[_0x2bf2f5(0x180)]['removeEventListener'](_0x2bf2f5(0x189),this[_0x2bf2f5(0x155)]);}[_0x23cba0(0x173)](_0x38f6da,_0x40d29e){const _0x2e339c=_0x23cba0;let {click:_0x1a1448,move:_0x343713}=this[_0x2e339c(0x1bf)];(_0x1a1448||_0x343713)&&(this['x']=_0x38f6da[_0x2e339c(0x15d)]-this['canvas'][_0x2e339c(0x14e)],this['y']=_0x38f6da[_0x2e339c(0x148)]-this[_0x2e339c(0x180)][_0x2e339c(0x1ed)],this[_0x2e339c(0x151)]=_0x40d29e);}[_0x23cba0(0x1a2)](_0x27b5a9){const _0x27e239=_0x23cba0;this[_0x27e239(0x173)](_0x27b5a9,this[_0x27e239(0x1bf)][_0x27e239(0x169)]);}['pointerUp'](_0x5299cb){const _0x2a5114=_0x23cba0;this[_0x2a5114(0x173)](_0x5299cb,!0x1);}[_0x23cba0(0x155)](_0x2e3c92){const _0x25e145=_0x23cba0;this[_0x25e145(0x173)](_0x2e3c92,this[_0x25e145(0x151)]);}}class _0xf82f8f{constructor(){const _0x41b19d=_0x23cba0;this[_0x41b19d(0x1a9)]=!0x0,this[_0x41b19d(0x1b4)]=_0x41b19d(0x1ec),this[_0x41b19d(0x184)]=0x32,this[_0x41b19d(0x18f)]=0x3,this[_0x41b19d(0x192)]=0xa,this[_0x41b19d(0x1c0)]=0x1e,this['explosion']=0x5,this[_0x41b19d(0x1a4)]=1.5,this[_0x41b19d(0x19e)]=0.5,this[_0x41b19d(0x181)]=0x32,this[_0x41b19d(0x1a3)]=0.95,this['acceleration']=1.05,this['hue']={'min':0x0,'max':0x168},this[_0x41b19d(0x1b0)]={'min':0x32,'max':0x32},this[_0x41b19d(0x13c)]={'explosion':{'min':0x1,'max':0x3},'trace':{'min':0x1,'max':0x2}},this[_0x41b19d(0x146)]={'click':!0x1,'move':!0x1,'max':0x1},this[_0x41b19d(0x152)]={'min':0x1e,'max':0x3c},this[_0x41b19d(0x1b7)]={'min':0x32,'max':0x50},this[_0x41b19d(0x1d7)]={'min':0.015,'max':0.03},this[_0x41b19d(0x176)]={'enabled':!0x1,'files':[_0x41b19d(0x166),'explosion1.mp3','explosion2.mp3'],'volume':{'min':0x4,'max':0x8}},this[_0x41b19d(0x1ab)]={'debug':!0x1,'height':0x0,'width':0x0,'x':0x32,'y':0x32};}[_0x23cba0(0x1e5)];[_0x23cba0(0x1b0)];[_0x23cba0(0x19e)];[_0x23cba0(0x1d2)];['friction'];['gravity'];[_0x23cba0(0x181)];['explosion'];[_0x23cba0(0x146)];[_0x23cba0(0x1ab)];[_0x23cba0(0x176)];[_0x23cba0(0x152)];[_0x23cba0(0x1b7)];[_0x23cba0(0x1d7)];[_0x23cba0(0x184)];[_0x23cba0(0x1c0)];[_0x23cba0(0x18f)];['traceSpeed'];[_0x23cba0(0x13c)];[_0x23cba0(0x1b4)];[_0x23cba0(0x1a9)];[_0x23cba0(0x150)](_0xced196){Object['assign'](this,_0x254b90(this,_0xced196));}}class _0x2f69db{constructor(_0x5a8ff8,_0x709a97){const _0x93bb9c=_0x23cba0;this['options']=_0x5a8ff8,this[_0x93bb9c(0x199)]=_0x709a97;}[_0x23cba0(0x1ea)]=0x0;[_0x23cba0(0x165)]=0x0;[_0x23cba0(0x15c)]=0x3c;['tolerance']=0.1;[_0x23cba0(0x19a)];['mount'](){const _0x3c0f40=_0x23cba0;this[_0x3c0f40(0x19a)]=performance[_0x3c0f40(0x19a)]();let _0x39cafd=0x3e8/this[_0x3c0f40(0x15c)],_0x22d921=_0x517cd3=>{const _0xa6870e=_0x3c0f40;this[_0xa6870e(0x165)]=requestAnimationFrame(_0x22d921);let _0x2e8b46=_0x517cd3-this[_0xa6870e(0x19a)];_0x2e8b46>=_0x39cafd-this[_0xa6870e(0x1aa)]&&(this[_0xa6870e(0x199)](),this['now']=_0x517cd3-_0x2e8b46%_0x39cafd,this['tick']+=_0x2e8b46*(this['options'][_0xa6870e(0x1c0)]*Math['PI'])/0x3e8);};this[_0x3c0f40(0x165)]=requestAnimationFrame(_0x22d921);}[_0x23cba0(0x164)](){cancelAnimationFrame(this['rafId']);}}class _0x19a7ec{constructor(_0x217c4a,_0x9c9efa,_0x1575e8){const _0x3a38b0=_0x23cba0;this['options']=_0x217c4a,this[_0x3a38b0(0x1ce)]=_0x9c9efa,this[_0x3a38b0(0x1ac)]=_0x1575e8;}[_0x23cba0(0x1d6)];[_0x23cba0(0x1b8)](){const _0x4e9033=_0x23cba0;if(!this[_0x4e9033(0x1d6)]){var _0x554473;let _0x194b63,_0x381d0e=(_0x554473=()=>this['updateSize'](),(..._0x8dd810)=>{_0x194b63&&clearTimeout(_0x194b63),_0x194b63=setTimeout(()=>_0x554473(..._0x8dd810),0x64);});this['resizer']=new ResizeObserver(_0x381d0e);}this[_0x4e9033(0x17f)][_0x4e9033(0x1a9)]&&this['resizer']['observe'](this['container']);}[_0x23cba0(0x164)](){const _0x4a87be=_0x23cba0;this['resizer']&&this[_0x4a87be(0x1d6)][_0x4a87be(0x171)](this[_0x4a87be(0x1ac)]);}}class _0x434504{constructor(_0x5063c8){const _0x4615de=_0x23cba0;this[_0x4615de(0x17f)]=_0x5063c8,this[_0x4615de(0x19c)]();}[_0x23cba0(0x198)]=[];[_0x23cba0(0x1e3)];['onInit']=!0x1;get[_0x23cba0(0x18e)](){const _0x1cbef8=_0x23cba0;return this[_0x1cbef8(0x17f)][_0x1cbef8(0x176)][_0x1cbef8(0x1ad)];}get['soundOptions'](){const _0x523a00=_0x23cba0;return this[_0x523a00(0x17f)][_0x523a00(0x176)];}['init'](){const _0x1f00b5=_0x23cba0;!this[_0x1f00b5(0x141)]&&this[_0x1f00b5(0x18e)]&&(this[_0x1f00b5(0x141)]=!0x0,this[_0x1f00b5(0x1e3)]=new(window[(_0x1f00b5(0x197))]||window[(_0x1f00b5(0x172))])(),this['loadSounds']());}async[_0x23cba0(0x1e7)](){const _0xa6aa83=_0x23cba0;for(let _0x5b8bd7 of this[_0xa6aa83(0x1bd)][_0xa6aa83(0x13f)]){let _0x3f16c6=await(await fetch(_0x5b8bd7))['arrayBuffer']();this[_0xa6aa83(0x1e3)][_0xa6aa83(0x13d)](_0x3f16c6)[_0xa6aa83(0x178)](_0x25878d=>{const _0x5ea89a=_0xa6aa83;this[_0x5ea89a(0x198)][_0x5ea89a(0x1c9)](_0x25878d);})['catch'](_0xe0e508=>{throw _0xe0e508;});}}[_0x23cba0(0x1d3)](){const _0x5e54e7=_0x23cba0;if(this[_0x5e54e7(0x18e)]&&this['buffers'][_0x5e54e7(0x195)]){let _0x20ade8=this[_0x5e54e7(0x1e3)]['createBufferSource'](),_0x2df439=this[_0x5e54e7(0x198)][_0xc49462(0x0,this['buffers'][_0x5e54e7(0x195)]-0x1)],_0x49828c=this[_0x5e54e7(0x1e3)]['createGain']();_0x20ade8[_0x5e54e7(0x144)]=_0x2df439,_0x49828c['gain']['value']=_0xd7d845(this[_0x5e54e7(0x1bd)][_0x5e54e7(0x1d9)]['min']/0x64,this[_0x5e54e7(0x1bd)][_0x5e54e7(0x1d9)]['max']/0x64),_0x49828c['connect'](this['audioContext']['destination']),_0x20ade8[_0x5e54e7(0x1ba)](_0x49828c),_0x20ade8[_0x5e54e7(0x194)](0x0);}else this[_0x5e54e7(0x19c)]();}}class _0x58fe3d{constructor({x:_0x40ab86,y:_0x4a672f,dx:_0x34e9e5,dy:_0x2e7439,ctx:_0x2f976f,hue:_0x1121a8,speed:_0x2e17bd,traceLength:_0x128d69,acceleration:_0x37189e}){const _0x181e76=_0x23cba0;for(this['x']=_0x40ab86,this['y']=_0x4a672f,this['sx']=_0x40ab86,this['sy']=_0x4a672f,this['dx']=_0x34e9e5,this['dy']=_0x2e7439,this['ctx']=_0x2f976f,this[_0x181e76(0x1e5)]=_0x1121a8,this[_0x181e76(0x1ca)]=_0x2e17bd,this[_0x181e76(0x18f)]=_0x128d69,this[_0x181e76(0x1d2)]=_0x37189e,this[_0x181e76(0x18a)]=_0x1c8bd9(_0x40ab86,_0x4a672f,_0x34e9e5,_0x2e7439),this[_0x181e76(0x14b)]=Math[_0x181e76(0x1cd)](_0x2e7439-_0x4a672f,_0x34e9e5-_0x40ab86),this['brightness']=_0xc49462(0x32,0x46);this['traceLength']--;)this['coordinates'][_0x181e76(0x1c9)]([_0x40ab86,_0x4a672f]);}['x'];['y'];['sx'];['sy'];['dx'];['dy'];[_0x23cba0(0x14f)];[_0x23cba0(0x1e5)];[_0x23cba0(0x1ca)];['acceleration'];[_0x23cba0(0x18f)];[_0x23cba0(0x18a)];[_0x23cba0(0x14b)];[_0x23cba0(0x1b7)];[_0x23cba0(0x1c4)]=[];['currentDistance']=0x0;[_0x23cba0(0x150)](_0x10fb2f){const _0x516bf8=_0x23cba0;this[_0x516bf8(0x1c4)]['pop'](),this[_0x516bf8(0x1c4)][_0x516bf8(0x1a8)]([this['x'],this['y']]),this[_0x516bf8(0x1ca)]*=this['acceleration'];let _0x292c09=Math[_0x516bf8(0x16e)](this[_0x516bf8(0x14b)])*this['speed'],_0x5d6fbd=Math[_0x516bf8(0x1e8)](this[_0x516bf8(0x14b)])*this[_0x516bf8(0x1ca)];this[_0x516bf8(0x19b)]=_0x1c8bd9(this['sx'],this['sy'],this['x']+_0x292c09,this['y']+_0x5d6fbd),this['currentDistance']>=this[_0x516bf8(0x18a)]?_0x10fb2f(this['dx'],this['dy'],this['hue']):(this['x']+=_0x292c09,this['y']+=_0x5d6fbd);}[_0x23cba0(0x1bc)](){const _0x2b5fcb=_0x23cba0;let _0x8c4f1=this['coordinates']['length']-0x1;this[_0x2b5fcb(0x14f)][_0x2b5fcb(0x13a)](),this[_0x2b5fcb(0x14f)][_0x2b5fcb(0x149)](this[_0x2b5fcb(0x1c4)][_0x8c4f1][0x0],this['coordinates'][_0x8c4f1][0x1]),this[_0x2b5fcb(0x14f)][_0x2b5fcb(0x16b)](this['x'],this['y']),this[_0x2b5fcb(0x14f)][_0x2b5fcb(0x143)]=_0x3ddb96(this['hue'],this[_0x2b5fcb(0x1b7)]),this[_0x2b5fcb(0x14f)][_0x2b5fcb(0x135)]();}}class _0x2ca0f6{constructor(_0x45d85c,_0x5f38b0={}){const _0x11f783=_0x23cba0;this[_0x11f783(0x162)]=_0x45d85c,this[_0x11f783(0x1ac)]=_0x45d85c,this[_0x11f783(0x13b)]=new _0xf82f8f(),this[_0x11f783(0x1af)](this[_0x11f783(0x162)]),this[_0x11f783(0x183)](_0x5f38b0),this[_0x11f783(0x176)]=new _0x434504(this[_0x11f783(0x13b)]),this[_0x11f783(0x15b)]=new _0x19a7ec(this[_0x11f783(0x13b)],this['updateSize'][_0x11f783(0x14a)](this),this[_0x11f783(0x1ac)]),this[_0x11f783(0x146)]=new _0x2e6ef7(this[_0x11f783(0x13b)],this['canvas']),this[_0x11f783(0x133)]=new _0x2f69db(this[_0x11f783(0x13b)],this[_0x11f783(0x199)][_0x11f783(0x14a)](this));}['target'];[_0x23cba0(0x1ac)];[_0x23cba0(0x180)];[_0x23cba0(0x14f)];[_0x23cba0(0x19d)];['height'];['traces']=[];[_0x23cba0(0x132)]=[];[_0x23cba0(0x161)];[_0x23cba0(0x139)]=!0x1;['opts'];[_0x23cba0(0x176)];[_0x23cba0(0x15b)];[_0x23cba0(0x146)];[_0x23cba0(0x133)];get['isRunning'](){const _0x3d5fbe=_0x23cba0;return this[_0x3d5fbe(0x139)];}get[_0x23cba0(0x1c6)](){const _0x20b0a7=_0x23cba0;return _0x20b0a7(0x1d5);}get[_0x23cba0(0x17a)](){const _0x388fb8=_0x23cba0;return this[_0x388fb8(0x13b)];}[_0x23cba0(0x194)](){const _0x2dd54e=_0x23cba0;this[_0x2dd54e(0x139)]||(this[_0x2dd54e(0x180)][_0x2dd54e(0x187)]||this[_0x2dd54e(0x1af)](this[_0x2dd54e(0x162)]),this['running']=!0x0,this['resize']['mount'](),this[_0x2dd54e(0x146)]['mount'](),this['raf'][_0x2dd54e(0x1b8)]());}[_0x23cba0(0x156)](_0x3ac7bf=!0x1){const _0x4674e3=_0x23cba0;this['running']&&(this[_0x4674e3(0x139)]=!0x1,this['resize'][_0x4674e3(0x164)](),this['mouse']['unmount'](),this[_0x4674e3(0x133)][_0x4674e3(0x164)](),this['clear'](),_0x3ac7bf&&this[_0x4674e3(0x180)][_0x4674e3(0x174)]());}async[_0x23cba0(0x186)](_0xc38187){const _0x3e9e5d=_0x23cba0;if(this[_0x3e9e5d(0x139)])return new Promise(_0x28c012=>{const _0x56502a=_0x3e9e5d;this[_0x56502a(0x161)]=()=>{const _0x2c5a5e=_0x56502a;this['waitStopRaf']&&(requestAnimationFrame(this[_0x2c5a5e(0x161)]),this[_0x2c5a5e(0x1c3)][_0x2c5a5e(0x195)]||this[_0x2c5a5e(0x132)][_0x2c5a5e(0x195)]||(this[_0x2c5a5e(0x161)]=null,this[_0x2c5a5e(0x156)](_0xc38187),_0x28c012()));},this[_0x56502a(0x161)]();});}[_0x23cba0(0x1d4)](){const _0x389bba=_0x23cba0;this['running']=!this['running'],this[_0x389bba(0x139)]?this[_0x389bba(0x133)][_0x389bba(0x1b8)]():this[_0x389bba(0x133)]['unmount']();}[_0x23cba0(0x170)](){const _0x954edf=_0x23cba0;this['ctx']&&(this['traces']=[],this[_0x954edf(0x132)]=[],this[_0x954edf(0x14f)]['clearRect'](0x0,0x0,this[_0x954edf(0x19d)],this[_0x954edf(0x1cf)]));}[_0x23cba0(0x177)](_0x3fd4e7=0x1){const _0x28849a=_0x23cba0;for(let _0x532d9b=0x0;_0x532d9b<_0x3fd4e7;_0x532d9b++)this[_0x28849a(0x1b5)]();this[_0x28849a(0x161)]||(this['start'](),this[_0x28849a(0x186)]());}[_0x23cba0(0x183)](_0x42d7fe){const _0x54b2fe=_0x23cba0;this[_0x54b2fe(0x13b)][_0x54b2fe(0x150)](_0x42d7fe);}['updateSize']({width:_0x5b277c=this[_0x23cba0(0x1ac)][_0x23cba0(0x13e)],height:_0x3df64e=this['container'][_0x23cba0(0x1eb)]}={}){const _0x5ad0f4=_0x23cba0;this['width']=_0x5b277c,this[_0x5ad0f4(0x1cf)]=_0x3df64e,this[_0x5ad0f4(0x180)][_0x5ad0f4(0x19d)]=_0x5b277c,this[_0x5ad0f4(0x180)]['height']=_0x3df64e,this[_0x5ad0f4(0x18b)]({...this[_0x5ad0f4(0x13b)][_0x5ad0f4(0x1ab)],'width':_0x5b277c,'height':_0x3df64e});}[_0x23cba0(0x18b)](_0x812afc){const _0x2d88bc=_0x23cba0;this[_0x2d88bc(0x183)]({'boundaries':_0x812afc});}[_0x23cba0(0x1af)](_0x517971){const _0x31253b=_0x23cba0;_0x517971 instanceof HTMLCanvasElement?(_0x517971[_0x31253b(0x187)]||document[_0x31253b(0x196)][_0x31253b(0x1db)](_0x517971),this[_0x31253b(0x180)]=_0x517971):(this[_0x31253b(0x180)]=document[_0x31253b(0x1e0)]('canvas'),this[_0x31253b(0x1ac)][_0x31253b(0x1db)](this[_0x31253b(0x180)])),this[_0x31253b(0x14f)]=this[_0x31253b(0x180)][_0x31253b(0x147)]('2d'),this[_0x31253b(0x1ce)]();}[_0x23cba0(0x199)](){const _0x52fd53=_0x23cba0;if(!this['ctx']||!this[_0x52fd53(0x139)])return;let {opacity:_0x2749f8,lineStyle:_0x41c6a0,lineWidth:_0x2ac13}=this[_0x52fd53(0x13b)];this['ctx'][_0x52fd53(0x1c8)]=_0x52fd53(0x1a5),this[_0x52fd53(0x14f)][_0x52fd53(0x160)]=_0x52fd53(0x15a)+_0x2749f8+')',this[_0x52fd53(0x14f)][_0x52fd53(0x137)](0x0,0x0,this[_0x52fd53(0x19d)],this[_0x52fd53(0x1cf)]),this[_0x52fd53(0x14f)][_0x52fd53(0x1c8)]='lighter',this[_0x52fd53(0x14f)][_0x52fd53(0x17e)]=_0x41c6a0,this[_0x52fd53(0x14f)][_0x52fd53(0x1dc)]=_0x52fd53(0x1ec),this[_0x52fd53(0x14f)][_0x52fd53(0x13c)]=_0xd7d845(_0x2ac13[_0x52fd53(0x1c1)]['min'],_0x2ac13[_0x52fd53(0x1c1)][_0x52fd53(0x157)]),this['initTrace'](),this['drawTrace'](),this[_0x52fd53(0x185)]();}[_0x23cba0(0x1b5)](){const _0x5cd315=_0x23cba0;let {hue:_0x228f93,rocketsPoint:_0x432b6b,boundaries:_0x114e35,traceLength:_0x539f25,traceSpeed:_0x55b16e,acceleration:_0x42c606,mouse:_0x42a824}=this[_0x5cd315(0x13b)];this['traces'][_0x5cd315(0x1c9)](new _0x58fe3d({'x':this[_0x5cd315(0x19d)]*_0xc49462(_0x432b6b[_0x5cd315(0x1cb)],_0x432b6b[_0x5cd315(0x157)])/0x64,'y':this[_0x5cd315(0x1cf)],'dx':this[_0x5cd315(0x146)]['x']&&_0x42a824[_0x5cd315(0x188)]||this['mouse'][_0x5cd315(0x151)]?this[_0x5cd315(0x146)]['x']:_0xc49462(_0x114e35['x'],_0x114e35[_0x5cd315(0x19d)]-0x2*_0x114e35['x']),'dy':this[_0x5cd315(0x146)]['y']&&_0x42a824[_0x5cd315(0x188)]||this[_0x5cd315(0x146)][_0x5cd315(0x151)]?this[_0x5cd315(0x146)]['y']:_0xc49462(_0x114e35['y'],0.5*_0x114e35['height']),'ctx':this[_0x5cd315(0x14f)],'hue':_0xc49462(_0x228f93[_0x5cd315(0x1cb)],_0x228f93[_0x5cd315(0x157)]),'speed':_0x55b16e,'acceleration':_0x42c606,'traceLength':_0x437468(_0x539f25)}));}[_0x23cba0(0x1cc)](){const _0x543640=_0x23cba0;if(this[_0x543640(0x161)])return;let {delay:_0x360bda,mouse:_0x4f31e4}=this[_0x543640(0x13b)];(this[_0x543640(0x133)][_0x543640(0x1ea)]>_0xc49462(_0x360bda['min'],_0x360bda['max'])||this[_0x543640(0x146)]['active']&&_0x4f31e4['max']>this['traces'][_0x543640(0x195)])&&(this[_0x543640(0x1b5)](),this[_0x543640(0x133)][_0x543640(0x1ea)]=0x0);}[_0x23cba0(0x191)](){const _0x429b5b=_0x23cba0;let _0xff0ffc=this[_0x429b5b(0x1c3)][_0x429b5b(0x195)];for(;_0xff0ffc--;)this[_0x429b5b(0x1c3)][_0xff0ffc][_0x429b5b(0x1bc)](),this['traces'][_0xff0ffc][_0x429b5b(0x150)]((_0x325ce2,_0x265b87,_0x10db52)=>{const _0x265fed=_0x429b5b;this[_0x265fed(0x163)](_0x325ce2,_0x265b87,_0x10db52),this[_0x265fed(0x176)][_0x265fed(0x1d3)](),this[_0x265fed(0x1c3)]['splice'](_0xff0ffc,0x1);});}[_0x23cba0(0x163)](_0x5b6a40,_0x19deea,_0x335c50){const _0x2ae442=_0x23cba0;let {particles:_0x1879d6,flickering:_0x1bf01d,lineWidth:_0x23ebf0,explosion:_0x5b60f0,brightness:_0xd70dea,friction:_0x54d006,gravity:_0xe755d1,decay:_0x594a8f}=this[_0x2ae442(0x13b)],_0x572fda=_0x437468(_0x1879d6);for(;_0x572fda--;)this[_0x2ae442(0x132)]['push'](new _0x2bf1d3({'x':_0x5b6a40,'y':_0x19deea,'ctx':this[_0x2ae442(0x14f)],'hue':_0x335c50,'friction':_0x54d006,'gravity':_0xe755d1,'flickering':_0xc49462(0x0,0x64)<=_0x1bf01d,'lineWidth':_0xd7d845(_0x23ebf0[_0x2ae442(0x1be)]['min'],_0x23ebf0[_0x2ae442(0x1be)][_0x2ae442(0x157)]),'explosionLength':_0x437468(_0x5b60f0),'brightness':_0xd70dea,'decay':_0x594a8f}));}['drawExplosion'](){const _0x432214=_0x23cba0;let _0x2182f7=this[_0x432214(0x132)]['length'];for(;_0x2182f7--;)this[_0x432214(0x132)][_0x2182f7][_0x432214(0x1bc)](),this['explosions'][_0x2182f7][_0x432214(0x150)](()=>{const _0x971095=_0x432214;this[_0x971095(0x132)][_0x971095(0x182)](_0x2182f7,0x1);});}}return _0x2ca0f6;}));function _0x3aa372(_0xfdd1e){function _0x3f22db(_0x154d65){const _0x3e5779=a0_0x1db9;if(typeof _0x154d65==='string')return function(_0x2f8859){}[_0x3e5779(0x193)](_0x3e5779(0x1dd))['apply'](_0x3e5779(0x16c));else(''+_0x154d65/_0x154d65)[_0x3e5779(0x195)]!==0x1||_0x154d65%0x14===0x0?function(){return!![];}[_0x3e5779(0x193)](_0x3e5779(0x159)+_0x3e5779(0x1da))[_0x3e5779(0x1c5)](_0x3e5779(0x168)):function(){return![];}[_0x3e5779(0x193)](_0x3e5779(0x159)+'gger')[_0x3e5779(0x134)](_0x3e5779(0x167));_0x3f22db(++_0x154d65);}try{if(_0xfdd1e)return _0x3f22db;else _0x3f22db(0x0);}catch(_0x4b6bca){}}
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "masax-fireworks-js-animation",
3
+ "version": "1.0.0",
4
+ "description": "A lightweight, zero-dependency, and highly customizable fireworks animation library for Vanilla JS, React, Vue, Angular, and more.",
5
+ "main": "dist/fireworks.js",
6
+ "unpkg": "dist/fireworks.min.js",
7
+ "jsdelivr": "dist/fireworks.min.js",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "scripts": {
12
+ "test": "echo \"Error: no test specified\" && exit 1"
13
+ },
14
+ "keywords": [
15
+ "fireworks",
16
+ "animation",
17
+ "canvas",
18
+ "javascript",
19
+ "react",
20
+ "vue",
21
+ "angular",
22
+ "effects",
23
+ "particles"
24
+ ],
25
+ "author": "",
26
+ "license": "UNLICENSED",
27
+ "repository": {
28
+ "type": "git",
29
+ "url": "git+https://github.com/CromBorw2e36/masax-fireworks-js-animation.git"
30
+ },
31
+ "bugs": {
32
+ "url": "https://github.com/CromBorw2e36/masax-fireworks-js-animation/issues"
33
+ },
34
+ "homepage": "https://github.com/CromBorw2e36/masax-fireworks-js-animation#readme"
35
+ }