react-native-games 0.8.0 → 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 +474 -176
- package/lib/module/games/balloon-blaster/BalloonBlaster.js +9 -14
- package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +1 -1
- package/lib/module/games/balloon-blaster/components/GameArea.js +1 -1
- package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/GameBackground.js +24 -17
- package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js +47 -47
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/candy-crush/CandyCrush.js +16 -6
- package/lib/module/games/candy-crush/CandyCrush.js.map +1 -1
- package/lib/module/games/candy-crush/CandyCrushStore.js +4 -6
- package/lib/module/games/candy-crush/CandyCrushStore.js.map +1 -1
- package/lib/module/games/candy-crush/components/ScoreBoard.js +32 -65
- package/lib/module/games/candy-crush/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/{color-sort/ColorSort.js → colors-sort/ColorsSort.js} +37 -24
- package/lib/module/games/colors-sort/ColorsSort.js.map +1 -0
- package/lib/module/games/{color-sort/ColorSortConstants.js → colors-sort/ColorsSortConstants.js} +11 -7
- package/lib/module/games/colors-sort/ColorsSortConstants.js.map +1 -0
- package/lib/module/games/{color-sort/ColorSortService.js → colors-sort/ColorsSortService.js} +1 -1
- package/lib/module/games/colors-sort/ColorsSortService.js.map +1 -0
- package/lib/module/games/{color-sort/ColorSortStore.js → colors-sort/ColorsSortStore.js} +20 -21
- package/lib/module/games/colors-sort/ColorsSortStore.js.map +1 -0
- package/lib/module/games/{color-sort → colors-sort}/components/ColorContainer.js +4 -4
- package/lib/module/games/colors-sort/components/ColorContainer.js.map +1 -0
- package/lib/module/games/{color-sort → colors-sort}/components/GameBackground.js +1 -1
- package/lib/module/games/colors-sort/components/GameBackground.js.map +1 -0
- package/lib/module/games/{color-sort → colors-sort}/components/ScoreBoard.js +14 -22
- package/lib/module/games/colors-sort/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/colors-sort/components/index.js.map +1 -0
- package/lib/module/games/dino-jump/DinoJump.js +23 -23
- package/lib/module/games/dino-jump/DinoJump.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpConstants.js +16 -6
- package/lib/module/games/dino-jump/DinoJumpConstants.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpService.js +14 -12
- package/lib/module/games/dino-jump/DinoJumpService.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpStore.js +14 -20
- package/lib/module/games/dino-jump/DinoJumpStore.js.map +1 -1
- package/lib/module/games/dino-jump/components/DinoSprite.js +15 -6
- package/lib/module/games/dino-jump/components/DinoSprite.js.map +1 -1
- package/lib/module/games/dino-jump/components/GameBackground.js +65 -42
- package/lib/module/games/dino-jump/components/GameBackground.js.map +1 -1
- package/lib/module/games/dino-jump/components/ScoreBoard.js +48 -50
- package/lib/module/games/dino-jump/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/flappy-bird/FlappyBird.js +9 -14
- package/lib/module/games/flappy-bird/FlappyBird.js.map +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdStore.js +53 -29
- package/lib/module/games/flappy-bird/FlappyBirdStore.js.map +1 -1
- package/lib/module/games/flappy-bird/components/GameArea.js +3 -2
- package/lib/module/games/flappy-bird/components/GameArea.js.map +1 -1
- package/lib/module/games/flappy-bird/components/GameBackground.js +10 -43
- package/lib/module/games/flappy-bird/components/GameBackground.js.map +1 -1
- package/lib/module/games/flappy-bird/components/Pipes.js +65 -68
- package/lib/module/games/flappy-bird/components/Pipes.js.map +1 -1
- package/lib/module/games/flappy-bird/components/ScoreBoard.js +23 -22
- package/lib/module/games/flappy-bird/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/fruit-merger/FruitMerger.js +13 -5
- package/lib/module/games/fruit-merger/FruitMerger.js.map +1 -1
- package/lib/module/games/fruit-merger/FruitMergerConstants.js +4 -4
- package/lib/module/games/fruit-merger/FruitMergerStore.js +5 -8
- package/lib/module/games/fruit-merger/FruitMergerStore.js.map +1 -1
- package/lib/module/games/fruit-merger/components/GameArea.js +5 -25
- package/lib/module/games/fruit-merger/components/GameArea.js.map +1 -1
- package/lib/module/games/fruit-merger/components/GameBackground.js +40 -19
- package/lib/module/games/fruit-merger/components/GameBackground.js.map +1 -1
- package/lib/module/games/fruit-merger/components/ScoreBoard.js +9 -17
- package/lib/module/games/fruit-merger/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinja.js +9 -14
- package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaStore.js +1 -1
- package/lib/module/games/fruit-ninja/components/GameArea.js +1 -1
- package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -1
- package/lib/module/games/fruit-ninja/components/GameBackground.js +70 -45
- package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -1
- package/lib/module/games/fruit-ninja/components/ScoreBoard.js +47 -46
- package/lib/module/games/fruit-ninja/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/game-2048/Game2048.js +81 -52
- package/lib/module/games/game-2048/Game2048.js.map +1 -1
- package/lib/module/games/game-2048/Game2048Constants.js +18 -18
- package/lib/module/games/game-2048/Game2048Constants.js.map +1 -1
- package/lib/module/games/game-2048/Game2048Store.js +10 -12
- package/lib/module/games/game-2048/Game2048Store.js.map +1 -1
- package/lib/module/games/game-2048/components/ScoreBoard.js +25 -43
- package/lib/module/games/game-2048/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/maze-runner/MazeRunner.js +22 -14
- package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
- package/lib/module/games/maze-runner/MazeRunnerService.js +19 -17
- package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -1
- package/lib/module/games/maze-runner/components/ScoreBoard.js +32 -42
- package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/popit-fidget/PopitFidget.js +27 -38
- package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetStore.js +6 -44
- package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -1
- package/lib/module/games/popit-fidget/components/ScoreBoard.js +31 -45
- package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbers.js +18 -20
- package/lib/module/games/sliding-numbers/SlidingNumbers.js.map +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +4 -5
- package/lib/module/games/sliding-numbers/SlidingNumbersStore.js.map +1 -1
- package/lib/module/games/sliding-numbers/components/ScoreBoard.js +26 -28
- package/lib/module/games/sliding-numbers/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/snake/Snake.js +23 -26
- package/lib/module/games/snake/Snake.js.map +1 -1
- package/lib/module/games/snake/SnakeConstants.js +2 -2
- package/lib/module/games/snake/SnakeStore.js +4 -6
- package/lib/module/games/snake/SnakeStore.js.map +1 -1
- package/lib/module/games/snake/components/ScoreBoard.js +10 -16
- package/lib/module/games/snake/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighter.js +16 -17
- package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighterService.js +7 -6
- package/lib/module/games/space-fighter/SpaceFighterService.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighterStore.js +25 -11
- package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -1
- package/lib/module/games/space-fighter/components/GameArea.js +1 -7
- package/lib/module/games/space-fighter/components/GameArea.js.map +1 -1
- package/lib/module/games/space-fighter/components/ScoreBoard.js +47 -48
- package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/whack-a-mole/WhackAMole.js +12 -5
- package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -1
- package/lib/module/games/whack-a-mole/WhackAMoleStore.js +1 -1
- package/lib/module/games/whack-a-mole/components/GameBackground.js +37 -30
- package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -1
- package/lib/module/games/whack-a-mole/components/ScoreBoard.js +32 -38
- package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -1
- package/lib/module/helpers/AnimationFrame.js.map +1 -0
- package/lib/module/helpers/AnimationTracker.js.map +1 -0
- package/lib/module/helpers/ErrorHandler.js.map +1 -0
- package/lib/module/helpers/GameControlButton.js.map +1 -0
- package/lib/module/helpers/GameOverModal.js.map +1 -0
- package/lib/module/{shared/helpers → helpers}/GameSettingsModal.js +2 -2
- package/lib/module/helpers/GameSettingsModal.js.map +1 -0
- package/lib/module/helpers/ParticleBlast.js.map +1 -0
- package/lib/module/helpers/ScoreBoardContainer.js +34 -0
- package/lib/module/helpers/ScoreBoardContainer.js.map +1 -0
- package/lib/module/{shared/helpers → helpers}/index.js +1 -1
- package/lib/module/helpers/index.js.map +1 -0
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/services/GamesConstants.js +49 -10
- package/lib/module/services/GamesConstants.js.map +1 -1
- package/lib/module/services/GamesService.js +108 -82
- package/lib/module/services/GamesService.js.map +1 -1
- package/lib/module/services/SoundsService.js +1 -1
- package/lib/module/services/SoundsService.js.map +1 -1
- package/lib/module/services/UtilsService.js +32 -0
- package/lib/module/services/UtilsService.js.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts +1 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts +1 -1
- package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts +4 -1
- package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts +4 -0
- package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts.map +1 -0
- package/lib/typescript/src/games/{color-sort/ColorSortConstants.d.ts → colors-sort/ColorsSortConstants.d.ts} +8 -6
- package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts.map +1 -0
- package/lib/typescript/src/games/{color-sort/ColorSortService.d.ts → colors-sort/ColorsSortService.d.ts} +1 -1
- package/lib/typescript/src/games/colors-sort/ColorsSortService.d.ts.map +1 -0
- package/lib/typescript/src/games/{color-sort/ColorSortStore.d.ts → colors-sort/ColorsSortStore.d.ts} +6 -6
- package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts.map +1 -0
- package/lib/typescript/src/games/{color-sort → colors-sort}/components/ColorContainer.d.ts +1 -1
- package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts.map +1 -0
- package/lib/typescript/src/games/colors-sort/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts +7 -0
- package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/colors-sort/components/index.d.ts.map +1 -0
- package/lib/typescript/src/games/dino-jump/DinoJump.d.ts +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJump.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +6 -4
- package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +4 -4
- package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +3 -3
- package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/GameArea.d.ts +1 -1
- package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts +1 -1
- package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts +1 -0
- package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts +1 -1
- package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts +1 -1
- package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/Game2048.d.ts +1 -1
- package/lib/typescript/src/games/game-2048/Game2048.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +3 -3
- package/lib/typescript/src/games/game-2048/Game2048Store.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts +1 -1
- package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts +1 -0
- package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +1 -0
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts +1 -1
- package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +2 -5
- package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +2 -2
- package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/Snake.d.ts +1 -1
- package/lib/typescript/src/games/snake/Snake.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/SnakeConstants.d.ts +2 -2
- package/lib/typescript/src/games/snake/SnakeStore.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/snake/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts +2 -0
- package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts +5 -1
- package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts +1 -1
- package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts +1 -0
- package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts +1 -0
- package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/helpers/AnimationFrame.d.ts.map +1 -0
- package/lib/typescript/src/helpers/AnimationTracker.d.ts.map +1 -0
- package/lib/typescript/src/helpers/ErrorHandler.d.ts.map +1 -0
- package/lib/typescript/src/helpers/GameControlButton.d.ts.map +1 -0
- package/lib/typescript/src/helpers/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/{shared/helpers → helpers}/GameSettingsModal.d.ts +1 -1
- package/lib/typescript/src/helpers/GameSettingsModal.d.ts.map +1 -0
- package/lib/typescript/src/helpers/ParticleBlast.d.ts.map +1 -0
- package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts +9 -0
- package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts.map +1 -0
- package/lib/typescript/src/{shared/helpers → helpers}/index.d.ts +2 -1
- package/lib/typescript/src/helpers/index.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +2 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/services/GamesConstants.d.ts +8 -2
- package/lib/typescript/src/services/GamesConstants.d.ts.map +1 -1
- package/lib/typescript/src/services/GamesService.d.ts +3 -33
- package/lib/typescript/src/services/GamesService.d.ts.map +1 -1
- package/lib/typescript/src/services/SoundsService.d.ts +1 -1
- package/lib/typescript/src/services/UtilsService.d.ts +38 -0
- package/lib/typescript/src/services/UtilsService.d.ts.map +1 -0
- package/package.json +1 -1
- package/lib/module/games/color-sort/ColorSort.js.map +0 -1
- package/lib/module/games/color-sort/ColorSortConstants.js.map +0 -1
- package/lib/module/games/color-sort/ColorSortService.js.map +0 -1
- package/lib/module/games/color-sort/ColorSortStore.js.map +0 -1
- package/lib/module/games/color-sort/components/ColorContainer.js.map +0 -1
- package/lib/module/games/color-sort/components/GameBackground.js.map +0 -1
- package/lib/module/games/color-sort/components/ScoreBoard.js.map +0 -1
- package/lib/module/games/color-sort/components/index.js.map +0 -1
- package/lib/module/shared/helpers/AnimationFrame.js.map +0 -1
- package/lib/module/shared/helpers/AnimationTracker.js.map +0 -1
- package/lib/module/shared/helpers/ErrorHandler.js.map +0 -1
- package/lib/module/shared/helpers/GameControlButton.js.map +0 -1
- package/lib/module/shared/helpers/GameOverModal.js.map +0 -1
- package/lib/module/shared/helpers/GameSettingsModal.js.map +0 -1
- package/lib/module/shared/helpers/ParticleBlast.js.map +0 -1
- package/lib/module/shared/helpers/ResponsiveScoreBoard.js +0 -81
- package/lib/module/shared/helpers/ResponsiveScoreBoard.js.map +0 -1
- package/lib/module/shared/helpers/index.js.map +0 -1
- package/lib/typescript/src/games/color-sort/ColorSort.d.ts +0 -4
- package/lib/typescript/src/games/color-sort/ColorSort.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/ColorSortConstants.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/ColorSortService.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/ColorSortStore.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/components/ColorContainer.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/components/GameBackground.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/components/ScoreBoard.d.ts +0 -3
- package/lib/typescript/src/games/color-sort/components/ScoreBoard.d.ts.map +0 -1
- package/lib/typescript/src/games/color-sort/components/index.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/AnimationFrame.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/AnimationTracker.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/ErrorHandler.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/GameControlButton.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/GameOverModal.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/GameSettingsModal.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/ParticleBlast.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts +0 -42
- package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts.map +0 -1
- package/lib/typescript/src/shared/helpers/index.d.ts.map +0 -1
- /package/lib/module/games/{color-sort → colors-sort}/components/index.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/AnimationFrame.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/AnimationTracker.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/ErrorHandler.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/GameControlButton.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/GameOverModal.js +0 -0
- /package/lib/module/{shared/helpers → helpers}/ParticleBlast.js +0 -0
- /package/lib/typescript/src/games/{color-sort → colors-sort}/components/GameBackground.d.ts +0 -0
- /package/lib/typescript/src/games/{color-sort → colors-sort}/components/index.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/AnimationFrame.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/AnimationTracker.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/ErrorHandler.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/GameControlButton.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/GameOverModal.d.ts +0 -0
- /package/lib/typescript/src/{shared/helpers → helpers}/ParticleBlast.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["GAME_2048_COLORS","BACKGROUND","GRID_BACKGROUND","TILE_COLORS","background","text","SCOREBOARD_BACKGROUND","SCOREBOARD_TEXT","BUTTON_BACKGROUND","BUTTON_TEXT","BUTTON_BORDER","GAME_OVER_OVERLAY","GAME_WIN_OVERLAY","GAME_2048_SETTINGS","GRID_SIZE","TILE_SIZE","TILE_MARGIN","TILE_BORDER_RADIUS","ANIMATION_DURATION","MERGE_ANIMATION_DURATION","SPAWN_ANIMATION_DURATION","INITIAL_TILES","NEW_TILE_PROBABILITY_4","SCORE_MULTIPLIER","easy","medium","hard","DIFFICULTY_SETTINGS","gridSize","targetTile","GAME_2048_GESTURES","MIN_SWIPE_DISTANCE","MAX_SWIPE_TIME","MIN_VELOCITY","GAME_2048_SOUNDS","Object","freeze","TILE_MOVE","pitch","rate","TILE_MERGE","GAME_WIN","GAME_OVER","NEW_TILE","INVALID_MOVE","tileColorCache","Map","getTileColor","value","has","get","result","colors","set","formatScore","score","toFixed","toString","BACKGROUND_TILE_COLORS","GAME_CONFIG","ANIMATION_CONFIG","TENSION","FRICTION","GAME_2048_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","GAME_2048_DIFFICULTY_DESCRIPTIONS","getGridDimensions","difficulty","settings","tileSize","margin","totalSize"],"sourceRoot":"../../../../src","sources":["games/game-2048/Game2048Constants.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["GAME_2048_COLORS","BACKGROUND","GRID_BACKGROUND","TILE_COLORS","background","text","SCOREBOARD_BACKGROUND","SCOREBOARD_TEXT","BUTTON_BACKGROUND","BUTTON_TEXT","BUTTON_BORDER","GAME_OVER_OVERLAY","GAME_WIN_OVERLAY","GAME_2048_SETTINGS","GRID_SIZE","TILE_SIZE","TILE_MARGIN","TILE_BORDER_RADIUS","ANIMATION_DURATION","MERGE_ANIMATION_DURATION","SPAWN_ANIMATION_DURATION","INITIAL_TILES","NEW_TILE_PROBABILITY_4","SCORE_MULTIPLIER","easy","medium","hard","DIFFICULTY_SETTINGS","gridSize","targetTile","GAME_2048_GESTURES","MIN_SWIPE_DISTANCE","MAX_SWIPE_TIME","MIN_VELOCITY","GAME_2048_SOUNDS","Object","freeze","TILE_MOVE","pitch","rate","TILE_MERGE","GAME_WIN","GAME_OVER","NEW_TILE","INVALID_MOVE","tileColorCache","Map","getTileColor","value","has","get","result","colors","set","formatScore","score","toFixed","toString","BACKGROUND_TILE_COLORS","GAME_CONFIG","ANIMATION_CONFIG","TENSION","FRICTION","GAME_2048_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","GAME_2048_DIFFICULTY_DESCRIPTIONS","getGridDimensions","difficulty","settings","tileSize","margin","totalSize"],"sourceRoot":"../../../../src","sources":["games/game-2048/Game2048Constants.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ import { create } from 'zustand';
|
|
|
4
4
|
import { subscribeWithSelector } from 'zustand/middleware';
|
|
5
5
|
import { Game2048Service } from "./Game2048Service.js";
|
|
6
6
|
import { GAME_CONFIG, GAME_2048_SOUNDS, GAME_2048_SETTINGS } from "./Game2048Constants.js";
|
|
7
|
-
import { immerMiddleware } from "../../services/
|
|
7
|
+
import { immerMiddleware } from "../../services/UtilsService.js";
|
|
8
8
|
import { playSound } from "../../services/SoundsService.js";
|
|
9
9
|
import { playHaptic, HapticType } from "../../services/HapticsService.js";
|
|
10
10
|
// Ultra-minimal store with memory-safe implementation
|
|
@@ -12,7 +12,7 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
12
12
|
const gameService = new Game2048Service();
|
|
13
13
|
return {
|
|
14
14
|
// Initial state - minimal for memory efficiency
|
|
15
|
-
|
|
15
|
+
timeElapsed: 0,
|
|
16
16
|
isPlaying: false,
|
|
17
17
|
isGameOver: false,
|
|
18
18
|
isWon: false,
|
|
@@ -28,12 +28,13 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
28
28
|
startGame: () => {
|
|
29
29
|
set(state => {
|
|
30
30
|
state.isPlaying = true;
|
|
31
|
+
state.timeElapsed = 0; // Reset time when starting
|
|
31
32
|
});
|
|
32
33
|
},
|
|
33
34
|
stopGame: () => {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
const state = get();
|
|
36
|
+
// Reset the game instead of showing game over modal
|
|
37
|
+
state.initializeGame(state.difficulty);
|
|
37
38
|
},
|
|
38
39
|
resetGame: () => {
|
|
39
40
|
const state = get();
|
|
@@ -53,7 +54,7 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
53
54
|
const tile2 = gameService.addRandomTile(state.grid, tileId++);
|
|
54
55
|
|
|
55
56
|
// Reset state with difficulty settings
|
|
56
|
-
state.
|
|
57
|
+
state.timeElapsed = 0;
|
|
57
58
|
state.isPlaying = false;
|
|
58
59
|
state.isGameOver = false;
|
|
59
60
|
state.isWon = false;
|
|
@@ -88,9 +89,9 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
88
89
|
state.grid = newGrid;
|
|
89
90
|
});
|
|
90
91
|
},
|
|
91
|
-
|
|
92
|
+
incrementTime: () => {
|
|
92
93
|
set(state => {
|
|
93
|
-
state.
|
|
94
|
+
state.timeElapsed += 1;
|
|
94
95
|
});
|
|
95
96
|
},
|
|
96
97
|
setIsAnimating: animating => {
|
|
@@ -146,8 +147,6 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
146
147
|
// Batch all state updates together
|
|
147
148
|
const newTileId = state.nextTileId;
|
|
148
149
|
const newTile = gameService.addRandomTile(gridCopy, newTileId);
|
|
149
|
-
const multiplier = GAME_2048_SETTINGS.SCORE_MULTIPLIER[state.difficulty];
|
|
150
|
-
const newScore = state.score + moveScore * multiplier;
|
|
151
150
|
|
|
152
151
|
// Check game state before updating
|
|
153
152
|
const hasWon = gameService.hasWon(gridCopy, state.targetValue);
|
|
@@ -156,7 +155,6 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
156
155
|
// Single state update for all changes
|
|
157
156
|
set(draft => {
|
|
158
157
|
draft.grid = gridCopy;
|
|
159
|
-
draft.score = newScore;
|
|
160
158
|
draft.nextTileId = newTileId + 1;
|
|
161
159
|
if (hasWon) draft.isWon = true;
|
|
162
160
|
if (isGameOver) draft.isGameOver = true;
|
|
@@ -226,7 +224,7 @@ export const useGame2048Store = create()(subscribeWithSelector(immerMiddleware((
|
|
|
226
224
|
})));
|
|
227
225
|
|
|
228
226
|
// Selector hooks for performance optimization
|
|
229
|
-
export const
|
|
227
|
+
export const useTimeElapsed = () => useGame2048Store(state => state.timeElapsed);
|
|
230
228
|
export const useGrid = () => useGame2048Store(state => state.grid);
|
|
231
229
|
export const useIsPlaying = () => useGame2048Store(state => state.isPlaying);
|
|
232
230
|
export const useIsGameOver = () => useGame2048Store(state => state.isGameOver);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","subscribeWithSelector","Game2048Service","GAME_CONFIG","GAME_2048_SOUNDS","GAME_2048_SETTINGS","immerMiddleware","playSound","playHaptic","HapticType","useGame2048Store","set","get","gameService","
|
|
1
|
+
{"version":3,"names":["create","subscribeWithSelector","Game2048Service","GAME_CONFIG","GAME_2048_SOUNDS","GAME_2048_SETTINGS","immerMiddleware","playSound","playHaptic","HapticType","useGame2048Store","set","get","gameService","timeElapsed","isPlaying","isGameOver","isWon","isAnimating","grid","createGrid","nextTileId","difficulty","targetValue","gridSize","enableSounds","enableHaptics","startGame","state","stopGame","initializeGame","resetGame","difficultySettings","DIFFICULTY_SETTINGS","tileId","tile1","addRandomTile","tile2","targetTile","forEach","tile","scaleValue","setTimeout","setValue","Animated","require","spring","toValue","useNativeDriver","tension","ANIMATION_CONFIG","TENSION","friction","FRICTION","start","updateGrid","newGrid","incrementTime","setIsAnimating","animating","setGameOver","gameOver","setWon","won","incrementTileId","newId","draft","handleMove","direction","gridCopy","map","row","slice","moved","score","moveScore","moveTiles","newTileId","newTile","hasWon","checkGameOver","Promise","resolve","then","TILE_MOVE","LIGHT","TILE_MERGE","MEDIUM","NEW_TILE","GAME_WIN","SUCCESS","GAME_OVER","ERROR","INVALID_MOVE","WARNING","updateSettings","useTimeElapsed","useGrid","useIsPlaying","useIsGameOver","useIsWon","useIsAnimating","useDifficulty","useTargetValue","useGridSize"],"sourceRoot":"../../../../src","sources":["games/game-2048/Game2048Store.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,68 +2,50 @@
|
|
|
2
2
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { View, Text, StyleSheet } from 'react-native';
|
|
5
|
-
import {
|
|
5
|
+
import { useTimeElapsed } from "../Game2048Store.js";
|
|
6
|
+
import { ScoreBoardContainer } from "../../../helpers/index.js";
|
|
6
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
-
export const ScoreBoard = /*#__PURE__*/React.memo((
|
|
8
|
-
|
|
8
|
+
export const ScoreBoard = /*#__PURE__*/React.memo(({
|
|
9
|
+
offset = 0
|
|
10
|
+
}) => {
|
|
11
|
+
const timeElapsed = useTimeElapsed();
|
|
9
12
|
|
|
10
|
-
//
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
13
|
+
// Format time as MM:SS
|
|
14
|
+
const formattedTime = React.useMemo(() => {
|
|
15
|
+
const minutes = Math.floor(timeElapsed / 60);
|
|
16
|
+
const seconds = timeElapsed % 60;
|
|
17
|
+
return `${minutes}:${seconds.toString().padStart(2, '0')}`;
|
|
18
|
+
}, [timeElapsed]);
|
|
19
|
+
return /*#__PURE__*/_jsx(ScoreBoardContainer, {
|
|
20
|
+
offset: offset,
|
|
21
|
+
backgroundColor: "rgba(187, 173, 160, 0.4)",
|
|
22
|
+
borderColor: "rgba(119, 110, 101, 0.6)",
|
|
14
23
|
children: /*#__PURE__*/_jsxs(View, {
|
|
15
24
|
style: styles.scoreBoard,
|
|
16
25
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
17
26
|
style: styles.scoreLabel,
|
|
18
|
-
children: "
|
|
27
|
+
children: "Time Elapsed"
|
|
19
28
|
}), /*#__PURE__*/_jsx(Text, {
|
|
20
29
|
style: styles.scoreValue,
|
|
21
|
-
children:
|
|
30
|
+
children: formattedTime
|
|
22
31
|
})]
|
|
23
32
|
})
|
|
24
33
|
});
|
|
25
34
|
});
|
|
26
35
|
const styles = StyleSheet.create({
|
|
27
|
-
scoreboardContainer: {
|
|
28
|
-
position: 'absolute',
|
|
29
|
-
top: 20,
|
|
30
|
-
left: 20,
|
|
31
|
-
right: 20,
|
|
32
|
-
zIndex: 10,
|
|
33
|
-
pointerEvents: 'none' // Allow touches to pass through
|
|
34
|
-
},
|
|
35
36
|
scoreBoard: {
|
|
36
|
-
|
|
37
|
-
// 0.4 opacity as requested
|
|
38
|
-
borderRadius: 12,
|
|
39
|
-
padding: 15,
|
|
40
|
-
alignItems: 'center',
|
|
41
|
-
borderWidth: 2,
|
|
42
|
-
borderColor: 'rgba(255, 255, 255, 0.6)'
|
|
37
|
+
alignItems: 'center'
|
|
43
38
|
},
|
|
44
39
|
scoreLabel: {
|
|
45
|
-
fontSize:
|
|
46
|
-
fontWeight: '
|
|
40
|
+
fontSize: 18,
|
|
41
|
+
fontWeight: 'bold',
|
|
47
42
|
color: '#ffffff',
|
|
48
|
-
marginBottom: 4
|
|
49
|
-
letterSpacing: 1,
|
|
50
|
-
textShadowColor: 'rgba(0, 0, 0, 0.5)',
|
|
51
|
-
textShadowOffset: {
|
|
52
|
-
width: 1,
|
|
53
|
-
height: 1
|
|
54
|
-
},
|
|
55
|
-
textShadowRadius: 2
|
|
43
|
+
marginBottom: 4
|
|
56
44
|
},
|
|
57
45
|
scoreValue: {
|
|
58
|
-
fontSize:
|
|
59
|
-
fontWeight: '
|
|
60
|
-
color: '#
|
|
61
|
-
textShadowColor: 'rgba(255, 255, 255, 0.8)',
|
|
62
|
-
textShadowOffset: {
|
|
63
|
-
width: 1,
|
|
64
|
-
height: 1
|
|
65
|
-
},
|
|
66
|
-
textShadowRadius: 2
|
|
46
|
+
fontSize: 30,
|
|
47
|
+
fontWeight: 'bold',
|
|
48
|
+
color: '#ffffff'
|
|
67
49
|
}
|
|
68
50
|
});
|
|
69
51
|
ScoreBoard.displayName = 'ScoreBoard';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","StyleSheet","
|
|
1
|
+
{"version":3,"names":["React","View","Text","StyleSheet","useTimeElapsed","ScoreBoardContainer","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","offset","timeElapsed","formattedTime","useMemo","minutes","Math","floor","seconds","toString","padStart","backgroundColor","borderColor","children","style","styles","scoreBoard","scoreLabel","scoreValue","create","alignItems","fontSize","fontWeight","color","marginBottom","displayName"],"sourceRoot":"../../../../../src","sources":["games/game-2048/components/ScoreBoard.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AACrD,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,mBAAmB,QAAQ,2BAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMvD,OAAO,MAAMC,UAAqC,gBAAGV,KAAK,CAACW,IAAI,CAAC,CAAC;EAACC,MAAM,GAAG;AAAC,CAAC,KAAK;EAChF,MAAMC,WAAW,GAAGT,cAAc,CAAC,CAAC;;EAEpC;EACA,MAAMU,aAAa,GAAGd,KAAK,CAACe,OAAO,CAAC,MAAM;IACxC,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACL,WAAW,GAAG,EAAE,CAAC;IAC5C,MAAMM,OAAO,GAAGN,WAAW,GAAG,EAAE;IAChC,OAAO,GAAGG,OAAO,IAAIG,OAAO,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;EAC5D,CAAC,EAAE,CAACR,WAAW,CAAC,CAAC;EAEjB,oBACEN,IAAA,CAACF,mBAAmB;IAClBO,MAAM,EAAEA,MAAO;IACfU,eAAe,EAAC,0BAA0B;IAC1CC,WAAW,EAAC,0BAA0B;IAAAC,QAAA,eAEtCf,KAAA,CAACR,IAAI;MAACwB,KAAK,EAAEC,MAAM,CAACC,UAAW;MAAAH,QAAA,gBAC7BjB,IAAA,CAACL,IAAI;QAACuB,KAAK,EAAEC,MAAM,CAACE,UAAW;QAAAJ,QAAA,EAAC;MAAY,CAAM,CAAC,eACnDjB,IAAA,CAACL,IAAI;QAACuB,KAAK,EAAEC,MAAM,CAACG,UAAW;QAAAL,QAAA,EAAEV;MAAa,CAAO,CAAC;IAAA,CAClD;EAAC,CACY,CAAC;AAE1B,CAAC,CAAC;AAEF,MAAMY,MAAM,GAAGvB,UAAU,CAAC2B,MAAM,CAAC;EAC/BH,UAAU,EAAE;IACVI,UAAU,EAAE;EACd,CAAC;EACDH,UAAU,EAAE;IACVI,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,KAAK,EAAE,SAAS;IAChBC,YAAY,EAAE;EAChB,CAAC;EACDN,UAAU,EAAE;IACVG,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAEFxB,UAAU,CAAC0B,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -8,9 +8,9 @@ import { playHaptic, HapticType } from "../../services/HapticsService.js";
|
|
|
8
8
|
import { MazeRunnerService } from "./MazeRunnerService.js";
|
|
9
9
|
import { DEFAULT_MAZE_RUNNER_SETTINGS, MAZE_RUNNER_DIFFICULTY_CONFIG } from "./MazeRunnerConstants.js";
|
|
10
10
|
import { GameBackground, ScoreBoard, EnhancedGameArea } from "./components/index.js";
|
|
11
|
-
import { GameControlButton, GameOverModal } from "../../
|
|
12
|
-
import { GameSettingsModal } from "../../
|
|
13
|
-
import { GAME_IDS, DEFAULT_GAME_SETTINGS } from "../../services/
|
|
11
|
+
import { GameControlButton, GameOverModal } from "../../helpers/index.js";
|
|
12
|
+
import { GameSettingsModal } from "../../helpers/index.js";
|
|
13
|
+
import { GAME_IDS, DEFAULT_GAME_SETTINGS } from "../../services/UtilsService.js";
|
|
14
14
|
|
|
15
15
|
// Optimized hook to handle responsive dimensions with memoization
|
|
16
16
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -121,13 +121,19 @@ export const MazeRunner = ({
|
|
|
121
121
|
// Memoize game over modal props to prevent unnecessary re-renders
|
|
122
122
|
const gameOverModalProps = useMemo(() => ({
|
|
123
123
|
isVisible: showGameOverModal,
|
|
124
|
-
score: gameState.
|
|
124
|
+
score: gameState.timeElapsed,
|
|
125
|
+
scoreLabel: "Completion Time",
|
|
126
|
+
scoreFormatter: time => {
|
|
127
|
+
const minutes = Math.floor(time / 60);
|
|
128
|
+
const seconds = time % 60;
|
|
129
|
+
return `${minutes}:${seconds.toString().padStart(2, '0')}`;
|
|
130
|
+
},
|
|
125
131
|
buttonText: gameState.isCompleted ? "Navigate Again!" : "Try Again!",
|
|
126
132
|
primaryColor: "rgba(139, 69, 19, 0.8)",
|
|
127
133
|
borderColor: "rgba(139, 69, 19, 0.9)",
|
|
128
134
|
buttonColor: "#8b4513",
|
|
129
135
|
buttonBorderColor: "#cd853f"
|
|
130
|
-
}), [showGameOverModal, gameState.
|
|
136
|
+
}), [showGameOverModal, gameState.timeElapsed, gameState.isCompleted]);
|
|
131
137
|
|
|
132
138
|
// Generate new maze on component mount
|
|
133
139
|
useEffect(() => {
|
|
@@ -145,7 +151,7 @@ export const MazeRunner = ({
|
|
|
145
151
|
|
|
146
152
|
// Memoized state change callback to prevent recreation
|
|
147
153
|
const handleStateChange = useCallback(newState => {
|
|
148
|
-
setGameState(
|
|
154
|
+
setGameState(() => {
|
|
149
155
|
// Handle game completion (only once per level)
|
|
150
156
|
if (newState.isCompleted && !completionHandledRef.current) {
|
|
151
157
|
completionHandledRef.current = true;
|
|
@@ -156,12 +162,8 @@ export const MazeRunner = ({
|
|
|
156
162
|
}, 500); // Short delay to let completion animation/feedback finish
|
|
157
163
|
}
|
|
158
164
|
|
|
159
|
-
//
|
|
160
|
-
|
|
161
|
-
setTimeout(() => {
|
|
162
|
-
setShowGameOverModal(true);
|
|
163
|
-
}, 1000);
|
|
164
|
-
}
|
|
165
|
+
// Don't show modal when stop button is clicked - only show on completion
|
|
166
|
+
|
|
165
167
|
return newState;
|
|
166
168
|
});
|
|
167
169
|
|
|
@@ -206,6 +208,9 @@ export const MazeRunner = ({
|
|
|
206
208
|
setShowGameOverModal(false);
|
|
207
209
|
gameService.resetGame(); // Reset without auto-starting
|
|
208
210
|
}, [gameService]);
|
|
211
|
+
|
|
212
|
+
// Get offset from settings
|
|
213
|
+
const offset = settings?.offset ?? 0;
|
|
209
214
|
return /*#__PURE__*/_jsx(View, {
|
|
210
215
|
style: styles.container,
|
|
211
216
|
children: /*#__PURE__*/_jsx(GestureHandlerRootView, {
|
|
@@ -215,9 +220,12 @@ export const MazeRunner = ({
|
|
|
215
220
|
width: screenWidth,
|
|
216
221
|
height: screenHeight
|
|
217
222
|
}), /*#__PURE__*/_jsx(ScoreBoard, {
|
|
218
|
-
gameState: gameState
|
|
223
|
+
gameState: gameState,
|
|
224
|
+
offset: offset
|
|
219
225
|
}), /*#__PURE__*/_jsx(View, {
|
|
220
|
-
style: styles.gameAreaContainer,
|
|
226
|
+
style: [styles.gameAreaContainer, {
|
|
227
|
+
marginTop: offset
|
|
228
|
+
}],
|
|
221
229
|
children: /*#__PURE__*/_jsx(EnhancedGameArea, {
|
|
222
230
|
gameState: gameState,
|
|
223
231
|
gameConfig: gameConfig,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","playSound","GAME_SOUNDS","playHaptic","HapticType","MazeRunnerService","DEFAULT_MAZE_RUNNER_SETTINGS","MAZE_RUNNER_DIFFICULTY_CONFIG","GameBackground","ScoreBoard","EnhancedGameArea","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","useResponsiveDimensions","dimensions","setDimensions","width","height","get","handleDimensionChange","window","prev","subscription","addEventListener","remove","MazeRunner","settings","onSettingsChange","screenWidth","screenHeight","responsiveDimensions","reservedHeight","availableHeight","availableWidth","maxDimension","Math","min","gameAreaSize","max","gameService","currentSettings","initialWidth","initialHeight","gridSize","gameDuration","gameState","setGameState","getGameState","showGameOverModal","setShowGameOverModal","walls","setWalls","getWalls","completionHandledRef","gameConfig","getGameConfig","gameControlButtonProps","isPlaying","gameOver","isCompleted","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","score","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","resetGame","difficultyConfig","difficulty","updateSettings","handleStateChange","newState","prevState","current","handleGameCompleted","setTimeout","setGameStateChangeCallback","stopGame","cleanup","MAZE_RUNNER","COMPLETE","enableSounds","SUCCESS","enableHaptics","handleStartGame","startGame","START","MEDIUM","handleStopGame","STOP","handleBallPositionChange","position","updateBallPosition","handlePlayAgain","style","styles","container","children","gameContainer","gameAreaContainer","onBallPositionChange","hapticEnabled","onStartGame","onStopGame","onPlayAgain","gameId","create","flex","justifyContent","alignItems","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunner.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","playSound","GAME_SOUNDS","playHaptic","HapticType","MazeRunnerService","DEFAULT_MAZE_RUNNER_SETTINGS","MAZE_RUNNER_DIFFICULTY_CONFIG","GameBackground","ScoreBoard","EnhancedGameArea","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","useResponsiveDimensions","dimensions","setDimensions","width","height","get","handleDimensionChange","window","prev","subscription","addEventListener","remove","MazeRunner","settings","onSettingsChange","screenWidth","screenHeight","responsiveDimensions","reservedHeight","availableHeight","availableWidth","maxDimension","Math","min","gameAreaSize","max","gameService","currentSettings","initialWidth","initialHeight","gridSize","gameDuration","gameState","setGameState","getGameState","showGameOverModal","setShowGameOverModal","walls","setWalls","getWalls","completionHandledRef","gameConfig","getGameConfig","gameControlButtonProps","isPlaying","gameOver","isCompleted","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","score","timeElapsed","scoreLabel","scoreFormatter","time","minutes","floor","seconds","toString","padStart","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","resetGame","difficultyConfig","difficulty","updateSettings","handleStateChange","newState","current","handleGameCompleted","setTimeout","setGameStateChangeCallback","stopGame","cleanup","MAZE_RUNNER","COMPLETE","enableSounds","SUCCESS","enableHaptics","handleStartGame","startGame","START","MEDIUM","handleStopGame","STOP","handleBallPositionChange","position","updateBallPosition","handlePlayAgain","offset","style","styles","container","children","gameContainer","gameAreaContainer","marginTop","onBallPositionChange","hapticEnabled","onStartGame","onStopGame","onPlayAgain","gameId","create","flex","justifyContent","alignItems","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunner.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,8 +19,8 @@ export class MazeRunnerService {
|
|
|
19
19
|
isPlaying: false,
|
|
20
20
|
isPaused: false,
|
|
21
21
|
score: 0,
|
|
22
|
-
timeElapsed:
|
|
23
|
-
// Start
|
|
22
|
+
timeElapsed: 0,
|
|
23
|
+
// Start from 0 and count up
|
|
24
24
|
ballPosition: {
|
|
25
25
|
x: 0,
|
|
26
26
|
y: 0
|
|
@@ -84,7 +84,7 @@ export class MazeRunnerService {
|
|
|
84
84
|
this.gameState.isPaused = false;
|
|
85
85
|
this.gameState.gameOver = false;
|
|
86
86
|
this.gameState.score = 0; // Reset score for new maze
|
|
87
|
-
this.gameState.timeElapsed =
|
|
87
|
+
this.gameState.timeElapsed = 0; // Start from 0 and count up
|
|
88
88
|
|
|
89
89
|
this.notifyGameStateChange();
|
|
90
90
|
}
|
|
@@ -415,7 +415,7 @@ export class MazeRunnerService {
|
|
|
415
415
|
// Reset game state
|
|
416
416
|
this.gameState.isPlaying = false;
|
|
417
417
|
this.gameState.isPaused = false;
|
|
418
|
-
this.gameState.timeElapsed =
|
|
418
|
+
this.gameState.timeElapsed = 0; // Start from 0 and count up
|
|
419
419
|
this.gameState.isCompleted = false;
|
|
420
420
|
this.gameState.gameOver = false;
|
|
421
421
|
this.stopTimer();
|
|
@@ -429,7 +429,7 @@ export class MazeRunnerService {
|
|
|
429
429
|
this.gameState.isPlaying = false; // Don't auto-start
|
|
430
430
|
this.gameState.isPaused = false;
|
|
431
431
|
this.gameState.score = 0; // Reset score for new game
|
|
432
|
-
this.gameState.timeElapsed =
|
|
432
|
+
this.gameState.timeElapsed = 0; // Start from 0 and count up
|
|
433
433
|
this.gameState.isCompleted = false;
|
|
434
434
|
this.gameState.gameOver = false;
|
|
435
435
|
this.stopTimer(); // Make sure timer is stopped
|
|
@@ -448,7 +448,7 @@ export class MazeRunnerService {
|
|
|
448
448
|
this.gameState.isPlaying = true;
|
|
449
449
|
this.gameState.isPaused = false;
|
|
450
450
|
this.gameState.score = 0; // Reset score when starting new game
|
|
451
|
-
this.gameState.timeElapsed =
|
|
451
|
+
this.gameState.timeElapsed = 0; // Start from 0 and count up
|
|
452
452
|
this.gameState.isCompleted = false;
|
|
453
453
|
this.gameState.gameOver = false;
|
|
454
454
|
this.startTimer();
|
|
@@ -474,15 +474,11 @@ export class MazeRunnerService {
|
|
|
474
474
|
this.stopTimer();
|
|
475
475
|
this.gameTimer = setInterval(() => {
|
|
476
476
|
if (!this.gameState.isPaused && this.gameState.isPlaying) {
|
|
477
|
-
this.gameState.timeElapsed
|
|
477
|
+
this.gameState.timeElapsed += 1; // Count up from 0
|
|
478
|
+
|
|
479
|
+
// No time limit - player can take as long as they need
|
|
480
|
+
// Timer just tracks how long they've been playing
|
|
478
481
|
|
|
479
|
-
// Check if time has run out
|
|
480
|
-
if (this.gameState.timeElapsed <= 0) {
|
|
481
|
-
this.gameState.timeElapsed = 0;
|
|
482
|
-
this.gameState.isPlaying = false;
|
|
483
|
-
this.gameState.gameOver = true;
|
|
484
|
-
this.stopTimer();
|
|
485
|
-
}
|
|
486
482
|
this.notifyGameStateChange();
|
|
487
483
|
}
|
|
488
484
|
}, 1000);
|
|
@@ -551,9 +547,8 @@ export class MazeRunnerService {
|
|
|
551
547
|
return distance < this.gameConfig.BALL_SIZE * 1.5;
|
|
552
548
|
}
|
|
553
549
|
completeLevel() {
|
|
554
|
-
//
|
|
555
|
-
|
|
556
|
-
this.gameState.score += this.gameConfig.SCORE_PER_COMPLETION + timeBonus;
|
|
550
|
+
// No time bonus - faster completion is the goal
|
|
551
|
+
this.gameState.score += this.gameConfig.SCORE_PER_COMPLETION;
|
|
557
552
|
this.gameState.isCompleted = true;
|
|
558
553
|
this.gameState.isPlaying = false; // Stop the game when maze is completed
|
|
559
554
|
this.stopTimer();
|
|
@@ -577,6 +572,13 @@ export class MazeRunnerService {
|
|
|
577
572
|
...cell
|
|
578
573
|
})));
|
|
579
574
|
}
|
|
575
|
+
|
|
576
|
+
// Format time for display (MM:SS format)
|
|
577
|
+
formatTime(seconds) {
|
|
578
|
+
const minutes = Math.floor(seconds / 60);
|
|
579
|
+
const remainingSeconds = seconds % 60;
|
|
580
|
+
return `${minutes}:${remainingSeconds.toString().padStart(2, '0')}`;
|
|
581
|
+
}
|
|
580
582
|
cleanup() {
|
|
581
583
|
this.stopTimer();
|
|
582
584
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MazeRunnerService","gameTimer","constructor","gridSize","gameAreaWidth","gameAreaHeight","gameDuration","gameConfig","GRID_SIZE","CELL_SIZE","Math","min","BALL_SIZE","PIPE_WIDTH","GAME_AREA_WIDTH","GAME_AREA_HEIGHT","COLLISION_TOLERANCE","SCORE_PER_COMPLETION","TIME_BONUS_MULTIPLIER","GAME_DURATION","gameState","isPlaying","isPaused","score","timeElapsed","ballPosition","x","y","targetPosition","isCompleted","gameOver","maze","walls","initializeMaze","generateMazeWithBacktracking","generateWalls","setStartAndEndPositions","setGameStateChangeCallback","callback","onGameStateChange","notifyGameStateChange","top","right","bottom","left","visited","generateNewMaze","stack","startCell","push","length","current","neighbors","getUnvisitedNeighbors","next","floor","random","removeWallBetween","pop","ensureConnectivity","hasPathFromStartToEnd","createMinimalPath","Array","fill","map","queue","shift","directions","dx","dy","wall","dir","newX","newY","currentCell","currentX","currentY","endX","endY","Set","key","has","add","possibleMoves","direction","cell","rightCell","bottomCell","leftCell","topCell","wallThickness","cellSize","mazeWidth","mazeHeight","width","height","type","cellX","cellY","updateSettings","newGameAreaWidth","newGameAreaHeight","stopTimer","resetGame","startGame","startTimer","pauseGame","resumeGame","stopGame","setInterval","clearInterval","updateBallPosition","newPosition","isValidPosition","isNearTarget","completeLevel","position","ballRadius","ballCollidesWithWall","padding","ballX","ballY","closestX","max","closestY","distanceX","distanceY","distanceSquared","distance","sqrt","pow","timeBonus","getGameState","getGameConfig","getWalls","getMaze","row","cleanup"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunnerService.ts"],"mappings":";;AAiDA,OAAO,MAAMA,iBAAiB,CAAC;EAKrBC,SAAS,GAA0B,IAAI;EAG/CC,WAAWA,CACTC,QAAgB,GAAG,EAAE,EACrBC,aAAqB,GAAG,GAAG,EAC3BC,cAAsB,GAAG,GAAG,EAC5BC,YAAoB,GAAG,GAAG,EAC1B;IACA,IAAI,CAACC,UAAU,GAAG;MAChBC,SAAS,EAAEL,QAAQ;MACnBM,SAAS,EAAEC,IAAI,CAACC,GAAG,CAACP,aAAa,EAAEC,cAAc,CAAC,GAAGF,QAAQ;MAC7DS,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE,CAAC;MACbC,eAAe,EAAEV,aAAa;MAC9BW,gBAAgB,EAAEV,cAAc;MAChCW,mBAAmB,EAAE,CAAC;MACtBC,oBAAoB,EAAE,GAAG;MACzBC,qBAAqB,EAAE,EAAE;MACzBC,aAAa,EAAEb;IACjB,CAAC;IAED,IAAI,CAACc,SAAS,GAAG;MACfC,SAAS,EAAE,KAAK;MAChBC,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE,CAAC;MACRC,WAAW,EAAElB,YAAY;MAAE;MAC3BmB,YAAY,EAAE;QAAEC,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC;MAC5BC,cAAc,EAAE;QAAEF,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC;MAC9BE,WAAW,EAAE,KAAK;MAClBC,QAAQ,EAAE;IACZ,CAAC;IAED,IAAI,CAACC,IAAI,GAAG,EAAE;IACd,IAAI,CAACC,KAAK,GAAG,EAAE;IACf,IAAI,CAACC,cAAc,CAAC,CAAC;IACrB;IACA,IAAI,CAACC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAACC,aAAa,CAAC,CAAC;IACpB,IAAI,CAACC,uBAAuB,CAAC,CAAC;EAChC;EAEOC,0BAA0BA,CAACC,QAAoC,EAAE;IACtE,IAAI,CAACC,iBAAiB,GAAGD,QAAQ;EACnC;EAEQE,qBAAqBA,CAAA,EAAG;IAC9B,IAAI,IAAI,CAACD,iBAAiB,EAAE;MAC1B,IAAI,CAACA,iBAAiB,CAAC;QAAE,GAAG,IAAI,CAACnB;MAAU,CAAC,CAAC;IAC/C;EACF;EAEQa,cAAcA,CAAA,EAAG;IACvB;IACA,IAAI,CAACF,IAAI,GAAG,EAAE;IACd,KAAK,IAAIJ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,EAAEmB,CAAC,EAAE,EAAE;MAClD,IAAI,CAACI,IAAI,CAACJ,CAAC,CAAC,GAAG,EAAE;MACjB,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,EAAEkB,CAAC,EAAE,EAAE;QAClD,IAAI,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,EAAE;UAChB,IAAI,CAACI,IAAI,CAACJ,CAAC,CAAC,CAAED,CAAC,CAAC,GAAG;YACnBA,CAAC;YACDC,CAAC;YACDK,KAAK,EAAE;cAAES,GAAG,EAAE,IAAI;cAAEC,KAAK,EAAE,IAAI;cAAEC,MAAM,EAAE,IAAI;cAAEC,IAAI,EAAE;YAAK,CAAC;YAC3DC,OAAO,EAAE;UACT,CAAC;QACH;MACF;IACF;EACF;EAEOC,eAAeA,CAAA,EAAS;IAC7B,IAAI,CAACb,cAAc,CAAC,CAAC;IACrB,IAAI,CAACC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAACC,aAAa,CAAC,CAAC;IACpB,IAAI,CAACC,uBAAuB,CAAC,CAAC;;IAE9B;IACA,IAAI,CAAChB,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACV,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,IAAI,CAACjB,UAAU,CAACY,aAAa,CAAC,CAAC;;IAE5D,IAAI,CAACqB,qBAAqB,CAAC,CAAC;EAC9B;EAEQN,4BAA4BA,CAAA,EAAG;IACrC;IACA,MAAMa,KAAiB,GAAG,EAAE;IAC5B,MAAMC,SAAS,GAAG,IAAI,CAACjB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnC,IAAIiB,SAAS,EAAE;MACbA,SAAS,CAACH,OAAO,GAAG,IAAI;MACxBE,KAAK,CAACE,IAAI,CAACD,SAAS,CAAC;IACvB;IAEA,OAAOD,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;MACvB,MAAMC,OAAO,GAAGJ,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;MACvC,MAAME,SAAS,GAAGD,OAAO,GAAG,IAAI,CAACE,qBAAqB,CAACF,OAAO,CAAC,GAAG,EAAE;MAEpE,IAAIC,SAAS,CAACF,MAAM,GAAG,CAAC,EAAE;QACxB;QACA,MAAMI,IAAI,GAAGF,SAAS,CAAC1C,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAGJ,SAAS,CAACF,MAAM,CAAC,CAAC;QACpE,IAAIC,OAAO,IAAIG,IAAI,EAAE,IAAI,CAACG,iBAAiB,CAACN,OAAO,EAAEG,IAAI,CAAC;QAC1D,IAAIA,IAAI,EAAE;UACRA,IAAI,CAACT,OAAO,GAAG,IAAI;UACnBE,KAAK,CAACE,IAAI,CAACK,IAAI,CAAC;QAClB;MACF,CAAC,MAAM;QACLP,KAAK,CAACW,GAAG,CAAC,CAAC;MACb;IACF;;IAEA;IACA,IAAI,CAACC,kBAAkB,CAAC,CAAC;EAC3B;EAEQA,kBAAkBA,CAAA,EAAG;IAC3B;IACA;IACA,IAAI,CAAC,IAAI,CAACC,qBAAqB,CAAC,CAAC,EAAE;MACjC;MACA,IAAI,CAACC,iBAAiB,CAAC,CAAC;IAC1B;EACF;EAEQD,qBAAqBA,CAAA,EAAY;IACvC;IACA,MAAMf,OAAO,GAAGiB,KAAK,CAAC,IAAI,CAACvD,UAAU,CAACC,SAAS,CAAC,CAACuD,IAAI,CAAC,IAAI,CAAC,CAACC,GAAG,CAAC,MAAMF,KAAK,CAAC,IAAI,CAACvD,UAAU,CAACC,SAAS,CAAC,CAACuD,IAAI,CAAC,KAAK,CAAC,CAAC;IACnH,MAAME,KAA+B,GAAG,CAAC;MAACvC,CAAC,EAAE,CAAC;MAAEC,CAAC,EAAE;IAAC,CAAC,CAAC;IACtD,IAAIkB,OAAO,CAAC,CAAC,CAAC,EAAEA,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAEpC,OAAOoB,KAAK,CAACf,MAAM,GAAG,CAAC,EAAE;MACvB,MAAMC,OAAO,GAAGc,KAAK,CAACC,KAAK,CAAC,CAAE;MAE9B,IAAIf,OAAO,CAACzB,CAAC,KAAK,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI2C,OAAO,CAACxB,CAAC,KAAK,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,EAAE;QAC9F,OAAO,IAAI,CAAC,CAAC;MACf;;MAEA;MACA,MAAM2D,UAAU,GAAG,CACjB;QAACC,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC,CAAC;QAAEC,IAAI,EAAE;MAAK,CAAC;MAAE;MAC9B;QAACF,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAO,CAAC;MAAE;MAC/B;QAACF,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAQ,CAAC;MAAE;MAChC;QAACF,EAAE,EAAE,CAAC,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAM,CAAC,CAAC;MAAA,CAC/B;MAED,KAAK,MAAMC,GAAG,IAAIJ,UAAU,EAAE;QAC5B,MAAMK,IAAI,GAAGrB,OAAO,CAACzB,CAAC,GAAG6C,GAAG,CAACH,EAAE;QAC/B,MAAMK,IAAI,GAAGtB,OAAO,CAACxB,CAAC,GAAG4C,GAAG,CAACF,EAAE;QAE/B,IAAIG,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAG,IAAI,CAACjE,UAAU,CAACC,SAAS,IAC7CiE,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAG,IAAI,CAAClE,UAAU,CAACC,SAAS,IAC7C,CAACqC,OAAO,CAAC4B,IAAI,CAAC,GAAGD,IAAI,CAAC,EAAE;UAE1B;UACA,MAAME,WAAW,GAAG,IAAI,CAAC3C,IAAI,CAACoB,OAAO,CAACxB,CAAC,CAAC,GAAGwB,OAAO,CAACzB,CAAC,CAAC;UACrD,IAAIgD,WAAW,IAAI,CAACA,WAAW,CAAC1C,KAAK,CAACuC,GAAG,CAACD,IAAI,CAAmC,EAAE;YACjF,IAAIzB,OAAO,CAAC4B,IAAI,CAAC,EAAE5B,OAAO,CAAC4B,IAAI,CAAC,CAACD,IAAI,CAAC,GAAG,IAAI;YAC7CP,KAAK,CAAChB,IAAI,CAAC;cAACvB,CAAC,EAAE8C,IAAI;cAAE7C,CAAC,EAAE8C;YAAI,CAAC,CAAC;UAChC;QACF;MACF;IACF;IAEA,OAAO,KAAK,CAAC,CAAC;EAChB;EAEQZ,iBAAiBA,CAAA,EAAG;IAC1B;IACA;IACA,IAAIc,QAAQ,GAAG,CAAC;IAChB,IAAIC,QAAQ,GAAG,CAAC;IAChB,MAAMC,IAAI,GAAG,IAAI,CAACtE,UAAU,CAACC,SAAS,GAAG,CAAC;IAC1C,MAAMsE,IAAI,GAAG,IAAI,CAACvE,UAAU,CAACC,SAAS,GAAG,CAAC;IAC1C,MAAMqC,OAAO,GAAG,IAAIkC,GAAG,CAAS,CAAC;IAEjC,OAAOJ,QAAQ,KAAKE,IAAI,IAAID,QAAQ,KAAKE,IAAI,EAAE;MAC7C,MAAME,GAAG,GAAG,GAAGL,QAAQ,IAAIC,QAAQ,EAAE;MACrC,IAAI/B,OAAO,CAACoC,GAAG,CAACD,GAAG,CAAC,EAAE;QACpB;QACA;MACF;MACAnC,OAAO,CAACqC,GAAG,CAACF,GAAG,CAAC;;MAEhB;MACA,MAAMG,aAAa,GAAG,EAAE;MAExB,IAAIR,QAAQ,GAAGE,IAAI,EAAEM,aAAa,CAAClC,IAAI,CAAC,OAAO,CAAC;MAChD,IAAI2B,QAAQ,GAAGE,IAAI,EAAEK,aAAa,CAAClC,IAAI,CAAC,MAAM,CAAC;MAC/C,IAAI0B,QAAQ,GAAG,CAAC,EAAEQ,aAAa,CAAClC,IAAI,CAAC,MAAM,CAAC;MAC5C,IAAI2B,QAAQ,GAAG,CAAC,EAAEO,aAAa,CAAClC,IAAI,CAAC,IAAI,CAAC;MAE1C,IAAIkC,aAAa,CAACjC,MAAM,KAAK,CAAC,EAAE;;MAEhC;MACA,IAAIkC,SAAS;MACb,IAAI1E,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG,GAAG,KAAKmB,QAAQ,KAAKE,IAAI,IAAID,QAAQ,KAAKE,IAAI,CAAC,EAAE;QACnE;QACA,IAAIH,QAAQ,GAAGE,IAAI,IAAInE,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE;UAC1C4B,SAAS,GAAG,OAAO;QACrB,CAAC,MAAM,IAAIR,QAAQ,GAAGE,IAAI,EAAE;UAC1BM,SAAS,GAAG,MAAM;QACpB,CAAC,MAAM,IAAIT,QAAQ,GAAGE,IAAI,EAAE;UAC1BO,SAAS,GAAG,OAAO;QACrB,CAAC,MAAM;UACLA,SAAS,GAAGD,aAAa,CAACzE,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG2B,aAAa,CAACjC,MAAM,CAAC,CAAC;QAC7E;MACF,CAAC,MAAM;QACL;QACAkC,SAAS,GAAGD,aAAa,CAACzE,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG2B,aAAa,CAACjC,MAAM,CAAC,CAAC;MAC7E;;MAEA;MACA,MAAMmC,IAAI,GAAG,IAAI,CAACtD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,CAAC;MAC5C,IAAIS,SAAS,KAAK,OAAO,IAAIT,QAAQ,GAAG,IAAI,CAACpE,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI6E,IAAI,EAAE;QAC7EA,IAAI,CAACrD,KAAK,CAACU,KAAK,GAAG,KAAK;QACxB,MAAM4C,SAAS,GAAG,IAAI,CAACvD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,GAAG,CAAC,CAAC;QACrD,IAAIW,SAAS,EAAEA,SAAS,CAACtD,KAAK,CAACY,IAAI,GAAG,KAAK;QAC3C+B,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIS,SAAS,KAAK,MAAM,IAAIR,QAAQ,GAAG,IAAI,CAACrE,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI6E,IAAI,EAAE;QACnFA,IAAI,CAACrD,KAAK,CAACW,MAAM,GAAG,KAAK;QACzB,MAAM4C,UAAU,GAAG,IAAI,CAACxD,IAAI,CAAC6C,QAAQ,GAAG,CAAC,CAAC,GAAGD,QAAQ,CAAC;QACtD,IAAIY,UAAU,EAAEA,UAAU,CAACvD,KAAK,CAACS,GAAG,GAAG,KAAK;QAC5CmC,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIQ,SAAS,KAAK,MAAM,IAAIT,QAAQ,GAAG,CAAC,IAAIU,IAAI,EAAE;QACvDA,IAAI,CAACrD,KAAK,CAACY,IAAI,GAAG,KAAK;QACvB,MAAM4C,QAAQ,GAAG,IAAI,CAACzD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,GAAG,CAAC,CAAC;QACpD,IAAIa,QAAQ,EAAEA,QAAQ,CAACxD,KAAK,CAACU,KAAK,GAAG,KAAK;QAC1CiC,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIS,SAAS,KAAK,IAAI,IAAIR,QAAQ,GAAG,CAAC,IAAIS,IAAI,EAAE;QACrDA,IAAI,CAACrD,KAAK,CAACS,GAAG,GAAG,KAAK;QACtB,MAAMgD,OAAO,GAAG,IAAI,CAAC1D,IAAI,CAAC6C,QAAQ,GAAG,CAAC,CAAC,GAAGD,QAAQ,CAAC;QACnD,IAAIc,OAAO,EAAEA,OAAO,CAACzD,KAAK,CAACW,MAAM,GAAG,KAAK;QACzCiC,QAAQ,EAAE;MACZ;IACF;EACF;EAEQvB,qBAAqBA,CAACgC,IAAc,EAAc;IACxD,MAAMjC,SAAqB,GAAG,EAAE;IAChC,MAAM;MAAE1B,CAAC;MAAEC;IAAE,CAAC,GAAG0D,IAAI;;IAErB;IACA,IAAI1D,CAAC,GAAG,CAAC,IAAI,IAAI,CAACI,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACrE,MAAM4C,OAAO,GAAG,IAAI,CAAC1D,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC;MACrC,IAAI+D,OAAO,EAAE;QACXrC,SAAS,CAACH,IAAI,CAACwC,OAAO,CAAC;MACzB;IACF;IACA;IACA,IAAI/D,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACuB,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACjG,MAAMyC,SAAS,GAAG,IAAI,CAACvD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC;MACvC,IAAI4D,SAAS,EAAE;QACblC,SAAS,CAACH,IAAI,CAACqC,SAAS,CAAC;MAC3B;IACF;IACA;IACA,IAAI3D,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACuB,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACjG,MAAM0C,UAAU,GAAG,IAAI,CAACxD,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC;MACxC,IAAI6D,UAAU,EAAE;QACdnC,SAAS,CAACH,IAAI,CAACsC,UAAU,CAAC;MAC5B;IACF;IACA;IACA,IAAI7D,CAAC,GAAG,CAAC,IAAI,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACrE,MAAM2C,QAAQ,GAAG,IAAI,CAACzD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC;MACtC,IAAI8D,QAAQ,EAAE;QACZpC,SAAS,CAACH,IAAI,CAACuC,QAAQ,CAAC;MAC1B;IACF;IAEA,OAAOpC,SAAS;EAClB;EAEQK,iBAAiBA,CAACN,OAAiB,EAAEG,IAAc,EAAE;IAC3D,MAAMc,EAAE,GAAGjB,OAAO,CAACzB,CAAC,GAAG4B,IAAI,CAAC5B,CAAC;IAC7B,MAAM2C,EAAE,GAAGlB,OAAO,CAACxB,CAAC,GAAG2B,IAAI,CAAC3B,CAAC;IAE7B,IAAIyC,EAAE,KAAK,CAAC,EAAE;MACZ;MACAjB,OAAO,CAACnB,KAAK,CAACY,IAAI,GAAG,KAAK;MAC1BU,IAAI,CAACtB,KAAK,CAACU,KAAK,GAAG,KAAK;IAC1B,CAAC,MAAM,IAAI0B,EAAE,KAAK,CAAC,CAAC,EAAE;MACpB;MACAjB,OAAO,CAACnB,KAAK,CAACU,KAAK,GAAG,KAAK;MAC3BY,IAAI,CAACtB,KAAK,CAACY,IAAI,GAAG,KAAK;IACzB,CAAC,MAAM,IAAIyB,EAAE,KAAK,CAAC,EAAE;MACnB;MACAlB,OAAO,CAACnB,KAAK,CAACS,GAAG,GAAG,KAAK;MACzBa,IAAI,CAACtB,KAAK,CAACW,MAAM,GAAG,KAAK;IAC3B,CAAC,MAAM,IAAI0B,EAAE,KAAK,CAAC,CAAC,EAAE;MACpB;MACAlB,OAAO,CAACnB,KAAK,CAACW,MAAM,GAAG,KAAK;MAC5BW,IAAI,CAACtB,KAAK,CAACS,GAAG,GAAG,KAAK;IACxB;EACF;EAEQN,aAAaA,CAAA,EAAG;IACtB,IAAI,CAACH,KAAK,GAAG,EAAE;IACf,MAAM0D,aAAa,GAAG,CAAC;IACvB,MAAMC,QAAQ,GAAG,IAAI,CAACpF,UAAU,CAACE,SAAS;IAC1C,MAAMmF,SAAS,GAAG,IAAI,CAACrF,UAAU,CAACC,SAAS,GAAGmF,QAAQ;IACtD,MAAME,UAAU,GAAG,IAAI,CAACtF,UAAU,CAACC,SAAS,GAAGmF,QAAQ;;IAEvD;IACA;IACA,IAAI,CAAC3D,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEF,SAAS;MAChBG,MAAM,EAAEL,aAAa;MACrBM,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAEkE,UAAU,GAAGH,aAAa;MAC7BI,KAAK,EAAEF,SAAS;MAChBG,MAAM,EAAEL,aAAa;MACrBM,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEJ,aAAa;MACpBK,MAAM,EAAEF,UAAU;MAClBG,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAEkE,SAAS,GAAGF,aAAa;MAC5B/D,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEJ,aAAa;MACpBK,MAAM,EAAEF,UAAU;MAClBG,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA;IACA,KAAK,IAAIrE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,EAAEmB,CAAC,EAAE,EAAE;MAClD,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,EAAEkB,CAAC,EAAE,EAAE;QAClD,MAAM2D,IAAI,GAAG,IAAI,CAACtD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,CAAC;QAC9B,IAAI,CAAC2D,IAAI,EAAE;QAEX,MAAMY,KAAK,GAAGvE,CAAC,GAAGiE,QAAQ;QAC1B,MAAMO,KAAK,GAAGvE,CAAC,GAAGgE,QAAQ;;QAE1B;QACA;QACA,IAAIN,IAAI,CAACrD,KAAK,CAACS,GAAG,IAAId,CAAC,GAAG,CAAC,EAAE;UAC3B,IAAI,CAACK,KAAK,CAACiB,IAAI,CAAC;YACdvB,CAAC,EAAEuE,KAAK;YACRtE,CAAC,EAAEuE,KAAK;YACRJ,KAAK,EAAEH,QAAQ;YACfI,MAAM,EAAEL,aAAa;YACrBM,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;;QAEA;QACA;QACA,IAAIX,IAAI,CAACrD,KAAK,CAACY,IAAI,IAAIlB,CAAC,GAAG,CAAC,EAAE;UAC5B,IAAI,CAACM,KAAK,CAACiB,IAAI,CAAC;YACdvB,CAAC,EAAEuE,KAAK;YACRtE,CAAC,EAAEuE,KAAK;YACRJ,KAAK,EAAEJ,aAAa;YACpBK,MAAM,EAAEJ,QAAQ;YAChBK,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;MACF;IACF;EACF;EAEQ5D,uBAAuBA,CAAA,EAAG;IAChC,MAAMuD,QAAQ,GAAG,IAAI,CAACpF,UAAU,CAACE,SAAS;;IAE1C;IACA,IAAI,CAACW,SAAS,CAACK,YAAY,GAAG;MAC5BC,CAAC,EAAEiE,QAAQ,GAAG,CAAC;MACfhE,CAAC,EAAEgE,QAAQ,GAAG;IAChB,CAAC;;IAED;IACA,IAAI,CAACvE,SAAS,CAACQ,cAAc,GAAG;MAC9BF,CAAC,EAAE,CAAC,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAImF,QAAQ,GAAGA,QAAQ,GAAG,CAAC;MAC5DhE,CAAC,EAAE,CAAC,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAImF,QAAQ,GAAGA,QAAQ,GAAG;IAC7D,CAAC;EACH;EAEOQ,cAAcA,CAAChG,QAAgB,EAAEG,YAAoB,EAAEF,aAAsB,EAAEC,cAAuB,EAAQ;IACnH;IACA,MAAM+F,gBAAgB,GAAGhG,aAAa,IAAI,IAAI,CAACG,UAAU,CAACO,eAAe;IACzE,MAAMuF,iBAAiB,GAAGhG,cAAc,IAAI,IAAI,CAACE,UAAU,CAACQ,gBAAgB;IAE5E,IAAI,CAACR,UAAU,CAACC,SAAS,GAAGL,QAAQ;IACpC,IAAI,CAACI,UAAU,CAACO,eAAe,GAAGsF,gBAAgB;IAClD,IAAI,CAAC7F,UAAU,CAACQ,gBAAgB,GAAGsF,iBAAiB;IACpD,IAAI,CAAC9F,UAAU,CAACE,SAAS,GAAGC,IAAI,CAACC,GAAG,CAACyF,gBAAgB,EAAEC,iBAAiB,CAAC,GAAGlG,QAAQ;IACpF,IAAI,CAACI,UAAU,CAACY,aAAa,GAAGb,YAAY,CAAC,CAAC;;IAE9C;IACA,IAAI,CAACwC,eAAe,CAAC,CAAC;;IAEtB;IACA,IAAI,CAAC1B,SAAS,CAACC,SAAS,GAAG,KAAK;IAChC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACI,WAAW,GAAG,IAAI,CAACjB,UAAU,CAACY,aAAa,CAAC,CAAC;IAC5D,IAAI,CAACC,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACwE,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEO+D,SAASA,CAAA,EAAS;IACvB;IACA,IAAI,CAACzD,eAAe,CAAC,CAAC;;IAEtB;IACA,IAAI,CAAC1B,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,IAAI,CAACjB,UAAU,CAACY,aAAa,CAAC,CAAC;IAC5D,IAAI,CAACC,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACwE,SAAS,CAAC,CAAC,CAAC,CAAC;IAClB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEOgE,SAASA,CAAA,EAAS;IACvB;IACA,IAAI,CAACpF,SAAS,CAACK,YAAY,GAAG;MAAEC,CAAC,EAAE,IAAI,CAACnB,UAAU,CAACE,SAAS,GAAG,CAAC;MAAEkB,CAAC,EAAE,IAAI,CAACpB,UAAU,CAACE,SAAS,GAAG;IAAE,CAAC;IACpG,IAAI,CAACW,SAAS,CAACQ,cAAc,GAAG;MAC9BF,CAAC,EAAE,CAAC,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACD,UAAU,CAACE,SAAS,GAAG,IAAI,CAACF,UAAU,CAACE,SAAS,GAAG,CAAC;MAC9FkB,CAAC,EAAE,CAAC,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACD,UAAU,CAACE,SAAS,GAAG,IAAI,CAACF,UAAU,CAACE,SAAS,GAAG;IAC/F,CAAC;IAED,IAAI,CAACW,SAAS,CAACC,SAAS,GAAG,IAAI;IAC/B,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,IAAI,CAACjB,UAAU,CAACY,aAAa,CAAC,CAAC;IAC5D,IAAI,CAACC,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAAC2E,UAAU,CAAC,CAAC;IACjB,IAAI,CAACjE,qBAAqB,CAAC,CAAC;EAC9B;EAEOkE,SAASA,CAAA,EAAS;IACvB,IAAI,CAACtF,SAAS,CAACE,QAAQ,GAAG,IAAI;IAC9B,IAAI,CAACgF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEOmE,UAAUA,CAAA,EAAS;IACxB,IAAI,CAACvF,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACmF,UAAU,CAAC,CAAC;IACjB,IAAI,CAACjE,qBAAqB,CAAC,CAAC;EAC9B;EAEOoE,QAAQA,CAAA,EAAS;IACtB,IAAI,CAACxF,SAAS,CAACC,SAAS,GAAG,KAAK;IAChC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACgF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEQiE,UAAUA,CAAA,EAAS;IACzB,IAAI,CAACH,SAAS,CAAC,CAAC;IAChB,IAAI,CAACrG,SAAS,GAAG4G,WAAW,CAAC,MAAM;MACjC,IAAI,CAAC,IAAI,CAACzF,SAAS,CAACE,QAAQ,IAAI,IAAI,CAACF,SAAS,CAACC,SAAS,EAAE;QACxD,IAAI,CAACD,SAAS,CAACI,WAAW,IAAI,CAAC,CAAC,CAAC;;QAEjC;QACA,IAAI,IAAI,CAACJ,SAAS,CAACI,WAAW,IAAI,CAAC,EAAE;UACnC,IAAI,CAACJ,SAAS,CAACI,WAAW,GAAG,CAAC;UAC9B,IAAI,CAACJ,SAAS,CAACC,SAAS,GAAG,KAAK;UAChC,IAAI,CAACD,SAAS,CAACU,QAAQ,GAAG,IAAI;UAC9B,IAAI,CAACwE,SAAS,CAAC,CAAC;QAClB;QAEA,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;MAC9B;IACF,CAAC,EAAE,IAAI,CAAC;EACV;EAEQ8D,SAASA,CAAA,EAAS;IACxB,IAAI,IAAI,CAACrG,SAAS,EAAE;MAClB6G,aAAa,CAAC,IAAI,CAAC7G,SAAS,CAAC;MAC7B,IAAI,CAACA,SAAS,GAAG,IAAI;IACvB;EACF;EAEO8G,kBAAkBA,CAACC,WAAqB,EAAW;IACxD,IAAI,CAAC,IAAI,CAAC5F,SAAS,CAACC,SAAS,IAAI,IAAI,CAACD,SAAS,CAACE,QAAQ,EAAE;MACxD,OAAO,KAAK;IACd;;IAEA;IACA,IAAI,IAAI,CAAC2F,eAAe,CAACD,WAAW,CAAC,EAAE;MACrC,IAAI,CAAC5F,SAAS,CAACK,YAAY,GAAGuF,WAAW;;MAEzC;MACA,IAAI,CAAC,IAAI,CAAC5F,SAAS,CAACS,WAAW,IAAI,IAAI,CAACqF,YAAY,CAACF,WAAW,CAAC,EAAE;QACjE,IAAI,CAACG,aAAa,CAAC,CAAC;MACtB;MAEA,IAAI,CAAC3E,qBAAqB,CAAC,CAAC;MAC5B,OAAO,IAAI;IACb;IAEA,OAAO,KAAK;EACd;EAEQyE,eAAeA,CAACG,QAAkB,EAAW;IACnD,MAAM;MAAE1F,CAAC;MAAEC;IAAE,CAAC,GAAGyF,QAAQ;IACzB,MAAMC,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACK,SAAS,GAAG,CAAC;;IAEhD;IACA,KAAK,MAAM0D,IAAI,IAAI,IAAI,CAACtC,KAAK,EAAE;MAC7B,IAAI,IAAI,CAACsF,oBAAoB,CAAC5F,CAAC,EAAEC,CAAC,EAAE0F,UAAU,EAAE/C,IAAI,CAAC,EAAE;QACrD,OAAO,KAAK;MACd;IACF;;IAEA;IACA,MAAMiD,OAAO,GAAGF,UAAU,GAAG,CAAC;IAC9B,IAAI3F,CAAC,GAAG2F,UAAU,GAAGE,OAAO,IACxB7F,CAAC,GAAG2F,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACO,eAAe,GAAGyG,OAAO,IAC1D5F,CAAC,GAAG0F,UAAU,GAAGE,OAAO,IACxB5F,CAAC,GAAG0F,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACQ,gBAAgB,GAAGwG,OAAO,EAAE;MAC/D,OAAO,KAAK;IACd;IAEA,OAAO,IAAI;EACb;EAEQD,oBAAoBA,CAACE,KAAa,EAAEC,KAAa,EAAEJ,UAAkB,EAAE/C,IAAU,EAAW;IAClG;IACA,MAAMoD,QAAQ,GAAGhH,IAAI,CAACiH,GAAG,CAACrD,IAAI,CAAC5C,CAAC,EAAEhB,IAAI,CAACC,GAAG,CAAC6G,KAAK,EAAElD,IAAI,CAAC5C,CAAC,GAAG4C,IAAI,CAACwB,KAAK,CAAC,CAAC;IACvE,MAAM8B,QAAQ,GAAGlH,IAAI,CAACiH,GAAG,CAACrD,IAAI,CAAC3C,CAAC,EAAEjB,IAAI,CAACC,GAAG,CAAC8G,KAAK,EAAEnD,IAAI,CAAC3C,CAAC,GAAG2C,IAAI,CAACyB,MAAM,CAAC,CAAC;;IAExE;IACA,MAAM8B,SAAS,GAAGL,KAAK,GAAGE,QAAQ;IAClC,MAAMI,SAAS,GAAGL,KAAK,GAAGG,QAAQ;IAClC,MAAMG,eAAe,GAAGF,SAAS,GAAGA,SAAS,GAAGC,SAAS,GAAGA,SAAS;;IAErE;IACA,OAAOC,eAAe,GAAIV,UAAU,GAAGA,UAAW;EACpD;EAEQH,YAAYA,CAACE,QAAkB,EAAW;IAChD,MAAMY,QAAQ,GAAGtH,IAAI,CAACuH,IAAI,CACxBvH,IAAI,CAACwH,GAAG,CAACd,QAAQ,CAAC1F,CAAC,GAAG,IAAI,CAACN,SAAS,CAACQ,cAAc,CAACF,CAAC,EAAE,CAAC,CAAC,GACzDhB,IAAI,CAACwH,GAAG,CAACd,QAAQ,CAACzF,CAAC,GAAG,IAAI,CAACP,SAAS,CAACQ,cAAc,CAACD,CAAC,EAAE,CAAC,CAC1D,CAAC;IACD;IACA,OAAOqG,QAAQ,GAAI,IAAI,CAACzH,UAAU,CAACK,SAAS,GAAG,GAAI;EACrD;EAEQuG,aAAaA,CAAA,EAAS;IAC5B;IACA,MAAMgB,SAAS,GAAG,IAAI,CAAC/G,SAAS,CAACI,WAAW,GAAG,IAAI,CAACjB,UAAU,CAACW,qBAAqB;IACpF,IAAI,CAACE,SAAS,CAACG,KAAK,IAAI,IAAI,CAAChB,UAAU,CAACU,oBAAoB,GAAGkH,SAAS;IACxE,IAAI,CAAC/G,SAAS,CAACS,WAAW,GAAG,IAAI;IACjC,IAAI,CAACT,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACiF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEO4F,YAAYA,CAAA,EAAc;IAC/B,OAAO;MAAE,GAAG,IAAI,CAAChH;IAAU,CAAC;EAC9B;EAEOiH,aAAaA,CAAA,EAAe;IACjC,OAAO;MAAE,GAAG,IAAI,CAAC9H;IAAW,CAAC;EAC/B;EAEO+H,QAAQA,CAAA,EAAW;IACxB,OAAO,CAAC,GAAG,IAAI,CAACtG,KAAK,CAAC;EACxB;EAEOuG,OAAOA,CAAA,EAAiB;IAC7B,OAAO,IAAI,CAACxG,IAAI,CAACiC,GAAG,CAACwE,GAAG,IAAIA,GAAG,CAACxE,GAAG,CAACqB,IAAI,KAAK;MAAE,GAAGA;IAAK,CAAC,CAAC,CAAC,CAAC;EAC7D;EAEOoD,OAAOA,CAAA,EAAS;IACrB,IAAI,CAACnC,SAAS,CAAC,CAAC;EAClB;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["MazeRunnerService","gameTimer","constructor","gridSize","gameAreaWidth","gameAreaHeight","gameDuration","gameConfig","GRID_SIZE","CELL_SIZE","Math","min","BALL_SIZE","PIPE_WIDTH","GAME_AREA_WIDTH","GAME_AREA_HEIGHT","COLLISION_TOLERANCE","SCORE_PER_COMPLETION","TIME_BONUS_MULTIPLIER","GAME_DURATION","gameState","isPlaying","isPaused","score","timeElapsed","ballPosition","x","y","targetPosition","isCompleted","gameOver","maze","walls","initializeMaze","generateMazeWithBacktracking","generateWalls","setStartAndEndPositions","setGameStateChangeCallback","callback","onGameStateChange","notifyGameStateChange","top","right","bottom","left","visited","generateNewMaze","stack","startCell","push","length","current","neighbors","getUnvisitedNeighbors","next","floor","random","removeWallBetween","pop","ensureConnectivity","hasPathFromStartToEnd","createMinimalPath","Array","fill","map","queue","shift","directions","dx","dy","wall","dir","newX","newY","currentCell","currentX","currentY","endX","endY","Set","key","has","add","possibleMoves","direction","cell","rightCell","bottomCell","leftCell","topCell","wallThickness","cellSize","mazeWidth","mazeHeight","width","height","type","cellX","cellY","updateSettings","newGameAreaWidth","newGameAreaHeight","stopTimer","resetGame","startGame","startTimer","pauseGame","resumeGame","stopGame","setInterval","clearInterval","updateBallPosition","newPosition","isValidPosition","isNearTarget","completeLevel","position","ballRadius","ballCollidesWithWall","padding","ballX","ballY","closestX","max","closestY","distanceX","distanceY","distanceSquared","distance","sqrt","pow","getGameState","getGameConfig","getWalls","getMaze","row","formatTime","seconds","minutes","remainingSeconds","toString","padStart","cleanup"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunnerService.ts"],"mappings":";;AAiDA,OAAO,MAAMA,iBAAiB,CAAC;EAKrBC,SAAS,GAA0B,IAAI;EAG/CC,WAAWA,CACTC,QAAgB,GAAG,EAAE,EACrBC,aAAqB,GAAG,GAAG,EAC3BC,cAAsB,GAAG,GAAG,EAC5BC,YAAoB,GAAG,GAAG,EAC1B;IACA,IAAI,CAACC,UAAU,GAAG;MAChBC,SAAS,EAAEL,QAAQ;MACnBM,SAAS,EAAEC,IAAI,CAACC,GAAG,CAACP,aAAa,EAAEC,cAAc,CAAC,GAAGF,QAAQ;MAC7DS,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE,CAAC;MACbC,eAAe,EAAEV,aAAa;MAC9BW,gBAAgB,EAAEV,cAAc;MAChCW,mBAAmB,EAAE,CAAC;MACtBC,oBAAoB,EAAE,GAAG;MACzBC,qBAAqB,EAAE,EAAE;MACzBC,aAAa,EAAEb;IACjB,CAAC;IAED,IAAI,CAACc,SAAS,GAAG;MACfC,SAAS,EAAE,KAAK;MAChBC,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE,CAAC;MACRC,WAAW,EAAE,CAAC;MAAE;MAChBC,YAAY,EAAE;QAAEC,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC;MAC5BC,cAAc,EAAE;QAAEF,CAAC,EAAE,CAAC;QAAEC,CAAC,EAAE;MAAE,CAAC;MAC9BE,WAAW,EAAE,KAAK;MAClBC,QAAQ,EAAE;IACZ,CAAC;IAED,IAAI,CAACC,IAAI,GAAG,EAAE;IACd,IAAI,CAACC,KAAK,GAAG,EAAE;IACf,IAAI,CAACC,cAAc,CAAC,CAAC;IACrB;IACA,IAAI,CAACC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAACC,aAAa,CAAC,CAAC;IACpB,IAAI,CAACC,uBAAuB,CAAC,CAAC;EAChC;EAEOC,0BAA0BA,CAACC,QAAoC,EAAE;IACtE,IAAI,CAACC,iBAAiB,GAAGD,QAAQ;EACnC;EAEQE,qBAAqBA,CAAA,EAAG;IAC9B,IAAI,IAAI,CAACD,iBAAiB,EAAE;MAC1B,IAAI,CAACA,iBAAiB,CAAC;QAAE,GAAG,IAAI,CAACnB;MAAU,CAAC,CAAC;IAC/C;EACF;EAEQa,cAAcA,CAAA,EAAG;IACvB;IACA,IAAI,CAACF,IAAI,GAAG,EAAE;IACd,KAAK,IAAIJ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,EAAEmB,CAAC,EAAE,EAAE;MAClD,IAAI,CAACI,IAAI,CAACJ,CAAC,CAAC,GAAG,EAAE;MACjB,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,EAAEkB,CAAC,EAAE,EAAE;QAClD,IAAI,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,EAAE;UAChB,IAAI,CAACI,IAAI,CAACJ,CAAC,CAAC,CAAED,CAAC,CAAC,GAAG;YACnBA,CAAC;YACDC,CAAC;YACDK,KAAK,EAAE;cAAES,GAAG,EAAE,IAAI;cAAEC,KAAK,EAAE,IAAI;cAAEC,MAAM,EAAE,IAAI;cAAEC,IAAI,EAAE;YAAK,CAAC;YAC3DC,OAAO,EAAE;UACT,CAAC;QACH;MACF;IACF;EACF;EAEOC,eAAeA,CAAA,EAAS;IAC7B,IAAI,CAACb,cAAc,CAAC,CAAC;IACrB,IAAI,CAACC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAACC,aAAa,CAAC,CAAC;IACpB,IAAI,CAACC,uBAAuB,CAAC,CAAC;;IAE9B;IACA,IAAI,CAAChB,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACV,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,CAAC,CAAC,CAAC;;IAEhC,IAAI,CAACgB,qBAAqB,CAAC,CAAC;EAC9B;EAEQN,4BAA4BA,CAAA,EAAG;IACrC;IACA,MAAMa,KAAiB,GAAG,EAAE;IAC5B,MAAMC,SAAS,GAAG,IAAI,CAACjB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnC,IAAIiB,SAAS,EAAE;MACbA,SAAS,CAACH,OAAO,GAAG,IAAI;MACxBE,KAAK,CAACE,IAAI,CAACD,SAAS,CAAC;IACvB;IAEA,OAAOD,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;MACvB,MAAMC,OAAO,GAAGJ,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;MACvC,MAAME,SAAS,GAAGD,OAAO,GAAG,IAAI,CAACE,qBAAqB,CAACF,OAAO,CAAC,GAAG,EAAE;MAEpE,IAAIC,SAAS,CAACF,MAAM,GAAG,CAAC,EAAE;QACxB;QACA,MAAMI,IAAI,GAAGF,SAAS,CAAC1C,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAGJ,SAAS,CAACF,MAAM,CAAC,CAAC;QACpE,IAAIC,OAAO,IAAIG,IAAI,EAAE,IAAI,CAACG,iBAAiB,CAACN,OAAO,EAAEG,IAAI,CAAC;QAC1D,IAAIA,IAAI,EAAE;UACRA,IAAI,CAACT,OAAO,GAAG,IAAI;UACnBE,KAAK,CAACE,IAAI,CAACK,IAAI,CAAC;QAClB;MACF,CAAC,MAAM;QACLP,KAAK,CAACW,GAAG,CAAC,CAAC;MACb;IACF;;IAEA;IACA,IAAI,CAACC,kBAAkB,CAAC,CAAC;EAC3B;EAEQA,kBAAkBA,CAAA,EAAG;IAC3B;IACA;IACA,IAAI,CAAC,IAAI,CAACC,qBAAqB,CAAC,CAAC,EAAE;MACjC;MACA,IAAI,CAACC,iBAAiB,CAAC,CAAC;IAC1B;EACF;EAEQD,qBAAqBA,CAAA,EAAY;IACvC;IACA,MAAMf,OAAO,GAAGiB,KAAK,CAAC,IAAI,CAACvD,UAAU,CAACC,SAAS,CAAC,CAACuD,IAAI,CAAC,IAAI,CAAC,CAACC,GAAG,CAAC,MAAMF,KAAK,CAAC,IAAI,CAACvD,UAAU,CAACC,SAAS,CAAC,CAACuD,IAAI,CAAC,KAAK,CAAC,CAAC;IACnH,MAAME,KAA+B,GAAG,CAAC;MAACvC,CAAC,EAAE,CAAC;MAAEC,CAAC,EAAE;IAAC,CAAC,CAAC;IACtD,IAAIkB,OAAO,CAAC,CAAC,CAAC,EAAEA,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAEpC,OAAOoB,KAAK,CAACf,MAAM,GAAG,CAAC,EAAE;MACvB,MAAMC,OAAO,GAAGc,KAAK,CAACC,KAAK,CAAC,CAAE;MAE9B,IAAIf,OAAO,CAACzB,CAAC,KAAK,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI2C,OAAO,CAACxB,CAAC,KAAK,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,EAAE;QAC9F,OAAO,IAAI,CAAC,CAAC;MACf;;MAEA;MACA,MAAM2D,UAAU,GAAG,CACjB;QAACC,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC,CAAC;QAAEC,IAAI,EAAE;MAAK,CAAC;MAAE;MAC9B;QAACF,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAO,CAAC;MAAE;MAC/B;QAACF,EAAE,EAAE,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAQ,CAAC;MAAE;MAChC;QAACF,EAAE,EAAE,CAAC,CAAC;QAAEC,EAAE,EAAE,CAAC;QAAEC,IAAI,EAAE;MAAM,CAAC,CAAC;MAAA,CAC/B;MAED,KAAK,MAAMC,GAAG,IAAIJ,UAAU,EAAE;QAC5B,MAAMK,IAAI,GAAGrB,OAAO,CAACzB,CAAC,GAAG6C,GAAG,CAACH,EAAE;QAC/B,MAAMK,IAAI,GAAGtB,OAAO,CAACxB,CAAC,GAAG4C,GAAG,CAACF,EAAE;QAE/B,IAAIG,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAG,IAAI,CAACjE,UAAU,CAACC,SAAS,IAC7CiE,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAG,IAAI,CAAClE,UAAU,CAACC,SAAS,IAC7C,CAACqC,OAAO,CAAC4B,IAAI,CAAC,GAAGD,IAAI,CAAC,EAAE;UAE1B;UACA,MAAME,WAAW,GAAG,IAAI,CAAC3C,IAAI,CAACoB,OAAO,CAACxB,CAAC,CAAC,GAAGwB,OAAO,CAACzB,CAAC,CAAC;UACrD,IAAIgD,WAAW,IAAI,CAACA,WAAW,CAAC1C,KAAK,CAACuC,GAAG,CAACD,IAAI,CAAmC,EAAE;YACjF,IAAIzB,OAAO,CAAC4B,IAAI,CAAC,EAAE5B,OAAO,CAAC4B,IAAI,CAAC,CAACD,IAAI,CAAC,GAAG,IAAI;YAC7CP,KAAK,CAAChB,IAAI,CAAC;cAACvB,CAAC,EAAE8C,IAAI;cAAE7C,CAAC,EAAE8C;YAAI,CAAC,CAAC;UAChC;QACF;MACF;IACF;IAEA,OAAO,KAAK,CAAC,CAAC;EAChB;EAEQZ,iBAAiBA,CAAA,EAAG;IAC1B;IACA;IACA,IAAIc,QAAQ,GAAG,CAAC;IAChB,IAAIC,QAAQ,GAAG,CAAC;IAChB,MAAMC,IAAI,GAAG,IAAI,CAACtE,UAAU,CAACC,SAAS,GAAG,CAAC;IAC1C,MAAMsE,IAAI,GAAG,IAAI,CAACvE,UAAU,CAACC,SAAS,GAAG,CAAC;IAC1C,MAAMqC,OAAO,GAAG,IAAIkC,GAAG,CAAS,CAAC;IAEjC,OAAOJ,QAAQ,KAAKE,IAAI,IAAID,QAAQ,KAAKE,IAAI,EAAE;MAC7C,MAAME,GAAG,GAAG,GAAGL,QAAQ,IAAIC,QAAQ,EAAE;MACrC,IAAI/B,OAAO,CAACoC,GAAG,CAACD,GAAG,CAAC,EAAE;QACpB;QACA;MACF;MACAnC,OAAO,CAACqC,GAAG,CAACF,GAAG,CAAC;;MAEhB;MACA,MAAMG,aAAa,GAAG,EAAE;MAExB,IAAIR,QAAQ,GAAGE,IAAI,EAAEM,aAAa,CAAClC,IAAI,CAAC,OAAO,CAAC;MAChD,IAAI2B,QAAQ,GAAGE,IAAI,EAAEK,aAAa,CAAClC,IAAI,CAAC,MAAM,CAAC;MAC/C,IAAI0B,QAAQ,GAAG,CAAC,EAAEQ,aAAa,CAAClC,IAAI,CAAC,MAAM,CAAC;MAC5C,IAAI2B,QAAQ,GAAG,CAAC,EAAEO,aAAa,CAAClC,IAAI,CAAC,IAAI,CAAC;MAE1C,IAAIkC,aAAa,CAACjC,MAAM,KAAK,CAAC,EAAE;;MAEhC;MACA,IAAIkC,SAAS;MACb,IAAI1E,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG,GAAG,KAAKmB,QAAQ,KAAKE,IAAI,IAAID,QAAQ,KAAKE,IAAI,CAAC,EAAE;QACnE;QACA,IAAIH,QAAQ,GAAGE,IAAI,IAAInE,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE;UAC1C4B,SAAS,GAAG,OAAO;QACrB,CAAC,MAAM,IAAIR,QAAQ,GAAGE,IAAI,EAAE;UAC1BM,SAAS,GAAG,MAAM;QACpB,CAAC,MAAM,IAAIT,QAAQ,GAAGE,IAAI,EAAE;UAC1BO,SAAS,GAAG,OAAO;QACrB,CAAC,MAAM;UACLA,SAAS,GAAGD,aAAa,CAACzE,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG2B,aAAa,CAACjC,MAAM,CAAC,CAAC;QAC7E;MACF,CAAC,MAAM;QACL;QACAkC,SAAS,GAAGD,aAAa,CAACzE,IAAI,CAAC6C,KAAK,CAAC7C,IAAI,CAAC8C,MAAM,CAAC,CAAC,GAAG2B,aAAa,CAACjC,MAAM,CAAC,CAAC;MAC7E;;MAEA;MACA,MAAMmC,IAAI,GAAG,IAAI,CAACtD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,CAAC;MAC5C,IAAIS,SAAS,KAAK,OAAO,IAAIT,QAAQ,GAAG,IAAI,CAACpE,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI6E,IAAI,EAAE;QAC7EA,IAAI,CAACrD,KAAK,CAACU,KAAK,GAAG,KAAK;QACxB,MAAM4C,SAAS,GAAG,IAAI,CAACvD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,GAAG,CAAC,CAAC;QACrD,IAAIW,SAAS,EAAEA,SAAS,CAACtD,KAAK,CAACY,IAAI,GAAG,KAAK;QAC3C+B,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIS,SAAS,KAAK,MAAM,IAAIR,QAAQ,GAAG,IAAI,CAACrE,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI6E,IAAI,EAAE;QACnFA,IAAI,CAACrD,KAAK,CAACW,MAAM,GAAG,KAAK;QACzB,MAAM4C,UAAU,GAAG,IAAI,CAACxD,IAAI,CAAC6C,QAAQ,GAAG,CAAC,CAAC,GAAGD,QAAQ,CAAC;QACtD,IAAIY,UAAU,EAAEA,UAAU,CAACvD,KAAK,CAACS,GAAG,GAAG,KAAK;QAC5CmC,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIQ,SAAS,KAAK,MAAM,IAAIT,QAAQ,GAAG,CAAC,IAAIU,IAAI,EAAE;QACvDA,IAAI,CAACrD,KAAK,CAACY,IAAI,GAAG,KAAK;QACvB,MAAM4C,QAAQ,GAAG,IAAI,CAACzD,IAAI,CAAC6C,QAAQ,CAAC,GAAGD,QAAQ,GAAG,CAAC,CAAC;QACpD,IAAIa,QAAQ,EAAEA,QAAQ,CAACxD,KAAK,CAACU,KAAK,GAAG,KAAK;QAC1CiC,QAAQ,EAAE;MACZ,CAAC,MAAM,IAAIS,SAAS,KAAK,IAAI,IAAIR,QAAQ,GAAG,CAAC,IAAIS,IAAI,EAAE;QACrDA,IAAI,CAACrD,KAAK,CAACS,GAAG,GAAG,KAAK;QACtB,MAAMgD,OAAO,GAAG,IAAI,CAAC1D,IAAI,CAAC6C,QAAQ,GAAG,CAAC,CAAC,GAAGD,QAAQ,CAAC;QACnD,IAAIc,OAAO,EAAEA,OAAO,CAACzD,KAAK,CAACW,MAAM,GAAG,KAAK;QACzCiC,QAAQ,EAAE;MACZ;IACF;EACF;EAEQvB,qBAAqBA,CAACgC,IAAc,EAAc;IACxD,MAAMjC,SAAqB,GAAG,EAAE;IAChC,MAAM;MAAE1B,CAAC;MAAEC;IAAE,CAAC,GAAG0D,IAAI;;IAErB;IACA,IAAI1D,CAAC,GAAG,CAAC,IAAI,IAAI,CAACI,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACrE,MAAM4C,OAAO,GAAG,IAAI,CAAC1D,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC;MACrC,IAAI+D,OAAO,EAAE;QACXrC,SAAS,CAACH,IAAI,CAACwC,OAAO,CAAC;MACzB;IACF;IACA;IACA,IAAI/D,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACuB,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACjG,MAAMyC,SAAS,GAAG,IAAI,CAACvD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC;MACvC,IAAI4D,SAAS,EAAE;QACblC,SAAS,CAACH,IAAI,CAACqC,SAAS,CAAC;MAC3B;IACF;IACA;IACA,IAAI3D,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACuB,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACjG,MAAM0C,UAAU,GAAG,IAAI,CAACxD,IAAI,CAACJ,CAAC,GAAG,CAAC,CAAC,GAAGD,CAAC,CAAC;MACxC,IAAI6D,UAAU,EAAE;QACdnC,SAAS,CAACH,IAAI,CAACsC,UAAU,CAAC;MAC5B;IACF;IACA;IACA,IAAI7D,CAAC,GAAG,CAAC,IAAI,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAACK,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC,EAAEmB,OAAO,EAAE;MACrE,MAAM2C,QAAQ,GAAG,IAAI,CAACzD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,GAAG,CAAC,CAAC;MACtC,IAAI8D,QAAQ,EAAE;QACZpC,SAAS,CAACH,IAAI,CAACuC,QAAQ,CAAC;MAC1B;IACF;IAEA,OAAOpC,SAAS;EAClB;EAEQK,iBAAiBA,CAACN,OAAiB,EAAEG,IAAc,EAAE;IAC3D,MAAMc,EAAE,GAAGjB,OAAO,CAACzB,CAAC,GAAG4B,IAAI,CAAC5B,CAAC;IAC7B,MAAM2C,EAAE,GAAGlB,OAAO,CAACxB,CAAC,GAAG2B,IAAI,CAAC3B,CAAC;IAE7B,IAAIyC,EAAE,KAAK,CAAC,EAAE;MACZ;MACAjB,OAAO,CAACnB,KAAK,CAACY,IAAI,GAAG,KAAK;MAC1BU,IAAI,CAACtB,KAAK,CAACU,KAAK,GAAG,KAAK;IAC1B,CAAC,MAAM,IAAI0B,EAAE,KAAK,CAAC,CAAC,EAAE;MACpB;MACAjB,OAAO,CAACnB,KAAK,CAACU,KAAK,GAAG,KAAK;MAC3BY,IAAI,CAACtB,KAAK,CAACY,IAAI,GAAG,KAAK;IACzB,CAAC,MAAM,IAAIyB,EAAE,KAAK,CAAC,EAAE;MACnB;MACAlB,OAAO,CAACnB,KAAK,CAACS,GAAG,GAAG,KAAK;MACzBa,IAAI,CAACtB,KAAK,CAACW,MAAM,GAAG,KAAK;IAC3B,CAAC,MAAM,IAAI0B,EAAE,KAAK,CAAC,CAAC,EAAE;MACpB;MACAlB,OAAO,CAACnB,KAAK,CAACW,MAAM,GAAG,KAAK;MAC5BW,IAAI,CAACtB,KAAK,CAACS,GAAG,GAAG,KAAK;IACxB;EACF;EAEQN,aAAaA,CAAA,EAAG;IACtB,IAAI,CAACH,KAAK,GAAG,EAAE;IACf,MAAM0D,aAAa,GAAG,CAAC;IACvB,MAAMC,QAAQ,GAAG,IAAI,CAACpF,UAAU,CAACE,SAAS;IAC1C,MAAMmF,SAAS,GAAG,IAAI,CAACrF,UAAU,CAACC,SAAS,GAAGmF,QAAQ;IACtD,MAAME,UAAU,GAAG,IAAI,CAACtF,UAAU,CAACC,SAAS,GAAGmF,QAAQ;;IAEvD;IACA;IACA,IAAI,CAAC3D,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEF,SAAS;MAChBG,MAAM,EAAEL,aAAa;MACrBM,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAEkE,UAAU,GAAGH,aAAa;MAC7BI,KAAK,EAAEF,SAAS;MAChBG,MAAM,EAAEL,aAAa;MACrBM,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAE,CAAC;MACJC,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEJ,aAAa;MACpBK,MAAM,EAAEF,UAAU;MAClBG,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA,IAAI,CAAChE,KAAK,CAACiB,IAAI,CAAC;MACdvB,CAAC,EAAEkE,SAAS,GAAGF,aAAa;MAC5B/D,CAAC,EAAE,CAAC;MACJmE,KAAK,EAAEJ,aAAa;MACpBK,MAAM,EAAEF,UAAU;MAClBG,IAAI,EAAE;IACR,CAAC,CAAC;;IAEF;IACA;IACA,KAAK,IAAIrE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACpB,UAAU,CAACC,SAAS,EAAEmB,CAAC,EAAE,EAAE;MAClD,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACnB,UAAU,CAACC,SAAS,EAAEkB,CAAC,EAAE,EAAE;QAClD,MAAM2D,IAAI,GAAG,IAAI,CAACtD,IAAI,CAACJ,CAAC,CAAC,GAAGD,CAAC,CAAC;QAC9B,IAAI,CAAC2D,IAAI,EAAE;QAEX,MAAMY,KAAK,GAAGvE,CAAC,GAAGiE,QAAQ;QAC1B,MAAMO,KAAK,GAAGvE,CAAC,GAAGgE,QAAQ;;QAE1B;QACA;QACA,IAAIN,IAAI,CAACrD,KAAK,CAACS,GAAG,IAAId,CAAC,GAAG,CAAC,EAAE;UAC3B,IAAI,CAACK,KAAK,CAACiB,IAAI,CAAC;YACdvB,CAAC,EAAEuE,KAAK;YACRtE,CAAC,EAAEuE,KAAK;YACRJ,KAAK,EAAEH,QAAQ;YACfI,MAAM,EAAEL,aAAa;YACrBM,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;;QAEA;QACA;QACA,IAAIX,IAAI,CAACrD,KAAK,CAACY,IAAI,IAAIlB,CAAC,GAAG,CAAC,EAAE;UAC5B,IAAI,CAACM,KAAK,CAACiB,IAAI,CAAC;YACdvB,CAAC,EAAEuE,KAAK;YACRtE,CAAC,EAAEuE,KAAK;YACRJ,KAAK,EAAEJ,aAAa;YACpBK,MAAM,EAAEJ,QAAQ;YAChBK,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;MACF;IACF;EACF;EAEQ5D,uBAAuBA,CAAA,EAAG;IAChC,MAAMuD,QAAQ,GAAG,IAAI,CAACpF,UAAU,CAACE,SAAS;;IAE1C;IACA,IAAI,CAACW,SAAS,CAACK,YAAY,GAAG;MAC5BC,CAAC,EAAEiE,QAAQ,GAAG,CAAC;MACfhE,CAAC,EAAEgE,QAAQ,GAAG;IAChB,CAAC;;IAED;IACA,IAAI,CAACvE,SAAS,CAACQ,cAAc,GAAG;MAC9BF,CAAC,EAAE,CAAC,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAImF,QAAQ,GAAGA,QAAQ,GAAG,CAAC;MAC5DhE,CAAC,EAAE,CAAC,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAImF,QAAQ,GAAGA,QAAQ,GAAG;IAC7D,CAAC;EACH;EAEOQ,cAAcA,CAAChG,QAAgB,EAAEG,YAAoB,EAAEF,aAAsB,EAAEC,cAAuB,EAAQ;IACnH;IACA,MAAM+F,gBAAgB,GAAGhG,aAAa,IAAI,IAAI,CAACG,UAAU,CAACO,eAAe;IACzE,MAAMuF,iBAAiB,GAAGhG,cAAc,IAAI,IAAI,CAACE,UAAU,CAACQ,gBAAgB;IAE5E,IAAI,CAACR,UAAU,CAACC,SAAS,GAAGL,QAAQ;IACpC,IAAI,CAACI,UAAU,CAACO,eAAe,GAAGsF,gBAAgB;IAClD,IAAI,CAAC7F,UAAU,CAACQ,gBAAgB,GAAGsF,iBAAiB;IACpD,IAAI,CAAC9F,UAAU,CAACE,SAAS,GAAGC,IAAI,CAACC,GAAG,CAACyF,gBAAgB,EAAEC,iBAAiB,CAAC,GAAGlG,QAAQ;IACpF,IAAI,CAACI,UAAU,CAACY,aAAa,GAAGb,YAAY,CAAC,CAAC;;IAE9C;IACA,IAAI,CAACwC,eAAe,CAAC,CAAC;;IAEtB;IACA,IAAI,CAAC1B,SAAS,CAACC,SAAS,GAAG,KAAK;IAChC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACI,WAAW,GAAG,CAAC,CAAC,CAAC;IAChC,IAAI,CAACJ,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACwE,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEO+D,SAASA,CAAA,EAAS;IACvB;IACA,IAAI,CAACzD,eAAe,CAAC,CAAC;;IAEtB;IACA,IAAI,CAAC1B,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,CAAC,CAAC,CAAC;IAChC,IAAI,CAACJ,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACwE,SAAS,CAAC,CAAC,CAAC,CAAC;IAClB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEOgE,SAASA,CAAA,EAAS;IACvB;IACA,IAAI,CAACpF,SAAS,CAACK,YAAY,GAAG;MAAEC,CAAC,EAAE,IAAI,CAACnB,UAAU,CAACE,SAAS,GAAG,CAAC;MAAEkB,CAAC,EAAE,IAAI,CAACpB,UAAU,CAACE,SAAS,GAAG;IAAE,CAAC;IACpG,IAAI,CAACW,SAAS,CAACQ,cAAc,GAAG;MAC9BF,CAAC,EAAE,CAAC,IAAI,CAACnB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACD,UAAU,CAACE,SAAS,GAAG,IAAI,CAACF,UAAU,CAACE,SAAS,GAAG,CAAC;MAC9FkB,CAAC,EAAE,CAAC,IAAI,CAACpB,UAAU,CAACC,SAAS,GAAG,CAAC,IAAI,IAAI,CAACD,UAAU,CAACE,SAAS,GAAG,IAAI,CAACF,UAAU,CAACE,SAAS,GAAG;IAC/F,CAAC;IAED,IAAI,CAACW,SAAS,CAACC,SAAS,GAAG,IAAI;IAC/B,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACF,SAAS,CAACG,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,CAACH,SAAS,CAACI,WAAW,GAAG,CAAC,CAAC,CAAC;IAChC,IAAI,CAACJ,SAAS,CAACS,WAAW,GAAG,KAAK;IAClC,IAAI,CAACT,SAAS,CAACU,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAAC2E,UAAU,CAAC,CAAC;IACjB,IAAI,CAACjE,qBAAqB,CAAC,CAAC;EAC9B;EAEOkE,SAASA,CAAA,EAAS;IACvB,IAAI,CAACtF,SAAS,CAACE,QAAQ,GAAG,IAAI;IAC9B,IAAI,CAACgF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEOmE,UAAUA,CAAA,EAAS;IACxB,IAAI,CAACvF,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACmF,UAAU,CAAC,CAAC;IACjB,IAAI,CAACjE,qBAAqB,CAAC,CAAC;EAC9B;EAEOoE,QAAQA,CAAA,EAAS;IACtB,IAAI,CAACxF,SAAS,CAACC,SAAS,GAAG,KAAK;IAChC,IAAI,CAACD,SAAS,CAACE,QAAQ,GAAG,KAAK;IAC/B,IAAI,CAACgF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEQiE,UAAUA,CAAA,EAAS;IACzB,IAAI,CAACH,SAAS,CAAC,CAAC;IAChB,IAAI,CAACrG,SAAS,GAAG4G,WAAW,CAAC,MAAM;MACjC,IAAI,CAAC,IAAI,CAACzF,SAAS,CAACE,QAAQ,IAAI,IAAI,CAACF,SAAS,CAACC,SAAS,EAAE;QACxD,IAAI,CAACD,SAAS,CAACI,WAAW,IAAI,CAAC,CAAC,CAAC;;QAEjC;QACA;;QAEA,IAAI,CAACgB,qBAAqB,CAAC,CAAC;MAC9B;IACF,CAAC,EAAE,IAAI,CAAC;EACV;EAEQ8D,SAASA,CAAA,EAAS;IACxB,IAAI,IAAI,CAACrG,SAAS,EAAE;MAClB6G,aAAa,CAAC,IAAI,CAAC7G,SAAS,CAAC;MAC7B,IAAI,CAACA,SAAS,GAAG,IAAI;IACvB;EACF;EAEO8G,kBAAkBA,CAACC,WAAqB,EAAW;IACxD,IAAI,CAAC,IAAI,CAAC5F,SAAS,CAACC,SAAS,IAAI,IAAI,CAACD,SAAS,CAACE,QAAQ,EAAE;MACxD,OAAO,KAAK;IACd;;IAEA;IACA,IAAI,IAAI,CAAC2F,eAAe,CAACD,WAAW,CAAC,EAAE;MACrC,IAAI,CAAC5F,SAAS,CAACK,YAAY,GAAGuF,WAAW;;MAEzC;MACA,IAAI,CAAC,IAAI,CAAC5F,SAAS,CAACS,WAAW,IAAI,IAAI,CAACqF,YAAY,CAACF,WAAW,CAAC,EAAE;QACjE,IAAI,CAACG,aAAa,CAAC,CAAC;MACtB;MAEA,IAAI,CAAC3E,qBAAqB,CAAC,CAAC;MAC5B,OAAO,IAAI;IACb;IAEA,OAAO,KAAK;EACd;EAEQyE,eAAeA,CAACG,QAAkB,EAAW;IACnD,MAAM;MAAE1F,CAAC;MAAEC;IAAE,CAAC,GAAGyF,QAAQ;IACzB,MAAMC,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACK,SAAS,GAAG,CAAC;;IAEhD;IACA,KAAK,MAAM0D,IAAI,IAAI,IAAI,CAACtC,KAAK,EAAE;MAC7B,IAAI,IAAI,CAACsF,oBAAoB,CAAC5F,CAAC,EAAEC,CAAC,EAAE0F,UAAU,EAAE/C,IAAI,CAAC,EAAE;QACrD,OAAO,KAAK;MACd;IACF;;IAEA;IACA,MAAMiD,OAAO,GAAGF,UAAU,GAAG,CAAC;IAC9B,IAAI3F,CAAC,GAAG2F,UAAU,GAAGE,OAAO,IACxB7F,CAAC,GAAG2F,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACO,eAAe,GAAGyG,OAAO,IAC1D5F,CAAC,GAAG0F,UAAU,GAAGE,OAAO,IACxB5F,CAAC,GAAG0F,UAAU,GAAG,IAAI,CAAC9G,UAAU,CAACQ,gBAAgB,GAAGwG,OAAO,EAAE;MAC/D,OAAO,KAAK;IACd;IAEA,OAAO,IAAI;EACb;EAEQD,oBAAoBA,CAACE,KAAa,EAAEC,KAAa,EAAEJ,UAAkB,EAAE/C,IAAU,EAAW;IAClG;IACA,MAAMoD,QAAQ,GAAGhH,IAAI,CAACiH,GAAG,CAACrD,IAAI,CAAC5C,CAAC,EAAEhB,IAAI,CAACC,GAAG,CAAC6G,KAAK,EAAElD,IAAI,CAAC5C,CAAC,GAAG4C,IAAI,CAACwB,KAAK,CAAC,CAAC;IACvE,MAAM8B,QAAQ,GAAGlH,IAAI,CAACiH,GAAG,CAACrD,IAAI,CAAC3C,CAAC,EAAEjB,IAAI,CAACC,GAAG,CAAC8G,KAAK,EAAEnD,IAAI,CAAC3C,CAAC,GAAG2C,IAAI,CAACyB,MAAM,CAAC,CAAC;;IAExE;IACA,MAAM8B,SAAS,GAAGL,KAAK,GAAGE,QAAQ;IAClC,MAAMI,SAAS,GAAGL,KAAK,GAAGG,QAAQ;IAClC,MAAMG,eAAe,GAAGF,SAAS,GAAGA,SAAS,GAAGC,SAAS,GAAGA,SAAS;;IAErE;IACA,OAAOC,eAAe,GAAIV,UAAU,GAAGA,UAAW;EACpD;EAEQH,YAAYA,CAACE,QAAkB,EAAW;IAChD,MAAMY,QAAQ,GAAGtH,IAAI,CAACuH,IAAI,CACxBvH,IAAI,CAACwH,GAAG,CAACd,QAAQ,CAAC1F,CAAC,GAAG,IAAI,CAACN,SAAS,CAACQ,cAAc,CAACF,CAAC,EAAE,CAAC,CAAC,GACzDhB,IAAI,CAACwH,GAAG,CAACd,QAAQ,CAACzF,CAAC,GAAG,IAAI,CAACP,SAAS,CAACQ,cAAc,CAACD,CAAC,EAAE,CAAC,CAC1D,CAAC;IACD;IACA,OAAOqG,QAAQ,GAAI,IAAI,CAACzH,UAAU,CAACK,SAAS,GAAG,GAAI;EACrD;EAEQuG,aAAaA,CAAA,EAAS;IAC5B;IACA,IAAI,CAAC/F,SAAS,CAACG,KAAK,IAAI,IAAI,CAAChB,UAAU,CAACU,oBAAoB;IAC5D,IAAI,CAACG,SAAS,CAACS,WAAW,GAAG,IAAI;IACjC,IAAI,CAACT,SAAS,CAACC,SAAS,GAAG,KAAK,CAAC,CAAC;IAClC,IAAI,CAACiF,SAAS,CAAC,CAAC;IAChB,IAAI,CAAC9D,qBAAqB,CAAC,CAAC;EAC9B;EAEO2F,YAAYA,CAAA,EAAc;IAC/B,OAAO;MAAE,GAAG,IAAI,CAAC/G;IAAU,CAAC;EAC9B;EAEOgH,aAAaA,CAAA,EAAe;IACjC,OAAO;MAAE,GAAG,IAAI,CAAC7H;IAAW,CAAC;EAC/B;EAEO8H,QAAQA,CAAA,EAAW;IACxB,OAAO,CAAC,GAAG,IAAI,CAACrG,KAAK,CAAC;EACxB;EAEOsG,OAAOA,CAAA,EAAiB;IAC7B,OAAO,IAAI,CAACvG,IAAI,CAACiC,GAAG,CAACuE,GAAG,IAAIA,GAAG,CAACvE,GAAG,CAACqB,IAAI,KAAK;MAAE,GAAGA;IAAK,CAAC,CAAC,CAAC,CAAC;EAC7D;;EAEA;EACOmD,UAAUA,CAACC,OAAe,EAAU;IACzC,MAAMC,OAAO,GAAGhI,IAAI,CAAC6C,KAAK,CAACkF,OAAO,GAAG,EAAE,CAAC;IACxC,MAAME,gBAAgB,GAAGF,OAAO,GAAG,EAAE;IACrC,OAAO,GAAGC,OAAO,IAAIC,gBAAgB,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;EACrE;EAEOC,OAAOA,CAAA,EAAS;IACrB,IAAI,CAACxC,SAAS,CAAC,CAAC;EAClB;AACF","ignoreList":[]}
|