Author Topic: MAZEBALL: Tilt Maze puzzle clone  (Read 6461 times)

0 Members and 1 Guest are viewing this topic.

Offline Dav

  • Forum Resident
  • Posts: 792
    • View Profile
MAZEBALL: Tilt Maze puzzle clone
« on: August 20, 2020, 08:19:16 pm »
This is a tilt maze puzzle game clone, where you try to get the ball to a certain place in the maze.   I did not come up with the idea of this puzzle game, just wanted to clone it in QB64.   Tilt maze is a popular maze puzzle.  Someone on The Qbasic Forum even posted a SCREEN 0 version of one a few years ago which got me into it, and I've been playing other tilt maze puzzles online since then.  Hope you enjoy this game.

This is a pure QB64 code only game, no external files needed, just the one BAS source.

NOTE: Please read the credits, as they were my inspiration and deserve credit for this QB64 version to exist. 

EDIT: Latest version of this game is here:
https://www.qb64.org/forum/index.php?topic=2936.msg121999#msg121999


- Dav

Code: QB64: [Select]
  1. '============
  2. 'MAZEBALL.BAS
  3. '============
  4. 'Clone of the Tilt Maze Puzzle games.
  5. 'QB64 code by Dav, AUG/2020
  6.  
  7. 'The goal is to move the ball to the star.
  8. 'Use arrows to move the ball.  Walls will stop
  9. 'the ball moving so navigate around them.
  10. 'There are 10 levels to complete and they get
  11. 'harder as you go.  To help you (cheat) you can
  12. 'jump to other levels by using the +/- keys.
  13. 'Press SPACE to reset level and start over.
  14.  
  15. 'If you beat the last level, you will get a
  16. 'smiley face and hear a happy song.
  17.  
  18. 'For those who get stuck, solutions are below.
  19.  
  20. '=======
  21. 'CREDITS:
  22. '=======
  23.  
  24. 'I didn't come up with this game - It's been around for a while.
  25. 'It's mostly a clone of a cool game posted on THE QBASIC FORUM here:
  26. 'https://www.tapatalk.com/groups/qbasic/tilting-maz-game-t39133.html
  27. 'Also some levels derived from the original tilt maze game here:
  28. 'https://www.mathsisfun.com/games/tilt-maze.html
  29. 'There's other Tilt Maze games that influenced me.
  30.  
  31. 'My thanks to those original game authors for the tilt maze fun.
  32. 'Please accept this QB64 version as a compliment from a fan.
  33.  
  34. '=================================================================
  35.  
  36. 'Solutions below, for those who get stuck...
  37.  
  38. '#1)  LURDR
  39. '#2)  LURULDRUL
  40. '#3)  DRULDRDLULUR
  41. '#4)  DRURULURULDR
  42. '#5)  URDLULDLURDLU
  43. '#6)  RDRULDRULDRD
  44. '#7)  DRULDLURDRULDRD
  45. '#8)  RDLDLULDLURURULDRD
  46. '#9)  LURULULDLDRDRURULURDLDR
  47. '#10) DRULDLDRURULULURDLURDRULDRURD
  48.  
  49. DEFINT A-Z
  50.  
  51. puzzle = 1 'start on puzzle 1
  52. puzzlemax = 10 'there are 10 puzzles total
  53.  
  54.  
  55. 'load images...
  56. ball& = BASIMAGE1&
  57. blank& = BASIMAGE2&
  58. pass& = BASIMAGE3&
  59. star& = BASIMAGE4&
  60. wall& = BASIMAGE5&
  61. face& = BASIMAGE6&
  62.  
  63. _ICON ball&
  64.  
  65.  
  66. '======
  67. restart:
  68. '======
  69.  
  70. _TITLE "Level: " + STR$(puzzle) + " of" + STR$(puzzlemax)
  71.  
  72. GOSUB SetLevel
  73.  
  74. 'draw puzzle level
  75. CLS , _RGB(51, 51, 51)
  76. REDIM SHARED pdata$(grid, grid)
  77. bs = INT(_WIDTH / grid)
  78. m = 1
  79. FOR x = 0 TO grid - 1
  80.     FOR y = 0 TO grid - 1
  81.         a$ = MID$(puz$, m, 1)
  82.         pdata$(x + 1, y + 1) = a$
  83.         IF a$ = "x" THEN _PUTIMAGE (y * bs, x * bs)-(y * bs + bs, x * bs + bs), wall&
  84.         IF a$ = "b" THEN
  85.             _PUTIMAGE (y * bs + 1, x * bs + 1)-(y * bs + bs - 1, x * bs + bs - 1), ball&
  86.             ballx = y * bs: bally = x * bs
  87.         END IF
  88.         IF a$ = "y" THEN _PUTIMAGE (y * bs + 1, x * bs + 1)-(y * bs + bs - 1, x * bs + bs - 1), star&
  89.         m = m + 1
  90.     NEXT
  91.  
  92.  
  93.  
  94.     'get user keypress...
  95.     DO: k$ = INKEY$: _AUTODISPLAY: LOOP UNTIL k$ <> ""
  96.  
  97.     'if right arrow....
  98.     IF k$ = CHR$(0) + CHR$(77) THEN
  99.  
  100.         'current ball location in x,y
  101.         cx = ballx / bs + 1: cy = bally / bs + 1
  102.  
  103.         'Move ball right...
  104.         FOR x = cx + 1 TO grid + 1
  105.  
  106.             'move it smoothly, by pixels...
  107.             FOR x2 = ((x - 1 - cx) * bs) TO ((x - cx) * bs) STEP 2
  108.  
  109.                 'if come to star
  110.                 IF pdata$(cy, x) = "y" THEN
  111.                     _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  112.                     _PUTIMAGE (ballx + x2 + bs, bally)-(ballx + x2 + bs + bs, bally + bs), blank&
  113.                     _PUTIMAGE (ballx + x2 + bs, bally)-(ballx + x2 + bs + bs, bally + bs), ball&
  114.                     GOSUB Done
  115.                     GOTO restart
  116.                 END IF
  117.  
  118.                 'if come to wall...
  119.                 IF pdata$(cy, x) = "x" THEN
  120.                     ballx = ballx + x2 + 1
  121.                     SOUND 500, .1: GOTO moved
  122.                 END IF
  123.  
  124.                 'Draw ball image....
  125.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  126.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), ball&
  127.                 _DISPLAY
  128.                 _LIMIT 500
  129.             NEXT
  130.  
  131.         NEXT
  132.     END IF
  133.  
  134.     'if left arrow...
  135.     IF k$ = CHR$(0) + CHR$(75) THEN
  136.         cx = ballx / bs + 1: cy = bally / bs + 1
  137.         'Move ball left...
  138.         FOR x = cx - 1 TO 0 STEP -1
  139.             FOR x2 = (x + 1 - cx) * bs TO (x - cx) * bs STEP -2
  140.                 IF pdata$(cy, x) = "y" THEN
  141.                     _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  142.                     _PUTIMAGE (ballx + x2 - bs, bally)-(ballx + x2, bally + bs), blank&
  143.                     _PUTIMAGE (ballx + x2 - bs, bally)-(ballx + x2, bally + bs), ball&
  144.                     GOSUB Done
  145.                     GOTO restart
  146.                 END IF
  147.                 IF pdata$(cy, x) = "x" THEN
  148.                     ballx = ballx + x2 - 1
  149.                     SOUND 500, .1
  150.                     GOTO moved
  151.                 END IF
  152.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  153.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), ball&
  154.                 _DISPLAY
  155.                 _LIMIT 500
  156.             NEXT
  157.         NEXT
  158.     END IF
  159.  
  160.     'down arrow
  161.     IF k$ = CHR$(0) + CHR$(80) THEN
  162.         cx = ballx / bs + 1: cy = bally / bs + 1 'current x,y
  163.         FOR y = cy + 1 TO grid + 1
  164.             FOR y2 = (y - 1 - cy) * bs TO (y - cy) * bs STEP 2
  165.                 IF pdata$(y, cx) = "y" THEN
  166.                     _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  167.                     _PUTIMAGE (ballx, bally + y2 + bs)-(ballx + bs, bally + y2 + bs + bs), blank&
  168.                     _PUTIMAGE (ballx, bally + y2 + bs)-(ballx + bs, bally + y2 + bs + bs), ball&
  169.                     GOSUB Done
  170.                     GOTO restart
  171.                 END IF
  172.                 IF pdata$(y, cx) = "x" THEN
  173.                     bally = bally + y2 + 1
  174.                     SOUND 500, .1
  175.                     GOTO moved
  176.                 END IF
  177.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  178.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), ball&
  179.                 _DISPLAY
  180.                 _LIMIT 500
  181.             NEXT
  182.         NEXT
  183.     END IF
  184.  
  185.     'if up arrow
  186.     IF k$ = CHR$(0) + CHR$(72) THEN
  187.         cx = ballx / bs + 1: cy = bally / bs + 1 'current x,y
  188.         FOR y = cy - 1 TO 0 STEP -1
  189.             FOR y2 = (y + 1 - cy) * bs TO (y - cy) * bs STEP -2
  190.                 IF pdata$(y, cx) = "y" THEN
  191.                     _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  192.                     _PUTIMAGE (ballx, bally + y2 - bs)-(ballx + bs, bally + y2), blank&
  193.                     _PUTIMAGE (ballx, bally + y2 - bs)-(ballx + bs, bally + y2), ball&
  194.                     GOSUB Done
  195.                     GOTO restart
  196.                 END IF
  197.                 IF pdata$(y, cx) = "x" THEN
  198.                     bally = bally + y2 - 1
  199.                     SOUND 500, .1
  200.                     GOTO moved
  201.                 END IF
  202.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  203.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), ball&
  204.                 _DISPLAY
  205.                 _LIMIT 500
  206.             NEXT
  207.         NEXT
  208.     END IF
  209.  
  210.     IF k$ = CHR$(32) THEN GOTO restart
  211.  
  212.     IF k$ = "+" THEN
  213.         puzzle = puzzle + 1: IF puzzle > puzzlemax THEN puzzle = 1
  214.         GOTO restart
  215.     END IF
  216.  
  217.     IF k$ = "-" THEN
  218.         puzzle = puzzle - 1: IF puzzle < 1 THEN puzzle = puzzlemax
  219.         GOTO restart
  220.     END IF
  221.  
  222.  
  223.     moved:
  224.  
  225.     IF k$ <> "" THEN _KEYCLEAR
  226.  
  227.  
  228.  
  229.  
  230. '====
  231. Done:
  232. '====
  233.  
  234. SOUND 7000, .1: _DELAY 1
  235. _PUTIMAGE (160, 210), pass&: _DISPLAY
  236.  
  237. puzzle = puzzle + 1
  238.  
  239. 'If that was last level...
  240. IF puzzle > puzzlemax THEN
  241.     'show smiley face
  242.     _PUTIMAGE (100, 100)-(500, 500), face&: _DISPLAY
  243.     'play happy music
  244.     PLAY "o4l8gfedcal4gl8fgabo5co4gl4el8defedefgagabl4o5co4c"
  245.     PLAY "o3l8co2l16gf#gl8g#gpbo3c"
  246.     _DELAY 8
  247.     puzzle = 1
  248.  
  249.  
  250.  
  251. '=======
  252. SetLevel:
  253. '=======
  254.  
  255. 'x is the wall, b is ball. y is the star
  256. IF puzzle = 1 THEN
  257.     puz$ = "": grid = 8
  258.     puz$ = puz$ + "xxxxxxxx"
  259.     puz$ = puz$ + "x   xb x"
  260.     puz$ = puz$ + "x   yx x"
  261.     puz$ = puz$ + "x  xx  x"
  262.     puz$ = puz$ + "x      x"
  263.     puz$ = puz$ + "x      x"
  264.     puz$ = puz$ + "x      x"
  265.     puz$ = puz$ + "xxxxxxxx"
  266.  
  267. IF puzzle = 2 THEN
  268.     puz$ = "": grid = 10
  269.     puz$ = puz$ + "xxxxxxxxxx"
  270.     puz$ = puz$ + "xx  x    x"
  271.     puz$ = puz$ + "x   xx   x"
  272.     puz$ = puz$ + "x   y    x"
  273.     puz$ = puz$ + "x     xx x"
  274.     puz$ = puz$ + "x      b x"
  275.     puz$ = puz$ + "x        x"
  276.     puz$ = puz$ + "x     xx x"
  277.     puz$ = puz$ + "x x      x"
  278.     puz$ = puz$ + "xxxxxxxxxx"
  279.  
  280. IF puzzle = 3 THEN
  281.     puz$ = "": grid = 11
  282.     puz$ = puz$ + "xxxxxxxxxxx"
  283.     puz$ = puz$ + "xbx  x    x"
  284.     puz$ = puz$ + "x    x    x"
  285.     puz$ = puz$ + "xx   x    x"
  286.     puz$ = puz$ + "x    y  x x"
  287.     puz$ = puz$ + "x    x    x"
  288.     puz$ = puz$ + "x         x"
  289.     puz$ = puz$ + "x x     x x"
  290.     puz$ = puz$ + "x  x      x"
  291.     puz$ = puz$ + "x   x    xx"
  292.     puz$ = puz$ + "xxxxxxxxxxx"
  293.  
  294. IF puzzle = 4 THEN
  295.     bs = INT(sw / 11) 'boxsize
  296.     puz$ = "": grid = 11
  297.     puz$ = puz$ + "xxxxxxxxxxx"
  298.     puz$ = puz$ + "xbx   x   x"
  299.     puz$ = puz$ + "x xx      x"
  300.     puz$ = puz$ + "x         x"
  301.     puz$ = puz$ + "x       xxx"
  302.     puz$ = puz$ + "x x       x"
  303.     puz$ = puz$ + "x x  xx   x"
  304.     puz$ = puz$ + "x         x"
  305.     puz$ = puz$ + "x xx  x xxx"
  306.     puz$ = puz$ + "x     x  yx"
  307.     puz$ = puz$ + "xxxxxxxxxxx"
  308.  
  309. IF puzzle = 5 THEN
  310.     puz$ = "": grid = 12
  311.     puz$ = puz$ + "xxxxxxxxxxxx"
  312.     puz$ = puz$ + "x x      x x"
  313.     puz$ = puz$ + "x x xxx  x x"
  314.     puz$ = puz$ + "x          x"
  315.     puz$ = puz$ + "x x x x xx x"
  316.     puz$ = puz$ + "x x xbx    x"
  317.     puz$ = puz$ + "x   xxxxx xx"
  318.     puz$ = puz$ + "x     xyx  x"
  319.     puz$ = puz$ + "xx         x"
  320.     puz$ = puz$ + "x         xx"
  321.     puz$ = puz$ + "x   x x    x"
  322.     puz$ = puz$ + "xxxxxxxxxxxx"
  323.  
  324. IF puzzle = 6 THEN
  325.     puz$ = "": grid = 13
  326.     puz$ = puz$ + "xxxxxxxxxxxxx"
  327.     puz$ = puz$ + "x     x     x"
  328.     puz$ = puz$ + "x   xxx   xxx"
  329.     puz$ = puz$ + "x           x"
  330.     puz$ = puz$ + "xxx xxx   x x"
  331.     puz$ = puz$ + "x         xyx"
  332.     puz$ = puz$ + "xb    x   xxx"
  333.     puz$ = puz$ + "x x   x     x"
  334.     puz$ = puz$ + "xxx   xx    x"
  335.     puz$ = puz$ + "x           x"
  336.     puz$ = puz$ + "x   x   x x x"
  337.     puz$ = puz$ + "x   x   x x x"
  338.     puz$ = puz$ + "xxxxxxxxxxxxx"
  339.  
  340. IF puzzle = 7 THEN
  341.     puz$ = "": grid = 15
  342.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  343.     puz$ = puz$ + "xbx   x     x x"
  344.     puz$ = puz$ + "x xx          x"
  345.     puz$ = puz$ + "x         x   x"
  346.     puz$ = puz$ + "xx       xx   x"
  347.     puz$ = puz$ + "x             x"
  348.     puz$ = puz$ + "x xx       xx x"
  349.     puz$ = puz$ + "x     x x     x"
  350.     puz$ = puz$ + "xx            x"
  351.     puz$ = puz$ + "x   x         x"
  352.     puz$ = puz$ + "x   xx       xx"
  353.     puz$ = puz$ + "x       x     x"
  354.     puz$ = puz$ + "x      xxx    x"
  355.     puz$ = puz$ + "x x         xyx"
  356.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  357.  
  358. IF puzzle = 8 THEN
  359.     puz$ = "": grid = 15
  360.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  361.     puz$ = puz$ + "x x     x     x"
  362.     puz$ = puz$ + "x    x       xx"
  363.     puz$ = puz$ + "x        b    x"
  364.     puz$ = puz$ + "x     x     x x"
  365.     puz$ = puz$ + "x  x          x"
  366.     puz$ = puz$ + "x       x x   x"
  367.     puz$ = puz$ + "x      xx    xx"
  368.     puz$ = puz$ + "x             x"
  369.     puz$ = puz$ + "xx       x    x"
  370.     puz$ = puz$ + "x   x x       x"
  371.     puz$ = puz$ + "x   xyx       x"
  372.     puz$ = puz$ + "x   xxx       x"
  373.     puz$ = puz$ + "x       x   x x"
  374.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  375.  
  376. IF puzzle = 9 THEN
  377.     puz$ = "": grid = 19
  378.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  379.     puz$ = puz$ + "x x   x       x   x"
  380.     puz$ = puz$ + "x x   xxx   x x xxx"
  381.     puz$ = puz$ + "x           x     x"
  382.     puz$ = puz$ + "x xxx xxxxx xxx x x"
  383.     puz$ = puz$ + "x   x   x       x x"
  384.     puz$ = puz$ + "xxx x   x   x   x x"
  385.     puz$ = puz$ + "x           x     x"
  386.     puz$ = puz$ + "x   xxx x xxx xxx x"
  387.     puz$ = puz$ + "x     x x         x"
  388.     puz$ = puz$ + "xxx   x xxx     x x"
  389.     puz$ = puz$ + "x       x       x x"
  390.     puz$ = puz$ + "x x x   x xxx   xxx"
  391.     puz$ = puz$ + "x x x             x"
  392.     puz$ = puz$ + "x x x xxx x   x   x"
  393.     puz$ = puz$ + "x         x   x   x"
  394.     puz$ = puz$ + "x xxx     x x xxx x"
  395.     puz$ = puz$ + "x  bx       x  yx x"
  396.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  397.  
  398. IF puzzle = 10 THEN
  399.     puz$ = "": grid = 21
  400.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  401.     puz$ = puz$ + "xbx x     x   x     x"
  402.     puz$ = puz$ + "x x x     x   xxx   x"
  403.     puz$ = puz$ + "x x                 x"
  404.     puz$ = puz$ + "x x xxx x x     x   x"
  405.     puz$ = puz$ + "x       x x     x   x"
  406.     puz$ = puz$ + "x   x   x x     x xxx"
  407.     puz$ = puz$ + "x   x               x"
  408.     puz$ = puz$ + "x   x     x xxx x   x"
  409.     puz$ = puz$ + "x         x     x   x"
  410.     puz$ = puz$ + "xxx xxx xxxxx xxx xxx"
  411.     puz$ = puz$ + "x         x         x"
  412.     puz$ = puz$ + "x   xxx   x x xxx x x"
  413.     puz$ = puz$ + "x           x     x x"
  414.     puz$ = puz$ + "xxx xxx   x xxx   x x"
  415.     puz$ = puz$ + "x   x     x x     x x"
  416.     puz$ = puz$ + "x x x xxx x x   x x x"
  417.     puz$ = puz$ + "x x             x   x"
  418.     puz$ = puz$ + "x x     x x x   x x x"
  419.     puz$ = puz$ + "x       x x x     xyx"
  420.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  421.  
  422.  
  423.  
  424.  
  425. FUNCTION BASIMAGE1& 'BALL.BMP
  426.     v& = _NEWIMAGE(191, 193, 32)
  427.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  428.     A$ = ""
  429.     A$ = A$ + "haIkMNfVDDdf6n_T77nE9WA#097Gb8ITL6TT1bI541141ET<8159YR0Ri\Ri"
  430.     A$ = A$ + "L>W[WgcjimVWVeMW^WMkIZNVij3W7P^;cdMEGMegeMZ^n[ojMG_#842Q#842"
  431.     A$ = A$ + "Q#842Q#842Q#842AI>g`=L3^6eX6iJFcJV[U]\U^FgjFkJOkK_kV^YKbea>f"
  432.     A$ = A$ + "AGWjDWLM^cMfee^fEGgjFgldm^gm[i?iWeU^d5o_7onMX3M`oIdfffFoWGcK"
  433.     A$ = A$ + "NcM=Y9=ae`6f`POo:4=X1=`edVfD_67=l07h0MSNdSf=Q9<1gLWkLM;H1;`]"
  434.     A$ = A$ + "TU\4gbGnbM[KM[cM?gcmh^gkmNMKJCKbcVglVMggmMOnoOKH3K`]ne_NgZFe"
  435.     A$ = A$ + "Zlongn]OknomCKJCc=a9>Ag`6f`Lm]_meol1?Oac1Qnn?;beMMg#`_6:GPed"
  436.     A$ = A$ + "I=GF3^Wm\WNmg`7n`mJlI<SIheh;MY;e]Ve\6_NN[KM[^M\SMhNh7nQMkNgk"
  437.     A$ = A$ + "f]om_Og1>`1L7i87amH?fSi>fa>fEih7ohNh_OdSNDo_c1?h1monkI?kao_O"
  438.     A$ = A$ + "WkLW^7h1N0oc9l\3?K\`5^#ogkh6ghLSJDSbo<7GGlnRfdVfhJLSKL`7g4Uf"
  439.     A$ = A$ + "PM<HkAojGoLSI<Sa[iFfbFVKKKKK^M][Mi>a9>QkdWnd^WkiN>g;nR_XkeOm"
  440.     A$ = A$ + "G_Pb;ob_\k5NQG`mD?eCi>eY>UK_kM_nWahM:lnU9=Y9i6b#6Rgn9NNEf79B"
  441.     A$ = A$ + "2H[n=NSgXGkP>7K>Fa:FQO=gm]_miGOn9ObWdMfcNFgcn\?[k2Gh2NM8JNdT"
  442.     A$ = A$ + "_j[nZ5L]o[mJ_VokQ_cWoiONgU^dUlG7WkLWcMVcL6gSoh?^k`7n`^7mAODg"
  443.     A$ = A$ + "MOgg]gf9\GJTSLT^KnV_Iok42mh\8k0f\S=2mX7m`Kk`lWolm[Qn#?d3i]mh"
  444.     A$ = A$ + "INVWaMi;Oi2^^>]hUNYGbOmbcZl<;fR]h5_H_n_om_o^FdRF8KRZP1Khag93"
  445.     A$ = A$ + "N`3f=kI?K_n0kba6VcOncO=[Yo:_b[DDFC?]Og0?3`mPm^1NO5??`nAhIQa?"
  446.     A$ = A$ + "naOem=7ji3Aa1\Q_M][Mnm]R?DH_SHk>J3\K?=eiX3[?TVG7HG6?7`nYgbFf"
  447.     A$ = A$ + "RgV>lM4__Cn<Zl5c?=gj]N[^5]X5i]7Ve0af0FOTef;DJ>NFZ^#JNM4mjQkE"
  448.     A$ = A$ + "^WIo2\?1la4_gK>cI>ne3HL:dcGRj?\N6ffPM^H_;nR4O5n4?aCh]]Yn\6OB"
  449.     A$ = A$ + "F_^^n\D]miTV_KPo]l\?n<RmfPoCimPhcDN_8[GP]QQN>DTodZFe:_Oh_[kj"
  450.     A$ = A$ + "^L7j#7b_6GJi7bL]N^Y7Ocgl=_:_eKmF^gn]OKgkl>_SkMOgg]6QO6o>lk6m"
  451.     A$ = A$ + "OKBonZ_`W5k?0o5]a=^AgdWndma[CjoB3`W=\o=f3;n[QHUR_>NjWnYm[aQ="
  452.     A$ = A$ + "_egefiooKl6_Q7dZ`E^bEL_gkmN^?h3n0g7mAOTkCnT?amYOjWjn\?kcLOnW"
  453.     A$ = A$ + "oiNnb_l;mlEOeGinj_n[_6hoWmc]OOngbW1OFlIbW=O7lMIO_feA^^FcWkEK"
  454.     A$ = A$ + "?14W]7l1O#g:Gi:MSM\SeEEEEim1LXWO5e<HO3fZ>[I=;gJGkJmnRWm^FOGO"
  455.     A$ = A$ + "?:XcH]HFW6=8ja?nSoH_F5mkgmMOWkkon_gm3o`?hnUOiGLoj_n[^Okgn=?o"
  456.     A$ = A$ + "aOl7GUol?oCgOmGoU7nkAoIf_?oKicP?;n<icV_3n^hkT_K^6hJQ[9^fBcm:"
  457.     A$ = A$ + "cn2HlSW18>7m^gmf7oS#??;nOP?j8Nn\7FFW7oDR=\lnKVoZ[fIKfZP]8_ok"
  458.     A$ = A$ + "onNmfGl5OQOMJdSoh?nSGEKokon_kadeAefomOogo;nWoiO^6ZYOWX?KH?OH"
  459.     A$ = A$ + "O?fc6L=`e2GCL]ae8G[L=Kf>ECkO8ON?0aaSHGS_`8na\O0ReMXWg[dQHfS?"
  460.     A$ = A$ + "jVbDVROm9dmh3SlEW7moWICSIKn7nQOXgf3FcedlV>_jJhR=fc3fc0L=R]BL"
  461.     A$ = A$ + "=KkQ8Z=AaMoW[g1P_1`oX4KPQ>dQjg;LXWo[4QhBB<jI]NbK<Rm:n\SeYBjl"
  462.     A$ = A$ + "IeWkanId;HO=fEPFjWoiOnZjlX[Q7J=O]mN3km4L=ce>g3L_`m4gKL?FGdnA"
  463.     A$ = A$ + "SGf5_h5miK7k7N#3J#jM059H_\V=>T3STCI\F_iOnlimifjkVVgfSjgl=OSg"
  464.     A$ = A$ + "nJ\Y0=TYi3]n>ON>P[I^fiNPk5^W\m<K?3DK_?89P?c#oC^TB^?A>L[lTX`2"
  465.     A$ = A$ + "nL3=?nSVl1fR;EMI_[H;<n=1K4#KP>Qeg[YefSJoMFWJjJ7hNSkA^GiNVkM6"
  466.     A$ = A$ + "3Z;k=Vg1`kHIOEToLTO[SH4S8hjSbA`o=T7a4KZkon_OOn7`kNc7]NDkJHm?"
  467.     A$ = A$ + "\QoKof_mZkI5K5ZYmLF:Yk[]mFK`mX]7I^gI<8jk2ZYa\L1[mP_P8GZYf58n"
  468.     A$ = A$ + "Q\o[#[G:WPl>QJH2o=PMmi[MZVo9a78l^OlG8f3GC[C6J]KQRJjmH<6`H1S9"
  469.     A$ = A$ + "<fHn9]^4c<RO2eP6i6Xb?Xj?TO9<FBngP^gb[bh\S?ZM=h[3FOSh6I[aKkM5"
  470.     A$ = A$ + "<O8FYQMoKf2aH3SA<FaHFDkQBbn2<O1Ii74f09O1EgPm>ak#aWm4GflaNNKM"
  471.     A$ = A$ + ";N?>[WIaMbfkJdeh[N\UZ4`dnA77H\aRO6SI<f5M\<Y_7Ph2CnPC^aAMj7JM"
  472.     A$ = A$ + "DY4To8hg0baFlI?jnTjcN3Vg`>FRic?mCode4cYJR#[53Qf?GS5<VaH7SQAm"
  473.     A$ = A$ + ";JB`b;2bQZ=_i=kZZZZlmJR#[[:5Pa9ZO:ZAkCNbCVG[gcOgR3[ISSik6FO["
  474.     A$ = A$ + "BDWW???Hk5PoKc68;>aEOL>>XNI8_BVjDWZg?5QFGUU1KL`O>T;]DoeTC29="
  475.     A$ = A$ + "gcRJO3n`cdlRj?<FbHJDkPBbLREW0h3Dl3DEoO[o;KPZIHO]TcaH[H^F__j["
  476.     A$ = A$ + "m`NbH>QhhSO[I^RL0[BeNVd2KlSaB6C]LUPaJ;?QBbk2`n7b;Jba#b58R?IX"
  477.     A$ = A$ + "eJI5X62Yo1`NJYOd4G>XEMO`IaWRi7;_bH^cb7BAm36;]lWcN6PalJJ^8G_3"
  478.     A$ = A$ + "0odajJHoSb3Ro;hknI>cIjm=6a9\fZUZZ?nbJ?T7_ToRAc1QXijXXnCdaD;7"
  479.     A$ = A$ + "9H<WanX[oW;oPboOFC3oF\jE_JolMUN>#`ko8g`Y7TaHCBf?[ign[LU[hm7G"
  480.     A$ = A$ + "e]]?dJUbEZnN0H\WiPl9_8HmOFOSlQVN8GUZnO03H0^kl>_CO=SS=Q9YfI9^"
  481.     A$ = A$ + "S4oMb=Al17[3927<7`L1c9F^a5gjG4OBFoOkKOknnFJUFmPANgC?CPNN6e6A"
  482.     A$ = A$ + "BmQ9nJSmKQO78oL]eiIoHRR7fk1H>Pi2VCH^9Yn05m?mDAb1m:Yn21e#>a]j"
  483.     A$ = A$ + "ANT79AeFEdLC0o=C>HIe3XEGORR?A7oI>QiVXi2ALcYhoJlo9eO1eHMXeU53"
  484.     A$ = A$ + "hnTjNPjQ>9ffK[gcN[hM\fnJU^?lHc3<W`L3cAAGo?^g3#=7Q>PHIF^gOh8g"
  485.     A$ = A$ + "kYVgR;_k=OWIe>8nEPeF8_3I<WH^;b>`L2c=<7aLUE[TaioCnIX3H]OliAXe"
  486.     A$ = A$ + "W5287Mhijkh>^3OngWdekYN[9NRfjmfj=QN^Fl_enP]n?cI<gUdeoY>PI__H"
  487.     A$ = A$ + "k?ak9djed4>CM8V]\_fLUGJASE2f=B^DaJ9fhKXWS5ao<0o9cI<gIfnWThOa"
  488.     A$ = A$ + "nOIOPdSL3]N=]0Oj#MMB<=Xn6BR_<I<3O7Ha]2o9cH:oY8kR=7IaoRi`Z7o["
  489.     A$ = A$ + "J3fk;eY1ag7K4:ek7LV]>DO]\WnTZk]hFAnTKSWh?=Af7kI0[F0\hOU4m?f4"
  490.     A$ = A$ + "#^o#_8XD_?HA^;A_1THiakdRkmN\o8[OhHSS0SSRB7\i=V3I^TidT6k;\=Pm"
  491.     A$ = A$ + "4R^9djgj3D_QL62VTc]46KHoAT[D\NAdek3mLY8o8jjoFobRifTXoI]Ob];>"
  492.     A$ = A$ + "cT2]n]^0fi#oKTlf;Yfhck6Im16k\n?YXd7K^TiFVSCbJoFNoC_PVN#FXeci"
  493.     A$ = A$ + "3DS2D[]dgXbUo]Rnc\NN9SE0n:#DjS=OJm:dZk;kJkI0joELFiQ]oQF?WDHo"
  494.     A$ = A$ + "]dO<I=ObA]hlWYe3_iMSQNNBDHafk;ciaigClk3mP9R5JYBmnbe9iX4eZIBb"
  495.     A$ = A$ + ";Ib1#[F3S>>ao]XdWZ?WbL=cia]^_eo?9oGhLc9djjhPc_B>gJXNKCbNKagG"
  496.     A$ = A$ + "dGT\LDCjnbCR>gbL=cifI6#Lj4>OXXWGA>#6JmM^\eQhgbcY\?UL]F_U_2ln"
  497.     A$ = A$ + "?c_>fhDe?CB4U7Hc_VOOH^?JN?DKj5jg3Tc3D_7Ienm6WYKd;^`F7jKPaIW?"
  498.     A$ = A$ + "ik4amfdmlWRbO\iJVkA3TTlM0m4i6#OjCO2^>_VPJAQmUcnKS;Wl]J]e>7ZH"
  499.     A$ = A$ + "\`>_Y4UgHce<gS]o99V_Hg?i60WgmQFWGMX^;Io]d?lS[7ZIiU\U_>fh1oMA"
  500.     A$ = A$ + "i?VfWo^]fOLfmcJYH7=ijICKJC3^N?Z^WjAa>?3S;>FHS7nje\cg674E>H[g"
  501.     A$ = A$ + "IWKNX9RK]Oli9ij3i3LFY7W`n_9n347;RQKLf^am9ihQMf4:]OU7AOG?JQTX"
  502.     A$ = A$ + "m1jccdS3kE_jE`em`X7mXmWOc9i\P`lU?gcfI8[Xb5d0X5<On7WnQh5AMNSm"
  503.     A$ = A$ + "eQFg3cH6c`W_JaMFfR=MGioo<YEJOAD]_MF17WMoT;`Fom?djNbI=Rk0fQ5G"
  504.     A$ = A$ + "OSeb?IcFOQ`0=ABbcI;F0dOca^W#5_;Z]B\cWJ]9^N;UM>=cnjin4Kl423d4"
  505.     A$ = A$ + "X=RNNHGKJOnCli3i?#Xbe1Rc6i\F^RQ[QM>=cm8acF8Z>X=\c3khdCh?AZ]A"
  506.     A$ = A$ + "bai#Xm]jBQN\BLfj#Oke>Wg4RJ3d8XERcf7Rc;mbb#EO;;KI;cK_CLnga>O3"
  507.     A$ = A$ + "Io<QN\ET]1=RMN?V;=5a?UNn1W9E5cNJ2mM1bCI>CPH=oL57Gc>Of73fc94a"
  508.     A$ = A$ + "1JUTHg?ajUcGlQ<TQDd>?79?Uil3VJC9^nY9g3fIRBX7C5U6HW];99NGLnl#"
  509.     A$ = A$ + "\^h\9\HXm9o5H?^lm6GnWbnF\j`=dSYRB3\jj=9ki5k>8Wii\lZHXma_BT_V"
  510.     A$ = A$ + "D?UaM]anfI_;VfWoD8Z=<=2JVT4WGRW:fO#>4G<dndcMBJOcgdnfcd\G6QXf"
  511.     A$ = A$ + "`d99EkcN=aOWL>FGXem\WJnNX>bbEmYHeSHdem]WW5RJSXj4d>aEGSF=mBo^"
  512.     A$ = A$ + "\#g;C\c=Rhl_CeenfceQN\ET]9Z>99JOS=]Y=E#kU9L^`AoVRh9P^?Gi`PeS"
  513.     A$ = A$ + "e<]_#T_Pf9Ymb=j=2TS35BkM6j#7J>kOnAm[_egM2mHXXd4[?nTTJJl07h0N"
  514.     A$ = A$ + "kA:Dm^I\g1Km9F^aM]H[i;]_X^2J7K]ohdKdO4fbFfB1;6G4;G>C#iI\lAk;"
  515.     A$ = A$ + "4eEBZf7o]C]\GXjKi4k<bM=laCB\gAJOAm5d#9a^7lc?e<KQZF6kNgk^ol`>"
  516.     A$ = A$ + "^HJ5Ek;4eGBRf7O_`Il``6f`liLCJkSWne_ni>h1?H\adBJOAJBBdnTG=DoD"
  517.     A$ = A$ + "L>]Wfni_=]Y=nN3ABj_\F^Kbe\#DO9^LjdPH]NKgf]ic[cdfFoa<VahO_BLm"
  518.     A$ = A$ + "N:Ym5Y99EkcJbL6fBO39=enH_c<Wi<mkY8^n_SdnRdTTZmY7>\ne_NoJoYYf"
  519.     A$ = A$ + "O#3J#n?cLU3?Bk;:4T?JObWid^gm<fa>FOoW:>Km=]_#Tf4W^3Kaga>fQK]["
  520.     A$ = A$ + "M]YZfObCNbnjcEJOAX89JOR_5m_QdDk?_i=?_]DlN5Ym5QPhdMdKd8W3XneC"
  521.     A$ = A$ + "C]?kOVHj6W?NTfGDX8>MWEkjkNgk>EenH_3i_YdnR#ABdnTG3\fOJZmIo3DW"
  522.     A$ = A$ + "Raec=5R#1eC2aNUenCC]ojFgjlfA9]_8[2JoCMZCi>jA?JZZma_YDK<9aV7Q"
  523.     A$ = A$ + "84Pfo\Wm\nn3KJZmIO^dcoUfGTE1]?iH<iHOJZmglVg\_N]TfGTE1]?m#QCO"
  524.     A$ = A$ + "jC;]_XR2Ym5EZDXdnL^29km5II#kC?J3OmXmj:ZT0]?eG2nh?=end?ZXOk;o"
  525.     A$ = A$ + "k;bZDXla9iaVdnR\<XmaFO>3BCC]o:Fa:LKKKKCfl8b\#nlP_mil7==enT;K"
  526.     A$ = A$ + "dg[TfGTE1]?fkTfibVU3c99om5R#0Jo3Oh3k[OUdDk?oi?OonMUfGTEY#Ek:"
  527.     A$ = A$ + "LnJQ=o9YV55R#0JOl3?mRodDkKeZNBjC32A8PmR^m]_MgZFeZBE]?mj:ZIG]"
  528.     A$ = A$ + "^_8[2fScNBY?lWVJoNfcNj]ki2Gh2illdE825Xma^LdYYYfWnk9WSST_4:nF"
  529.     A$ = A$ + "R\8HC2W?4HONJZmil\H`3N`NoWNi;OiPOO:4E7f;:m=cndWnTZJo6f`6NeN#"
  530.     A$ = A$ + ">fm4jkCQ8:T?3GlRGd=a9>AGWkLWCE]?dU^d5O_Jh<Wi<1oNE8R2nhQlH3KC"
  531.     A$ = A$ + "JJCKJZ[mY?TCl]>na?N`_G5RX`JndKBh\1:]em0Wo4hSoTLFc945C8_m9^F5"
  532.     A$ = A$ + "ZcJ^Ve\Vi6oh7_?VaQnNE8R2mTWE_jEG#\g1JBCJRoL7RNC8Wo4aM6D845;`"
  533.     A$ = A$ + "7<hOc2eI;]]OGRI<nBEahBTE0KA6gh6G1Cg7eVOlcYbUOAX1K?`oVd;56h07"
  534.     A$ = A$ + "H1Ek3CJBCb_OG>k]2mm^Xb6dmH3bBGjBM]\U]\P[miL\3ol7gi\[#DX1K?8?"
  535.     A$ = A$ + "KBkcG^JSnfgnjgGQRaU8dPOmi\VH4SH455]O7kH7mi;4if3_cAnkA4:`_nhK"
  536.     A$ = A$ + "cNgkNGDdnHGE?jA?le3?njAJOAXPn#e<Va<liL#a#k3=ZA=bGW0\f_ZU;Aa6"
  537.     A$ = A$ + "\g0KmaW;TOm5;M_a:Gi:MkOokgMY;MYP?F8Z\0k=8Gjil#Ql=XH[mYFFFlRG"
  538.     A$ = A$ + "\fc[XX3kaUn2>aJZH[kQQ=\QiVm\W]_GHYLL#D<QN=>iFcLVcL2Rf_E]ZEnL"
  539.     A$ = A$ + "LPlWShLQ=HQN<ADI0WUXh[a2E>;77\OGbIDjEQd3#E>>8:dP]5DCjkKOkcEE"
  540.     A$ = A$ + "EEiJKKKK#dn6Hg3W;;Z>N55JX?9PO=Y6Z2YVgHX3MXnNg3ihP\kAD8QeGgjF"
  541.     A$ = A$ + "gZ_Vd3]^7JOkK_GoSoNDN=;:T#n3cj\3H038hjNSFgjFkcSdSLTSXngS8e1k"
  542.     A$ = A$ + "l]Jb][M][^6dP64L=_1kkUl8Uno\fc[8]a>?Q`WR]X5]8hjmZ3m]#\33knU]"
  543.     A$ = A$ + "?Rd4l]3WkEDk8QFWGC#n4Q?Gi<NDihS8]`jkDdSIIOUQFWW;moJFcJle=OX7"
  544.     A$ = A$ + "c4U7PM4D;jM[KM;hjkL1fRQon=knU??5eG8WIhlT8daa:9P?OhliRL^#kkED"
  545.     A$ = A$ + "O1MOokOo3^^>9PoW`^ObeXcOnc7la>AY9D3jDO8cM^c]PecY:4#>^=i9?Ioe"
  546.     A$ = A$ + "^Z];AnPUC`Hg0e75i]CXeci3dO\8??gh6gXOO_bf7ABQm8B^;\gm^GG_jE_b"
  547.     A$ = A$ + "Daa:OHA;JAncSMliYFkGT4\lESl4PcmQ#[Q[[#]D>X1=8omRdoRT0nbWn]CF"
  548.     A$ = A$ + "fGn91[nFXVR?gi>WliYXFab=Ob9bA=ZAicKW#[OC3XfNGh2GX>SB5e:H[c>f"
  549.     A$ = A$ + "a>L;Oi;?hjed4jUKSI<SaW_3jljBDM`G8H[3eNNF=WMZ?P_OhIJjUWQN\FT]"
  550.     A$ = A$ + "Pe4Y>4cRiXIJ1W?kTc3HCWj[?2Rm3fh_^e]^<C]HE8GkWLBJWkLW^CNbCZni"
  551.     A$ = A$ + "I5>dO?`78hCWRA?4?dP?KYVcX_^ajolLOXW345GHm>fK;[1BodTJO:djbR5H"
  552.     A$ = A$ + "GgdWndMkI?ka_gGUg3EF`jMd3UIoOdGS3]N\H3WOALF]CMXai7PZe[:78FW\"
  553.     A$ = A$ + "fGWjDW2^><4P]?TCfHkSeKgDM^GN3c_hC7>KhXWiG:Wc2Y14gGlo3WGkHoS\"
  554.     A$ = A$ + "mYl5lQo2F`2Lgb]L;1GgU5Xa=^anjMQjaTjAVJDCao]l2F_WnV<eQ2fi4Rn6"
  555.     A$ = A$ + "NF6lm9mfIZA=5kgb;H_]\N?af?dj\\:h[[A>bAj7W`?0Z7OFj2a^QekI]NV?"
  556.     A$ = A$ + "KBCJB`eGIMh\\3m?mP;doboWUFHeM5f]bk_WolW_omiQFGEZ0eW9aj3oobNP"
  557.     A$ = A$ + "EonYd1F[7OfANK=[I=;ON\7JmDY6<V=a9>AOMOAoXSeADnoWMaRE;iY5[GaI"
  558.     A$ = A$ + "`<eLHXeAUZPmoH3dBFbBLkJGkB[oWQQl#6oD`JE3LP3\TZg:TEQhO<jA?JO]"
  559.     A$ = A$ + "_`N08gWDO_:kPeSTi\gQnZ0eKX\c9MQL0MJCKJ^e^fejg3Ujm3I3`>7>[?Ga"
  560.     A$ = A$ + ":FA9A_C[DU>dQ>h[mMf3<ea?_3PmE5jio:=HM7lo<iR8WgJd;bZ4c9]#0ea<"
  561.     A$ = A$ + "a9aZ1n#[5Zd0M?iO8aR7kA3]NXB3jIAl<`DVbDla?1O1ajA:F05>`7>\F?n`"
  562.     A$ = A$ + "1O#[mc6F8O09^Q7n`7fW;#4oLU?dY7\F2nE0O<C>HB_fSejE>iTMPl1Ul3Tc"
  563.     A$ = A$ + "kd3MX3YlQ>5`>[OXogCMFCnf6jiIao6Z5<\1Rg7SnWm1P_gD<ab?\HDA\DXO"
  564.     A$ = A$ + "`BOa4o:#N9P_62ml\8g`N1H=:R96i>;?34J=EY2Hc8eE5[OP?UKGkJG`W?5i"
  565.     A$ = A$ + "7d;#7gh6gEeo4WMl=1?7Xg3lo`\UWHVPVWc9FlM0mmNjog4GU#?G:ZkP]#l>"
  566.     A$ = A$ + "Kj3<kNgkFm5g8P_a>a9>Q_>2Y7iXJZZl2b;8Rc>e6?nXPH#bJKkOokgkk2lM"
  567.     A$ = A$ + "GUP_QH=Ndjln?N?8jm=\Q=hVjDWZKh3OhNki;Wk=JRoK=2<h1?h[NNHGYdWP"
  568.     A$ = A$ + "hiKR;5i55kOUc6WBUcb:Aj2k9Vc5ENO0__7O4AnRB_Q4OLD:W_4l\\YcinIe"
  569.     A$ = A$ + "[Nenh`R==H3XZS:1`niXGACmRA?Ca>[T\c9Kf;8J9lmGF[>bhJQ[9^f`N6^>"
  570.     A$ = A$ + "ij5kJhjWnj=iG9ao6M_\YA47hK?ZONbC;b;GFgTNX7kAPH7`I8I8mG4JNFG7"
  571.     A$ = A$ + "ocL\SM<oe5JLjSgHoNOjCOlnj:dSSRBC8OEjI?kYK4SH4NKRFeZFUoM24_7b"
  572.     A$ = A$ + "Q2Ri9f6A^DP_CI?cHW4_[`PeQ1FC6HmiJ2kWKon\f]1O>lIcg1JMn>IMMl?3"
  573.     A$ = A$ + "fd#m1R^WJLH2CH2nJ7QnnBYjidFFR[kjT?NS2eCCcKNcm?G#Oe5m6eV:fCSO"
  574.     A$ = A$ + "Da7Bh35lW:iJ:iH1nEQcLE\3QmFcc=0oMPnB=oL\eRW[8Wa8_hgjFgZGG_\U"
  575.     A$ = A$ + "]<glVgll[YCNTQ_giMCE2m_HAf3N_0[_B^4A>eA]5P?Di<FRn=9_[0m:iJ7?"
  576.     A$ = A$ + "G`NYGlRG\goB0jIPo>ooiWcIC9oncI>caol4nRQ??\E7Ob#Nb;=_#842Q#84"
  577.     A$ = A$ + "2Q#842Q#842Q#84RbMn?0fDo%%%0"
  578.     btemp$ = ""
  579.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  580.         IF INSTR(1, B$, "%") THEN
  581.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  582.                 IF F$ <> "%" THEN C$ = C$ + F$
  583.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  584.             IF MID$(B$, j, 1) = "#" THEN
  585.         MID$(B$, j) = "@": END IF: NEXT
  586.         FOR t% = LEN(B$) TO 1 STEP -1
  587.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  588.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  589.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  590.     NEXT: btemp$ = btemp$ + X$: NEXT
  591.     btemp$ = _INFLATE$(btemp$)
  592.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  593.     BASIMAGE1& = _COPYIMAGE(v&): _FREEIMAGE v&
  594.  
  595. FUNCTION BASIMAGE2& 'BLANK.BMP
  596.     v& = _NEWIMAGE(158, 159, 32)
  597.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  598.     A$ = ""
  599.     A$ = A$ + "haIk37D3000334BDWoefV<j78QZ;EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
  600.     A$ = A$ + "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
  601.     A$ = A$ + "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEMf7?=jK%%%0"
  602.     btemp$ = ""
  603.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  604.         IF INSTR(1, B$, "%") THEN
  605.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  606.                 IF F$ <> "%" THEN C$ = C$ + F$
  607.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  608.             IF MID$(B$, j, 1) = "#" THEN
  609.         MID$(B$, j) = "@": END IF: NEXT
  610.         FOR t% = LEN(B$) TO 1 STEP -1
  611.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  612.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  613.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  614.     NEXT: btemp$ = btemp$ + X$: NEXT
  615.     btemp$ = _INFLATE$(btemp$)
  616.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  617.     BASIMAGE2& = _COPYIMAGE(v&): _FREEIMAGE v&
  618.  
  619. FUNCTION BASIMAGE3& 'PASS.BMP
  620.     v& = _NEWIMAGE(324, 155, 32)
  621.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  622.     A$ = ""
  623.     A$ = A$ + "haIkMN6[ED4666`2H35\0:ME`2Rm6F`^2::4kX8FA454\g[A15kPUPmJD80f"
  624.     A$ = A$ + "kR6SXR6R]XH;Z9ZQ8AACDnoJNV9O7F>L?Wc^c^kiN^gkkKbC<8\cl=k>ckIJ"
  625.     A$ = A$ + "k\][M];ZM2Q#8L8999eFGb?DBBBb;i7:999iUl3UTTTlBnQBBBBN9o#9999_"
  626.     A$ = A$ + "TOXTTTTGb?DBBBb;i7:999iEJl3K^gch2Q#4:b?D84]eYm]_mAMX3MX`l3kL"
  627.     A$ = A$ + "WkLD?kI?S6`06#df^]K[#84=\dY>eYX>fa>FHnQh5>h1?hXQ?lQ7ML7ga942"
  628.     A$ = A$ + "A3;MY;Mae7^Rb?Tn5RGhH7kHS^P;h242QXQU^e]^5ee^fe2c?TnPR_;ieeOm"
  629.     A$ = A$ + "G_#84=\\IKfV5]aKl6;o#Q#dV7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q"
  630.     A$ = A$ + "7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:"
  631.     A$ = A$ + "42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7"
  632.     A$ = A$ + "i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42QWF2nQk`>\3AMZCMZDJ6"
  633.     A$ = A$ + "2]_m]_9Ck^e]^Uid^8Qh^A?6]h<?Ra:mL:YTgg[bJlDDaHBR[\T?iAm^lZ>A"
  634.     A$ = A$ + "mliC;1o`]H;fRXNe[N5em^gMG\V6jJGkJD7kH7MTgYMBbk=ICfT<5gDO:[aH"
  635.     A$ = A$ + "FRST6Wm]_m=caHeN>E?Z[DNldi>giX=JSf8GKTbQo=hGTVHKkf^]c5Om^gm>"
  636.     A$ = A$ + "ZWm\W1G_`R[J53QL_8?ZgUGe9Z7eGJ9j7B<bmdkj^^[X7kaN\DS5;5AJG=^g"
  637.     A$ = A$ + "kmNMe92mj]hVjU4SCKJC;CaAAE696_V[iJbD<beE]WCe[j:a;Ghk#k^\h95g"
  638.     A$ = A$ + ";\Om[O>O#3:c?ocolA;H1;8jGnUO9Ji;Oi=IKYU^dU6mmOog7mV_iKF:^<ZF"
  639.     A$ = A$ + "<Hg;2miPMmYmIZU6I]>A]8?Z_dBe?THlmN_g;AiMUR5NnL]GkeV[YMed?oco"
  640.     A$ = A$ + "LdEL5GA`G_5g3LP3dE_Wj0I9>VolWO`aBeBKRa[l:_b<5S?d3m#U:_l<jj^^"
  641.     A$ = A$ + "[[IY^BU4nEh9AjF^Wdj\>[S[ogeZ?QdG90_j?ocolPSUU]\U5=kI?kXeKmF?"
  642.     A$ = A$ + "7E:6BCKKC_f[mJUN>\iKnV7dcDkIIF[CD;E]feb?\fa2a`UOiG^knGm`?La;"
  643.     A$ = A$ + "NaAWciL>AoiOnW1Mmgf]MK^hnl?oc?J3g`=<jeOmG?Xdicn\?c57_d;mB1Mm"
  644.     A$ = A$ + "ECD696?_cklLah3nP?H#YSEFQ;kb^\X[nZ_jPl4;bWWaeBFbBLnRfHfZTWX="
  645.     A$ = A$ + "VC[?QiILmKof_5M;gb]DaH84o`OmGoeB?7fV]IK2b?cNF>a9>AGM2l7;2E]f"
  646.     A$ = A$ + "eb?\fabX7mXMN;lkFeSf?;LQ;<j`?l3?JA;JA1MmDORhNDSJDAMY;M9j]N[g"
  647.     A$ = A$ + ":Xdi1NP7`57?jSnX1MmECD696?jSnXSFoeOmS^WkiN2:M\b:<na?NWWH8oVO"
  648.     A$ = A$ + "mb?ddWnYOJdJ^V[ICj7AO3]i:Ta<Bo;cKmgomOkn]SV:62a?4=Va<6gcQcl<"
  649.     A$ = A$ + "?CgL3l`?l3WZ[gNFN2W`9hZgBm_R#E[M]l3[M\LP7h16MjWnY7M9GbUDGJo`"
  650.     A$ = A$ + "H?jOokOdMNWgI#GoTWlTMam#6b#LN=TNQXCkd>]X1<P14=UY<UP^nZ9KlEkl"
  651.     A$ = A$ + ">_cA[kj^^ACMZC=XdIX3MXUN>Qo?Um#nmnj]O8j5OaGdi7A\SW4nhfl5Jm=l"
  652.     A$ = A$ + "[oj_^`bO6oaTVdTFYH8;nQGl5Oa^dQhVng=cI>cDMmfcbmN_gKgHi3mg8[UZ"
  653.     A$ = A$ + "FkJi7FkHQf\dFkR^X;Z^dnI>cI>^igiB_d;=X[WahJcO8Ycgn]OK#Yc>]CkT"
  654.     A$ = A$ + "c?=;cUIU4UARAJg_F[eJ5M3g`=4Dj#<J?W6a86Ad4V`4LmkYUPO8bNF1To<>"
  655.     A$ = A$ + "IlChnb[l:_BQWo<oVWd9MB[dLZ5ZOh7mAOT;=hi9m?L6cH6Yjj]WUdfWOSl>"
  656.     A$ = A$ + "^Sk8ea#BDeJG;o``RUR\mccn\?KdZ]J[Vkg93AWkiN^^hVnI`hPnV_iK2:MH"
  657.     A$ = A$ + "<;\?]hgmcKAITHTiIRmX1m=:4]EKeFEji4S]WbN;9o`?h3nPBa?m?KCgd=]d"
  658.     A$ = A$ + "J[FYe=>_e=MCgd:i9C<4RO8Z?mY?AMX3M8J3fP=8enIfcBF?6l3In4;2UWN<"
  659.     A$ = A$ + "b?\nh7BnbHEcbecL#QOHXSibfgZ<WLi]TOh:d^]KkFYb0NQL?Qm8CmB\n:Fn"
  660.     A$ = A$ + "cHW]H84ISiUaULcgl=WZ[EnQ5K\fBg?Tn8VU[O]GkefE_:4mn_okkB3n]NV_"
  661.     A$ = A$ + "ilFb?L5JTSLT^hOeGmEgi5aN2Tm>HmD7fQMHU^?bjZ4ZOX]WIHnohi#JTl3;"
  662.     A$ = A$ + "fH]U^O8]?nb_l;3:=\aOa_CWUH0o#VCYlF]fl33mi4j\>[cZd_Oam36_J8Re"
  663.     A$ = A$ + "_Pk7\g>C[R??V43\N8Q:ROl3_`;l2Cee9o`R=FK=h7nb_l;7DJHSmQe#;4MZ"
  664.     A$ = A$ + "WjYFZ?ZDNcKeJc?Tlo8>RS8X[UehdZWajGan^>4Ig;N^WkiBme>[I=[Bg7I]"
  665.     A$ = A$ + "#P#e`6f`LcEch6ghBee9o`R=FKTm3]d^JPGDXk35lI`?TmbE8:^O8cgN8:YU"
  666.     A$ = A$ + "aF;nQ0[GKJ5k5Mc7PikUeB94aeBj<fa>fDO]f_?1h9cJY5ZH<cl<mT?iC>EG"
  667.     A$ = A$ + "GNi76_>Ae#nQYC=WnQ\>6do`#gc=l>2`JlanM>4IeY86^eKmF3:=BBMbeH=F"
  668.     A$ = A$ + "3gh4_aKl6cDLf8h7bc\i=_iUj[elRH?f`mR#g_Wfm1fSaQ630ca2eMbRjA?j"
  669.     A$ = A$ + "QKNACSZgnQkj^^[^mJTf_=9Ce3o#VW5f_I\FbT?6\7^0bc#4e9XNmaOl7O#G"
  670.     A$ = A$ + "?c[_iG5jn0[FUa1=X1ijC3em3ec]Ab?TiJ=Tig`lR86`?l9NRW8hH0?i#n=D"
  671.     A$ = A$ + "km97hi1mA<;Ra<O87bQTZ[Y8l3I^<I?MBo3RGg3_#F39NGJhnUl3cF\TGY=n"
  672.     A$ = A$ + "43N`3>Jh3Oh^l`Pa[POFJWCJC<NGlJ2M]#\hSn7>mY?m<U6EZ<RG=cK?m5Qg"
  673.     A$ = A$ + "Yg#DSVOH8_[hVO8[[<o68oi\43YMMMSOm0eKbZO8cabn^_kKZ^VR`?TmL=nN"
  674.     A$ = A$ + "7caL<[DM?jG8NQdVnZ^Z[BnQI<Fb[dVn<Q?1ci3Y_1n4DW0?aokon_DWnh7B"
  675.     A$ = A$ + "O=2I_bHmEPnJ#o3_okonCMJPZEI4_Nj7JFNgmKdl33iM5gl39oa?lINVW9Ca"
  676.     A$ = A$ + "#Xc5[MOTj=dWn\8V7eMOggmDM=5QO8[W8]5H>4RGgSa8Co2a;<?>SKTOHn<O"
  677.     A$ = A$ + "C<_cdG#jK#lc=D>K_i\7Tei;Tm?1_oKdf:4_<[m9mCPeT9D_ZJE6]g?=n_QN"
  678.     A$ = A$ + "f>eJc?TkE?mCodI:6hlm9d[7XNCFm3AYM^NbKo#F[>jW[m>g4_NGU>WeTOHH"
  679.     A$ = A$ + "aBNen1o6j3Hlc?Dk<lUg]OncL^KUFAK<BSGmEOeDO]hUJck7YAXW_=YY<:o`"
  680.     A$ = A$ + "E\gSJ]h7nEOeGUZomi]O8S]QdQO;f>oKK[OnHgXj7bc<N?]h<8Pg7>>;?JZc"
  681.     A$ = A$ + "9h#c3JSQ?D8W90fN]QjAD_9dig?=UAi7fhh7B<4jnh?;:_l3YN0W=4l^3bI8"
  682.     A$ = A$ + "6Y3SaQjH\g>]bYl3CW:Bo`ZYb?WP3Ym1SaVe2Qg=ed:6[NNdn\J:_>;TUOhZ"
  683.     A$ = A$ + "63]em3[VNWgiM:E>cbiY^l3[OnQa?WPY?JQN>`aLg5R\jU\F7IIm>[Vb[c2I"
  684.     A$ = A$ + "i7^ZaPl3[\hk>SE>iL?D[WBbEcUOXM>1SO6[YAXe=3M>P\gc1fW<\FSl=g8_"
  685.     A$ = A$ + "ENMF8;o`E=6TOHU5ec\b9kg1>;kdg;PTYV;o`hWicfk:0W_kYE\7G2AFNclA"
  686.     A$ = A$ + "SghLWkL3:MZVb[c2Ii7^ZaPl3[\HnI\b9_kFlmkAO_0BVJ^l3SOV?SG8mOjW"
  687.     A$ = A$ + "nYO:eY3WgoYEaO_]HmHXNi;l2_#ZCWJYlj\#FnQ[J<8o`:[hWS?lncLfWmIk"
  688.     A$ = A$ + ">ogUOHfRURd?<NKLkM[Wi1>]:TcPohnQFkR#?SMZV:RmN[l3UOH]T]g9PmOo"
  689.     A$ = A$ + "gOgkX2OSmTOHfRUj]OHXOCXB[RGOaf7J5aga3i7^29o#_TOHUog:o`Ef?\Xn"
  690.     A$ = A$ + "FdF^>fSmH;Ugfk]EAh5;o`E8i7jUl3[loFi7^2o#XX>K<[FNK_Go_aKl65Fn"
  691.     A$ = A$ + "8o#i7JBnQEnOK[Mo#J3D9\cJ;Pj5II?gTFAOASWg\N>Qn]=:9UAi7:o#CiUO"
  692.     A$ = A$ + "8OkOZDm^3h0>0i7f0j7JYM]`f_=hC5bij#FR;;_Okgn]cLJE9\e`nf_mK?Xl"
  693.     A$ = A$ + "#nQ[J<dFg?<YW7\Lfg`g^6]nb9C=2nQ<ONfgk\_kkn^Pb[T:nV85?_cbJKSB"
  694.     A$ = A$ + "BicJkUe_I8b?DnQUW>e2nNg`n_Ako`TYjQO8Wg6KiF^UAkh>^S^cn0SmIOf7"
  695.     A$ = A$ + "GkKnF3IO?L;RiZ<^R_GKX>5m=ThKncOn1UN9Y<Jc?J[Uc3Fi76^:2o`ndWnh"
  696.     A$ = A$ + ">3Uhl`fZg]GkeN5MX7jQjnn^<Y9=9MN`V#E?l3iie#6b#LkEnA?jAG2VgGf["
  697.     A$ = A$ + "XTWLf]5jij#J4N9FLAM8jK8NI5IId>3VhKZD8BnQ[J<dLh76jnY?^:2o#>CJ"
  698.     A$ = A$ + "?bSl8MW7fFm^a<Vah6W<WA\<gQjmG>IZNh7bc^SjX>:Gofim;gPc^GNFa_MA"
  699.     A$ = A$ + "NQWAXW1<9EaGk=NoA\_kT5IIdjkkSl8?B#iQl3GeHXi`?Tj>IiK#=Z8l3?h3"
  700.     A$ = A$ + "nPMSaRcRmhekhlWSa9ck^LNL6g8o`R;];7b7f7PiaIdIeTM>OIo^:Wk<#AF6"
  701.     A$ = A$ + "]kSjlnZU_OHXOS4=eX]7\TOHbSUjYO8WcndFQnZ]lU_lPb_TXheSH^m8?UOH"
  702.     A$ = A$ + "b;[]em3gUMIG2:O=9o`:o_]Aa?\BOo?jGojWK\N5AJ7okl0ooSGF:bmLCleN"
  703.     A$ = A$ + "SmR#Nh7F[bXMO<[nQImKUANi7^TU\TDO]Uk7bgV^\43Qh7bNf;[nQIiKH?ZN"
  704.     A$ = A$ + "mmCYlfFb?<IbZOeDOo?hNI_kM_;Td^Yn>?HUU5\P54DnE;5ok_;`gXAb_\\^"
  705.     A$ = A$ + "f9Y<Je?cZOHFoFIT7eEXmG8ZLo`\lmaSH84o`b?7?BkLcHcmlCmD?EZcKCeS"
  706.     A$ = A$ + "_O:a[G#iDnQ9GD7INcKN^a0]X5]8gnoS_SR0k?4F3fR8]Q?iCnTBg;bSbBBR"
  707.     A$ = A$ + "7;ojOok_K=i\mmHAF6Y>IFl3YO=cI>cam>F_`5^`X5_h5klf9mSOF8G?l3ik"
  708.     A$ = A$ + "9M8:_l3YM?OS8bbHfQ#nNBQO8o^gh6ghBMNK:?OoDZDM2STF_#nQ9CggmMO^"
  709.     A$ = A$ + "_Q[Qn^\E;m3o`?DjN1kONK?gDD[al<Wi<GYkmlmkfVgbRb3f:S<NIbolFl]Q"
  710.     A$ = A$ + "g:CeJ]4cJMU\4ofgc#^GCoFV`4V##Y3[76m9j7oaO<hH8;nQL]3LP3<ei]Yj"
  711.     A$ = A$ + "ak_\9[\bNhPiF<[kiVfjnQLokD>UCamk#5QnR_h;:M_Pc`Gl<XOnQ^_U[UR_"
  712.     A$ = A$ + "GKXM5WSoh7FTm9e:Sh34jk[Ge4[;QEVZeN=[XkoMeDlkmhWai:don_oKZC7j"
  713.     A$ = A$ + "3DXonLCM^6U6IU1jOJXcaMcQO8k1<nV1TeeKY]^OhX6eXLkcm#o^OD;m^_kk"
  714.     A$ = A$ + "FjN1eEI\#<7L5eN^9nki>kUOfknh1GTN4FITb5k7\lFCMZC]DIZF_;2=:nQf"
  715.     A$ = A$ + "JIlaOl7GGSQhWS7fiJDJTE6`?OjCOj153=7nQ\_HI<nDoCnQQ;n^Od[Ne[XY"
  716.     A$ = A$ + "<UYTkY=RcXoh[e[m^R0oaOl7iNn5O?:<h1?HGmkRf?d:Sh1`gfWlFhoIUYJm"
  717.     A$ = A$ + "^ZfLj76oN?n0h7NggmMGgbO>ocS_FJ43Qj7Bo33ikD1Zi`?Tjjl>[#O4UOHh"
  718.     A$ = A$ + "Ri9Qj]d?kR#cJFcZdmRmH?f3gHc]a_F4kiVhm?Hof_mcM>8EdnQFITf#do]l"
  719.     A$ = A$ + "FWaIL6[d_YD]cbTVCo#kkIX=FEPjF<_oe3egnfgEb?TaP`k^NJTi7bn[ReEI"
  720.     A$ = A$ + "I;KIY>>J>l37dP6TKM`hmGAnQQ;NfAmFj_AAXh[g7_3jlKH5YoDlf3lMfQa#"
  721.     A$ = A$ + "`JhD?FCKl3In7bKUVcncV;o`h[SAlnVQO8SgoOnWoY#cOjGDllWfMfi;GJTM"
  722.     A$ = A$ + "_Vmk3[7C8Sg_i`?<?lITOHc[O8kSTlDag;^fH;I?m;o`RELO?NO3]kmfL5Kk"
  723.     A$ = A$ + "Kboj_n[29o;OLbfh7]gCcd8kNM?jA?L];Va<VAZS7i7F\aI[Eo`lN?g4?_fj"
  724.     A$ = A$ + "]N[S6i87YKmH[GkiafRnQ=UG8[[?eiImfi_3o#6k9SUKY;MYiJnciACiNQdV"
  725.     A$ = A$ + "S_Igfn`?=:^O8m?<Tm<Tl3;fh\eXO8[WbdVfdbel:^_1kaLkn^l3cOanD<nJ"
  726.     A$ = A$ + "i77RAVcC>oEH_`7gCTWo?nSohI>oi<X9nifQ1N#TofjX5ZO8#<CKSOogomDU"
  727.     A$ = A$ + "6b?\HSchWCF\_\Vm\W]kLHVi<QecTWQQR]n33MX3e]o2hlkSm#GNTf#lf<VO"
  728.     A$ = A$ + "8SQQijVjKL6n?gi>GghBH_2`IUHXiElegTci;lVH_VGTgoRG6I>Whlil9ObW"
  729.     A$ = A$ + "diAbNHROWQe3>;YOlbEBl3;Rb:kE:RSJMV=_WkiNjVGOjG^]WP<?ahokhN6o"
  730.     A$ = A$ + "mOh7nQYZmOelQiM8Wm;a9NRWXK=iINB\ci=nFcbm4f7k<7:9iN]]V#DgTmWK"
  731.     A$ = A$ + "B[SJ]Y`?dj[1?;HnQb[j46]5m39n`kXJe3K90kcA>3;YlDNkSl6JG#m5jSB["
  732.     A$ = A$ + "UkO0W3Nh[EYeG^iZ\>P1<0gcGl=a_Ylm<>NRE:^jI?kIYm>?kaUbKccOGl_="
  733.     A$ = A$ + "I=5hSaIe;NQCLRCdiiTek5D7UmQHF^_`H6Z7go]kO]5FOiZEGZU4dg9f[8lK"
  734.     A$ = A$ + "\5MIRc79FKIl=J]Lo3HOgROCUfoQecb:N#Kof_m^e^HH3KH^mJ4cgFeNoIX]"
  735.     A$ = A$ + "6SK>_R1nn=`n^WlWmb5m;UWiToImN1[5DFSe\jWVDhg2hg>hLR]e^OHLHO2B"
  736.     A$ = A$ + "Ja_SBK3j_0SQ:;`nBQc0OVc7l#X?LiEJ3\WiHm6Ym2eGSgFVa_Po8SOPnFPW"
  737.     A$ = A$ + "IFb[3jP>8gIh0e=hnDi_oB5am_b;Sh9<i9?IGohhn:gOcJjCLBlBLgDU[jEM"
  738.     A$ = A$ + "56[:Y3n?TVDgVj;llSnV`cfJm>dbkO=NV<_9QhgP?<m72OHVW7jC8eKI^AH<"
  739.     A$ = A$ + "h=EnCna_S#lbINDJ_GCiRnMbie?oF;?_CBK:Z3P75Y1ogl\>Q1U7:GFobK;i"
  740.     A$ = A$ + "7bcJnm?B?:oLoUiC:;`lQ`kF\MFTWWY=#O2Ym2cY3?_Xm#i]KIL]hS#\TUlR"
  741.     A$ = A$ + "HVHWbPe?QRnnGiUAlg9?H>khnJF;C9YLE_Z[#iTbch7ohMn3Tfl\;]WIm4Kh"
  742.     A$ = A$ + "MAm=B7BKlJ`[POG1o2lNSk3c_eQog86a8LcAYi3KgC:_NECE7SlZF??JZkeV"
  743.     A$ = A$ + "7>o>7UM^?TTfDD7`lXioVWe9RWGD^XleFhmG^YZ;IoV5?_hiDFPdPdRdTWki"
  744.     A$ = A$ + "IJ7?m]j5UgVQo<i;omI=?SGFZTWANOo[lb8U5[=DAl<:=WQ9iIIU[_Y:WiAM"
  745.     A$ = A$ + "IBOl:hgC`;Rnk5gc9[n`YY>FU^GWVkUFJ4oNDNGW8NNI??bjg#UFRnQ2A[AX"
  746.     A$ = A$ + "]LiN>V_Ain`iag>9aZRl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`"
  747.     A$ = A$ + "Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl35"
  748.     A$ = A$ + "2Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`S"
  749.     A$ = A$ + "l352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352"
  750.     A$ = A$ + "Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl"
  751.     A$ = A$ + "352Q`CAj7fnfgnX>eY>5eU^dUX^e]^ib;Q#8JDYOm[OAM_kM_#l3k#7j#D7k"
  752.     A$ = A$ + "H7SjLWkLDGkJGMn^2Q#dX2NQmZGm:gm3UTTTJ=;i7:999iUl3UTTTlBnQBBB"
  753.     A$ = A$ + "BN9o#9999_TOXTTTTGb?DBBBb;i7:999iUl3UTTTlbl352Q#d^Xo74NT%%h1"
  754.     btemp$ = ""
  755.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  756.         IF INSTR(1, B$, "%") THEN
  757.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  758.                 IF F$ <> "%" THEN C$ = C$ + F$
  759.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  760.             IF MID$(B$, j, 1) = "#" THEN
  761.         MID$(B$, j) = "@": END IF: NEXT
  762.         FOR t% = LEN(B$) TO 1 STEP -1
  763.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  764.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  765.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  766.     NEXT: btemp$ = btemp$ + X$: NEXT
  767.     btemp$ = _INFLATE$(btemp$)
  768.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  769.     BASIMAGE3& = _COPYIMAGE(v&): _FREEIMAGE v&
  770.  
  771.  
  772. FUNCTION BASIMAGE4& 'star.bmp
  773.     v& = _NEWIMAGE(190, 190, 32)
  774.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  775.     A$ = ""
  776.     A$ = A$ + "haIkMNo\DD455NnWdL>QiL>;6:4#4##PRT05I99P92FP:15D11:1D05D\0OR"
  777.     A$ = A$ + "PB##Paj[jZ[MN3c\k<kfcdmlfc?lE_E4N_memI_cY_cmNWXGiERS42Q#842Q"
  778.     A$ = A$ + "#842QX\<UY47=i9kog72AMbFfBLdVg\oOO84e53OhaAWndaAocoHN]_Oo84e"
  779.     A$ = A$ + "1cKNaAaa6VkLSSNiG^mhkg_2Q;H?kYU^OGkbX]OYG:KTfG<DPgl=SSn_o[U^"
  780.     A$ = A$ + "o2G8>j=NShXGl5=l2_P1ko]Ekkkgg2A_`ZFE;=_UU_LSFoiN^hXWmI=`[i?C"
  781.     A$ = A$ + "jNa#1>bA^BMoQ>TAWod?MLdCnT6heBk;6:`4V`EZiQ;OISoW7oaSSNT7a0_6"
  782.     A$ = A$ + "]ocolBg;JfliONfjNhCnThX7nQSSNP7`0_n9N2SW7[?OOonG8j6>i9cGgOlS"
  783.     A$ = A$ + "77MogOLdMOg6he?jSJRi;_>RV:cJFi[i]<bA67M7gQ1dn?d3IljS?ORi;M_X"
  784.     A$ = A$ + "Ya>fAWemKH3aAgj]Jh>_CC<o7ka<NM\almm_72AAQlcOncgIM?e^`]MKaAgd"
  785.     A$ = A$ + "=InjmL?VchZcg:JR\\UeI=_Ua=^hX[ojSS^iK>>j^^[hX7l1=W_ENM4==>h1"
  786.     A$ = A$ + ";^^OkK?>jJ_fhXKl6SS^mK?>jn^?SGWWiIdiK5=76kH=iW_XjNZQ1lfC<Oli"
  787.     A$ = A$ + "ciK9WV?eC9_>RV3[Om5GcKIVc<>jj^>S?On<0ic?I^lU^G4j<`0UGgOP347M"
  788.     A$ = A$ + "=GCLd=L3VcgN_g[bU_Xi`dVFielF`C?NM^UK9>JH3CibGdLHKK[kem[H5Vcg"
  789.     A$ = A$ + "RG7^?FT;OZI7Eg2R#VGkeRS>kIkNM?nS#gKmjXLi;J2\X5emJN;lI7>OKbLi"
  790.     A$ = A$ + ";_>R#Vm]_NGgCmKJcU?NMD^l5Q<SNdaAGjBm^^oLWc4[GibGd4PJY_GelFVh"
  791.     A$ = A$ + "4_B_>Z^54Q8on_k>M?cK1bUObjFPLi;_>R#2VmO^Bc3hG2]^=Gnb[S84QIoW"
  792.     A$ = A$ + ";em`lWO[LiK[K1U;OAX0cl?VmO^Fgc<H#e]P8DQInW[elF8f>W_Ee]P8dHgk"
  793.     A$ = A$ + "^jdmOl7?hLiW\^5D?8:l5YWoO^VCM:cIK]ibGe]P848[ioW[IDSBibG4FLh3"
  794.     A$ = A$ + "Gmjn]^Ee3RR`QgiMZN=?P?:dkZ^54Q0KLSeS^7VndE?8:23n[oZndmkOoIW;"
  795.     A$ = A$ + "OieADWlN_GmYi]PgV\j1AieADGlMOGm[kGjBE?8:l75MnoiJ>fa6\GWTibGN"
  796.     A$ = A$ + "M4E=UInoiJhW_j1AQ?PiLS_dmOfWMUe]PbU_XZi]Okb=ooL=Wi<6omY[K1U;"
  797.     A$ = A$ + "OAEbjFWodlF6ohEM;8ZGnSo`ojNbUTZK1AMaDWZoel0mP8eZPj1AAM`GoenG"
  798.     A$ = A$ + "cKI>cYmmPXdm2G#_>ooL=ol?[N#DDmhRioW[Qlf[N#DDU\gmjOMNJFmZc_74"
  799.     A$ = A$ + "EM;8jEXOW^h5m_>?=D?X4_7_>Z745^6j]KO[acSA<2Eg2RZQSNDo[_c3VGE:"
  800.     A$ = A$ + "Gn2GcTVToef]3Z;DlhXN#DhBfdVl_f^C<UYTM?8:_>R^1VoOomOkOMMWh7nQ"
  801.     A$ = A$ + "Fib7_>Z745m2EilocU#mQbiICg3Rb[SXKPI#__ed5U5_H=kT5m>TO`ZLnoiJ"
  802.     A$ = A$ + "hI>QZK1A_b:GYoebU5R[KcU_ZK1Ag`_l;nG7GFFkJc^74C>kTUfGT7d?CnF3"
  803.     A$ = A$ + "g=LjCKliXIW\KPIT4c^Un5fi>m_6^KIi;gl\#TWgFCKJaAcNfaAcKNVj9mmO"
  804.     A$ = A$ + "ohXU\4o_njB#KFEjnA>BcLZcgkY2AB#CRf\ZSkSoAGlL9F8j5XfHGcJ<Nfj4"
  805.     A$ = A$ + "^Bk?SI47MbCjoOg5mWPf3oKTOZlPcaH?;S[dolmPW]=kKOnO=#dO1mnc[nZV"
  806.     A$ = A$ + "lCU6bE;`ig9gEYeo^#gcg;nnbcUNikADeP_6NN:amO>;X6l0^G5Tk:nL0jO["
  807.     A$ = A$ + "f_Gemf[I`g;n<5OnRjd]>W3lRn;>a9RS6cH<g;R\PjaPJCRkA7i\U?7Pf7]I"
  808.     A$ = A$ + "bkIA_XmC[kicEfi_NEn\\DdO2iC6m<g3^\Pj#RN<SN>Pjb0m?eV1Jbdg[>G4"
  809.     A$ = A$ + "c?IlNZi?nIaWk8OZbgSXG1O=cOnVkkLN#mgAmH#]8QnWkA7J#dRX9C7_gUnk"
  810.     A$ = A$ + "9>?eh=N[X7OX7gh<_3<PoGk4=C#kPfRj]8?\mB?JO^_d4c7]7J#dRX9MYond"
  811.     A$ = A$ + "NM\JOlCQ_:^V4G_QOnnhi1RXIcfg^9nmEMEG9GmEKPJ>5M?alYG38F?J>dNF"
  812.     A$ = A$ + "_mYel^:?nIYmC7gW?3^`56VcO3AH1J4VkQIYgCZkCZi;JLNGG?BYen9?W[e_"
  813.     A$ = A$ + "?WgPW9>bgS8?HnBSF]CJNlg#mfQg6jUBdFFol9?7KEZicb_ObcjbeJXnGiJ?"
  814.     A$ = A$ + "LN3nZlm8BCkleHQHlXia??nJ8?>F=5J\di\\>[iDikAD6X?fJ:nJLY_W#hIW"
  815.     A$ = A$ + "P`?dDmeh:O?Okgjom0AmbffFcfGSlm8:3h[QnOIXP_6ikAD4H_Uhc3eleD6m"
  816.     A$ = A$ + "_lmdOAEh[9dekMS_W5\0ikIX0mCnJLU_WGoeU_WV<7ohmWnJ:Sn??O?D?Ybg"
  817.     A$ = A$ + "Cc3le#Lk^eGCEDklQ4bgc#;`Gc\VUled=Jollm`c?Cik9L1O=\_9O=M_n_Mn"
  818.     A$ = A$ + "NnV_aokaR13?7[KW_6K<nnEO=U=fONnNX7LT_7o3nJH>U9O=^Gkg>O?L]EO_"
  819.     A$ = A$ + "gg_ba>VleDejoTnN\mcUeg3e`Z_e0mKlEOUleDWanccg3ckdVdcVQV:bGSod"
  820.     A$ = A$ + "nbgSOX\nJH678O=^EoWW_7FOU_7g3nJ`[BImeT^?_U_VNGk;O?E?bGCh#Amm"
  821.     A$ = A$ + "`L3EnNjN`G3jEi[9\XCnNhJ\bgCgQle4f8O?^5FSVi<U_VV0iik9iljDnNj<"
  822.     A$ = A$ + "^`G3[iIi[agJTQbDDO?DS\nFS5J\e]:O==I:Z_WE\2o[e25hIKXle<dP>iki"
  823.     A$ = A$ + "Sn8o[g25HV];O=3M8?O?4OB?GFJ1c\Ddg5YOXT_VV1IikQlEhK]FX1c`UdJN"
  824.     A$ = A$ + "i[YiCB]ogomnGW5J\Y==H_=F=?cnSQ=<i[Y93k?l<HAiao:i2G`Xa]WQ5_=4"
  825.     A$ = A$ + "WgZiKjc_VnMn`?doJ\#5N>LK?7;m82niaKCbWCDbGCcTSNDo[_2E>`1JiaQL"
  826.     A$ = A$ + "g`c=7ReSOnd?C0mmnXXh<i9kO]EX3eA6jNRgS^WnI3M_=F_dl=?fbFl_^:d1"
  827.     A$ = A$ + "OPhcQcdR?7NN8C>;9N_eSS_g7557Z=WcL6o[[2M>eY<gS:>G;WcUNiQWmgLV"
  828.     A$ = A$ + "FicYiaRFToeD=56cHJiaWli`mY2o?b[CcSm_Oo[WJ:`Li:YG7bY3iaTkEURi"
  829.     A$ = A$ + "gLh]N[hX;M9o[WJ:`J5eP3nM87nlJ^?]T;C^7]Bgg<H][eoJYV6cM^iW?Cie"
  830.     A$ = A$ + "YIPVU\UWOkgJMOKY6<YNdhnG9_>=3Vndm_6ZY2jKlj#]HVll]fjACjn`5=kT"
  831.     A$ = A$ + "kNFoj7L=;XLig<PJ[mOoGo[OJZLfcJdlIU;OMnf`UU_Lo[MJj<a9fjl]D3nD"
  832.     A$ = A$ + "g2:GnQ=7j#nGgddI?kYE^lil]:GnQ=SOlaAGnbnGgd>>i9=hkg7]3F396_bU"
  833.     A$ = A$ + "OcP=^Ao[IJ7kNg6O30_fg_OJ7;I93^6=E^l3G2ehXL_#C?g>8?iX]lmk]lPk"
  834.     A$ = A$ + "oQ]obil]fLi[JE;\H>caoJU\PIh0e5JNc\3VOoQjWGiIX=alCW;OMnf`QM];"
  835.     A$ = A$ + "o[CB3_W`CCWV?ChO>4mmlUOIneU_RikO2]n6?;O=]K6lI[mmU]<ooN?9WolV"
  836.     A$ = A$ + "liHkgLU;o`RE_Jo[A\d9O=YW7I4;5O4X[PA>b`bg3elAjLi[N#<<PjYbgj3X"
  837.     A$ = A$ + "XnJ\WGd>3nhO3NM0N=WOTLXkkOOPOjWD^l3AVdTl_f0O=;NaMgLFUlT#<Db?"
  838.     A$ = A$ + ">`[i?SoOO`746g?2R_K[E=U;o`P=_IoZ9`Gc`7Name#n`C>?b`_<j:dA0_Vo"
  839.     A$ = A$ + "<>39oM6mXm__7lAJ[E=K^lE]Zi?`7mY?]od3UeGCbWSa4G7o2fI`7a>1k<LV"
  840.     A$ = A$ + "oOlgQo^nfgCjn>Gibg_\`5j7M0nJXWeMilS?9I=on9f?c_OOikQ[kXn>?<HO"
  841.     A$ = A$ + "k[ngokEO=9ONoUe\5>i<L>mc[AnN<ZAi7O?lLb;M^leiK[OlAOSc<Ef5nJB>"
  842.     A$ = A$ + "WEC[G\JoTc_o#`gc5_XicMZFel;[I=egNNEh[YMcIeRlL;2=8mJ#Mjk9_n>G"
  843.     A$ = A$ + "NMZ?Z[n6_ZmeTg_OUagCMmLLi87AmM^?IJC[NfWaG3aeJWV?[W;>UaGCWXXn"
  844.     A$ = A$ + "NZ[jkQ?oYn>g?De?;b[KO=5Ak7:nNFgjDOWk3XfH[bn67?3lcY^med=Jo\lm"
  845.     A$ = A$ + "#mmDUnNH>kZn>_nY:[IaM^Cok[Y8jOOkkI2C#mMNMc1?Xkg7aG3g3\#aGCAd"
  846.     A$ = A$ + "nndg3gWJE[Je7SKL^OOl4W`lm>dled=Jojbg3k1lmGib_NH3K8lleTnimGM_"
  847.     A$ = A$ + "Wk;O?dG=Z_c[7LEL[VV_VRXm;R_7>KT[^Nia?N[Li[JE[jHfcfMnJHoXYi[Y"
  848.     A$ = A$ + "KdnE]_7j9NegiE;^hi=>nJ`WBCfGCAdoeU_W_h;DOWGU<RAdKm=>nJF`26jh"
  849.     A$ = A$ + "[Y8Joj`g3mM>G;DmMNe`ZFUleh2]OEhkIZCEmMNEa_n[bGC_XokT_7RAg]cO"
  850.     A$ = A$ + "XOl7E^l[2NggEnJLQf_8nNFjBk>O?hYGmM^KY\m=nOnWUgG3aYJjnJj6]OFn"
  851.     A$ = A$ + "NH6LEFO?h3EmM^kX\m=n>fQleD4mOJO?lkL_hkQnNT[KZLik6`[BAme#M3CL"
  852.     A$ = A$ + "Li[YHJoRjkYXmb9moRjkLg`NgKWG_iJbDKb43??MOoX_V^AkWW_7b9FWf7ff"
  853.     A$ = A$ + "fDOWk2H^EdYH=L_G\?G>8F^leDNLU_W\jkLngYcgF>nd?]mnJFi:=nDhjZLm"
  854.     A$ = A$ + "edajU_VRS[lm`cP0U;oN3ZkY\FKIfMAO?`IW\cXJdg9embGCia5nN>lQEOWg"
  855.     A$ = A$ + ";TGOS_omKV]1LV9f3`gBJ?>bGC_A_jk9[n>gjeAalK?L6YdnJFkJ=aO8_`LV"
  856.     A$ = A$ + "9dc4;gNNFi[aMDDO?lli:]_7V[AZ_c;?TKVcM^1k[I6c`\fCL7Re#<7Km#aJ"
  857.     A$ = A$ + "LbWK8bGSKXKmmXn>_kPc>IG3Yf?X^YHMW[gbJ>G[eNNFdiXg]gc4i[amD4O?"
  858.     A$ = A$ + "L=PTe9>WoRm6egi5W3L0ce>I>]HGcImV[cbJ=GSejaQeFkc:7i[YjX8nNH]g"
  859.     A$ = A$ + "jk1_of[mbNUZE]fcH7[iNN?cIfJmVe8FWi\A\6Kmh`J:jMkc:7bGLJO=\6;="
  860.     A$ = A$ + "_KX<nN6H0cNU]V^]GC#ib?K`7?nJB^FcJ<[_4KQ[GbJ;[UfW5JbGCmBAmm`i"
  861.     A$ = A$ + "dH?bf;3fLi[n>_H[_9mhHSYPF7hebGSOfK:BnNB^?YjFXh[]F?>4?Q[UbJ7a"
  862.     A$ = A$ + "C`C3OEnJlknCWlm`N4JNn:kMfJdDNMJojZ=?>h;Te<^F9[O\VBL5b;\lehom"
  863.     A$ = A$ + "Y\lm`N3kA\GaN6kM\7JWSRb[Cn[WFM_MMTl03LmBR[8O=Q1]cg3kEfm]TaYT"
  864.     A$ = A$ + "^?kead[Q4W0]>`JWle4FTFkcN3kA\GaNVmIEJFaZlmkm#QT[Qf[MbJX5FgT_"
  865.     A$ = A$ + "V`TdnN\nn]TdCZREUojW=fABD<n`V\RmWgnW_O_6JTL];;TV?\AkOmnJGFhk"
  866.     A$ = A$ + "gK2]7:42Q#842Q#842Q#842Q#842QX#loLUV%%h1"
  867.     btemp$ = ""
  868.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  869.         IF INSTR(1, B$, "%") THEN
  870.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  871.                 IF F$ <> "%" THEN C$ = C$ + F$
  872.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  873.             IF MID$(B$, j, 1) = "#" THEN
  874.         MID$(B$, j) = "@": END IF: NEXT
  875.         FOR t% = LEN(B$) TO 1 STEP -1
  876.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  877.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  878.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  879.     NEXT: btemp$ = btemp$ + X$: NEXT
  880.     btemp$ = _INFLATE$(btemp$)
  881.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  882.     BASIMAGE4& = _COPYIMAGE(v&): _FREEIMAGE v&
  883.  
  884.  
  885. FUNCTION BASIMAGE5& 'wall.bmp
  886.     v& = _NEWIMAGE(193, 192, 32)
  887.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  888.     A$ = ""
  889.     A$ = A$ + "haIkMVoDKKl66?094`LK<H3H\aVS#`4P090QLA^94BPLl=9CKcdIji?eYMjd"
  890.     A$ = A$ + "[IjOlkgmIIUA\`F]j`[TIOoQ?S5Bkka^jiaBfH3e[GWEGBU:EHC?md\A6I4f"
  891.     A$ = A$ + "#3=4[gNkUeC?m`^jE_Z0\=1Ak6#7W;G>FnliIS?nh\5GLIFS6[b^i=_=Kmeg"
  892.     A$ = A$ + "DXm[E[VP9VH2FYBUH3>hP\nk_OQ^_k^kF`E^bEJ^=1Ak6#;?`038Nnm:EZaV"
  893.     A$ = A$ + "Mf5Hgh6[aFMeeIc=gLRWo_Lib2_26OWMf9[S>jPMY;M92R;<0==dfhJ3`?\`"
  894.     A$ = A$ + "2;bFJYUIc?ol\YVJ:ae0PGibGnbYN_B#d:1JLLoAE[R[7<?oNSFT=l`3;^o7"
  895.     A$ = A$ + "hABknSP`60]>dmhe8dXASVgo?Mo?4^2#[3=?dn[\b:Rk?2g7DJgG44f4_G[l"
  896.     A$ = A$ + "J[]FcgoWd^W88\9N_GW[_njT7P`91_fHh38?0Q[RW7HS=fPNm04>99Q70_oB"
  897.     A$ = A$ + "MeEGWjg7=0KC#dZ`_>3J?X1Sbk[OLm0hmF2m0nm]Q?W5hggl2;\P0\=1A[2o"
  898.     A$ = A$ + "j<XmP64Ja`nNk77?0lL8FlkG6ONSfNk]IgkNg[9gm^gUPXUQO]6dN#32]8dT"
  899.     A$ = A$ + "Qij1Ae3hmloS>jX\mgOOfWolWIoaOl7\oiOn7fOmGo5k?ocoTPXU3dJ#c1]7"
  900.     A$ = A$ + "dP#;2=IH^N#Dm0`WQOgJhcGd7oh7IOogom\on_oKfon_o[XW88\5#c1]7dP#"
  901.     A$ = A$ + ";2=IHn<o4E?0Nm7hj>GojGWmcol?cnmOogKb_mKo61Qe`_f3JAX9Qf4JdFY7"
  902.     A$ = A$ + "0aQ?We;]dB\OjWn9f_n[oZXO`Sob_l;44F3oJ?X5QV4JCCo\?7G?0nlVn]Ok"
  903.     A$ = A$ + "g:lONlSoh?B#H=l[mPF4JBKh1`eIll0OmGoe\Oh7nQVlMOggA#H=l[mPFdc3"
  904.     A$ = A$ + "dZ_G8To9WLBagmV?mY?9lONlU_l522[QO]7dR#C2]Y=l0hkLl\c>;komQ?`n"
  905.     A$ = A$ + "bgl==kY_j[n:22[ACo0G32]8dT#KJ3?#aR5Ie[ESMdQ7bn<go1nT4lNDA#dZ"
  906.     A$ = A$ + "aC_iYoPF4JBX=]U7XVd3l9OmCJ_^#hFhYkP64JaJYP7heljn1Omd7hG?RP`F"
  907.     A$ = A$ + "dDgaieI4?`kimUAlN52KLV>n\:ZcS0WG_GB;:oZW?Rjj\US;=m0SEL<FeJEI"
  908.     A$ = A$ + "_ne_Fj9oXPgagf8NW2Q=>C7OF5eiAPc[g9Y5UOec7AMMfbaioJ2#;F]JEfHS"
  909.     A$ = A$ + "=VEm07L`1Lokk?a3`gf8NW2Q=>C7OF5eiAPc[g9Y5UOec7AMMfbaiYoQ64JA"
  910.     A$ = A$ + "[j1he1ekE_jElNoM=k5\=1Q]`_^3Jadd30Ohk5nidOMQ`M`_^;]l0_TGgSle"
  911.     A$ = A$ + "C7MdABNW27YQP>^Yicdj5el7G2Z_ee7QMm9Yj[TNM:YGG?>Onm3I1?`KOkac"
  912.     A$ = A$ + "a3?4l>5hkckH7iOKO7o`Sn_7WgH5K[<f33jhW3n?fAWCoN^SCGomOToSlUOe"
  913.     A$ = A$ + "LMX_mOZOnLV?jZWGLZckPjCehdQ^eiCeg1]N4T>8Xe_cf7`30=GZk1Ni;Kj;"
  914.     A$ = A$ + "?^_<#c5ei^AWC=8ojdfV>^4iLhoANeEW`>_3kjUANPH\NTDj0ia?BjQm^n2d"
  915.     A$ = A$ + "Rfb3dYd3DYBEfNljNbcOmFfKhmfKNcQji#52kh2:NCc_jh3khRkl8XlZ;n`>"
  916.     A$ = A$ + "_3KLQ]NaMM?>[O2_`KKNm8X5QV4Jc>]P7X0_>CO:?0h#f1l7?PgOJi#52kh2"
  917.     A$ = A$ + ":NCc_jh3khRkl8XlZ;n`>_3KLQ]N1D7E=MR^n9eLNGO0JAX9;H3?#WM:m0EH"
  918.     A$ = A$ + "_h5kM:oj1_i=Y:_BBJg7]KdZFgNS29NnmMm1X5QVDh1JaOOR5NP254oO;kI?"
  919.     A$ = A$ + "K?f17hc3L`1Y:k;9]kSf=JGGg>AgMX#;2=9dVfd3ldWm2f[>h4O>N]iY9k;9"
  920.     A$ = A$ + "]kSf=JGGgJZkhJ#X5C3?`CNfc>ecOPo6_##H;lOM<X5C5?`COjYNnSdN=Q`]"
  921.     A$ = A$ + "`oeaPF<=l0?j9?Q]W_NJ_mfCbn7cn1##ScdlHJL6gGbiQ^heMlh>O=>nmT4S"
  922.     A$ = A$ + "LIdlGCMJNN>R[36_N8[_VjdDga1JAKk1:kc3hO]i52foHf?02JLVVWPRkUB<"
  923.     A$ = A$ + "^_Tc3MiEgaSklehhgCB<bUAcO=eYiii8^>X>Ol>oLVa8[oiD7XgNY4??#I;j"
  924.     A$ = A$ + "1bc[cTlj]kSN4kilNkiliaa\GfSGX#Jg?49biWCmL]l]QF4Jblfd3D^laN0A"
  925.     A$ = A$ + "_oB9HkGTmhiBBknP8i>o0?0Gc1N^W7P[9]V78ONaO7GN`^kbNjc?I>lD1?WP"
  926.     A$ = A$ + "Xe3g7h7X5QV4JCKj1^?_^?Qg??S[m1HKR<8?CR][G[^^L]_0nfg?Ul0gk1?P"
  927.     A$ = A$ + "mhWnDR\>?FR][W5[;dRfd3<2_>C0?`m_?kalG?>A6W7;afecRe5JAKj16VGW"
  928.     A$ = A$ + "Blj]cm^7Kg7oh;>\[Td^?BkiEDG7fE3FX_QFdfNPRB?`3ie?fl89aMLVNLMS"
  929.     A$ = A$ + "KG9a]?==^XV_`6O#c;MS?\mg^J8Zc_#4?dRhiU7afNPMfQgSk6?NXV]3kh<m"
  930.     A$ = A$ + "h?DIkT^?==^XV_T:nd>o9<#;2=i`fb3<b8\RU:a^3_^?hQ?<nl09aMLVNLC["
  931.     A$ = A$ + "GDkCCS;Zi;YR?]cO22dR#C2]YEl03?\h_YMKa[kmhe?fl09aMLVNLC[GDkCC"
  932.     A$ = A$ + "S;Zi;YR?]cO22dR#C2]Y=m0KNWk`^k3NPiLO=4VLH3deWImn=Y6GKhiCX5C3"
  933.     A$ = A$ + "?`]gJ;a[5aHfA3Q97f0MmIF_OCZae6Nn4JaDa3\iV\M^kMKbMDh<kO7=XKl1"
  934.     A$ = A$ + "\oF6bnJ79jjGKeWkXP^nediEB_>MVe[#>_BRe5X5]Y7H`17V=fH5IKLkKcfV"
  935.     A$ = A$ + "OOH0LoHK]m>\=U\U2K60j6oi^oMTH#NS:RjM>c[`fo9BO`IK99MnCjn<FW_3"
  936.     A$ = A$ + "aiE_c?Nj?X5QV4JCKi1:8m0=e9gAfOKM2K9IC3Agh5kg;ghakhKm84i?DXNn"
  937.     A$ = A$ + "96mOLI;5JIci4Z?SdhEeiVLni>WllD#;F`ZNP15o=\HMN\K^mf7cFKc^5Hcc"
  938.     A$ = A$ + "bVB>_SI<KYP1aT8e=19[d?a]?DS_E=_dUGangBRDo1]8dT#KJ=?#Q27k1h_F"
  939.     A$ = A$ + "4?fHccWK;Aga=V]THhhC\jV#TEjWhf7ZagZVGjb[gnm[m4N0^VdfNPeFOM^_"
  940.     A$ = A$ + "LcV\n]8J_iFBBkn`<l[mPFdFNP>li1FQGg=hegSeghf6bVB<MlQ=?VVo=e##"
  941.     A$ = A$ + "i;Xh2:OVf7jbKHSgdnL391=?<Mm:Xi_Y[oWolg_fK5ONP>\X7h6[]V_WkhF2"
  942.     A$ = A$ + "_XIL;9V>n`V7Cco]d##i;Xh2:OVf7jbKHS?ZmIB7GDGo?oiOCM7W6L]Xel0M"
  943.     A$ = A$ + "d1K0NM6UG_UGI5f=U?g1N4meZ6a6B<MlQ=?VVo=d##i;Xh2:OVf7jbKHS?Zm"
  944.     A$ = A$ + "IB7GDGo?klGh3PVCB3^F4OGRQf4JDKh1#mJLSKL:MoJL_hZ>5[;iRJmbhmY?"
  945.     A$ = A$ + "]7dRFe3<`0\lS>:K9NMGa[?^i=I[`k[EFME7QeDhRFmbhm9dJ#caeN0X5QV4"
  946.     A$ = A$ + "JCKh1jSGWQieKa6=H;ck5lj2^1__`f;S798JehYe`SLPF4Jbn\Y78ONfehe]"
  947.     A$ = A$ + "1_?J2oNb88\6ndN#;2=Y]m0;Lm6l[1]j9\lb44f3OJ?X5C5?`eFR]DSElA32"
  948.     A$ = A$ + "2;b9J?X5]Z7X_n4O6EWKQ5I;^dbnH922;b9J?X5QV4JCKh1ba[cP2?`eHGKY"
  949.     A$ = A$ + "6nH922;b9J?X5QV<WUl0mb[c0lj=kLcaFHa5KbLaTT:?IMLUiI[Nm`_f3JAX"
  950.     A$ = A$ + "9keVNPQ6jH?`e^FCV=V<_ThVW\>^bl\E_NL:]7l0L=Y]m0eVMFnePFX9e98\"
  951.     A$ = A$ + "8neN#;JE?#^LROWdc`[k\ljkAmiS9Nc_hVW\JOXVg\bl]=5oJ?X5QV4JC[h1"
  952.     A$ = A$ + "j]Ga_CjY[ES=3oJ#eU<CmHbLBRKNbZmQJNc:cgfDZkCkEU[5QV4JCKi1j7NP"
  953.     A$ = A$ + "IVAhoZ9IVjcbZ67VEBLcCF]?DcKFInf62dJ#cEGZmZ`eRYR7XJEN_DWgC7c<"
  954.     A$ = A$ + "c`Od?N7CMo4]FJGFgSAO>S_hafC?MEQVdfNPbL?#5_iA]jL_H=FUZ0\]lW5D"
  955.     A$ = A$ + "ohmY5Oa5YSK:ZiYV6RKMB:R#o<S29jjH2^nL^mYYioHM5dL#kQh;KI?`Eie9"
  956.     A$ = A$ + "7_Nho3PUiG32gC4^V0f^LeI4NSSao??S62JLVVWP#=?EEfFMOA]>959el>Yb"
  957.     A$ = A$ + "GBg?A=obS9eL#kQ]QF4Jb[JC?#omcVPGgYhmACZDABE9Zo\>2JLVVW`FW:J8"
  958.     A$ = A$ + "^e9Y8YkWhV_FmjC8e;ndN#;2=Yel0laV;G>FYYVVkoZbV\ZTbETDERj?[SP6"
  959.     A$ = A$ + "WYiIJ9VVW:J`dj4DmD?^^a[KLA]OdE7_l5dhdMLeh3Z_2KO7BmRW^SC9h1hJ"
  960.     A$ = A$ + "BX=]Z7HRb\9WRg;ET0?AXXRTTJLC99^iadj4DmD?^^aKjh<]O<]_2ZO<]OSj"
  961.     A$ = A$ + "iMCkG=WoldMCGQolaUC5?`hUVTEJbb\BUU<iTQTbBBZaI[l#T>W7DR[Y^[\#"
  962.     A$ = A$ + ";J;?`UTN0lkSK\BC`:>iD\RC9QgGQSYTTDScFiQ8M>?X4GCMgD\a:>Q#CN\>"
  963.     A$ = A$ + "^ek1jV?fNhe[`hU4n_CX41Q5i4]GQa:ajYgL\^kf2N0>2?0_Nh_c_SGTg3L?"
  964.     A$ = A$ + "hh5;9Y81Q50J=XkVD0dRmdSW7`<ML\l0Mg=?VNIi;<6oJ15U<>1Q5aCgEB0d"
  965.     A$ = A$ + "R#C2]Yml0m`6QGgAimaXlNRP`nD\9S8l0mHM?``i;`mOSkS24]ELail6nndW"
  966.     A$ = A$ + ":NPA6UUOdah<^TA9J[`klF19YMo4M`oGR]Y7hbljd=?6lMH6n?LmPS9?AK55"
  967.     A$ = A$ + "D8]kWX3dR#CNI;j1^Rd3<4_n3UOD9i9J[HD5Bkn9j0]hE\Y70ab[5noOf#3c"
  968.     A$ = A$ + "k1h58R1iE8]kWf?`og1PV4JC[i1^Bg\16L8fP3=2WQma#nNllHH=KKjh<=NK"
  969.     A$ = A$ + "A#mSoeTcKmaKoSX\FVeWGA=OaEWLni1OGRQNf^NP[8ZKb=g^hi1jG#HGOb:#"
  970.     A$ = A$ + "N0Sl03<PhJ#3R[7L:6<0Rkh<=NKaig?m;9l[?I5Bjn=Yd9W=?#;V6NPnjK0F"
  971.     A$ = A$ + "omc??go#:<H04gaIJlfRPjW`^nTE8YkgTBWLfl0]X=m0MaSmblHca[KOXnZd"
  972.     A$ = A$ + "W2jf_Y7?[7Wjn3JLV^NIJOZ;_VF?CcCD?_ZKm9^eaG<#;2=IGFb3d9?f^haR"
  973.     A$ = A$ + "oVNQ_oJWQL:XKoVNl\NLZk?XaIjjUYmY^lJJm<=?AmlZ^eWhF7Oa0]8dTMJ;"
  974.     A$ = A$ + "?#GM9lKhc[=nklkI8W2jf_Y7?[7Wjn3JLV^NIJOZ;_VF?CcCD?_ZKm9^eaG<"
  975.     A$ = A$ + "#;2=9dVFa3dIW\^he2OoUagS02Rd6X5QVddo7eg:l0GegSGEIOoGKWH[1:K7"
  976.     A$ = A$ + "gj5Dl]jl[KlZ[_1]^KM]H4kWH_NVFN0lMYQ7[8N9M;akWE?^jnC:DcOL[G#a"
  977.     A$ = A$ + "gZc_^a[^n6dj^]9ZmC\G?iJAKk1086od]2j>^jnC:DcOL[G#agZc_Y[_1]^K"
  978.     A$ = A$ + "KRJo4gngCGJC?0nLZB#TEPl04^>YQ70O>E98b:#N02G7Kj1^4Z3l0hc<11A6"
  979.     A$ = A$ + "1?MY=m0hmRRP8[PEm0:gC41AFP`ZO9?0a5=B3?#c[mL1Wc\FWabGH[KB=ndJ"
  980.     A$ = A$ + "NX5b3dbe>T78K<?dBJh188JSQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl0"
  981.     A$ = A$ + "4^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7"
  982.     A$ = A$ + "P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl"
  983.     A$ = A$ + "04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T"
  984.     A$ = A$ + "7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQ"
  985.     A$ = A$ + "l04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>"
  986.     A$ = A$ + "T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`ea_78G^L\Nk]GF7MdAZgG44"
  987.     A$ = A$ + "fR^k^Kacm3?#nliI3?l`\>k\cD__88\1hikacmgOom;l0C<a4\a7OLae6X[5"
  988.     A$ = A$ + "#LA7XakZ[^H3>hPRWk7NP[Om6\iWoJ\nj[?am7Ufm81A[4lLmhNP:EZ4KZYV"
  989.     A$ = A$ + "Bh1FNiEinPUIS>J1^gH8Q?0S3gK4l<44G40?g?dehen>`038doC?md2?`=_i"
  990.     A$ = A$ + "]I[]f]H;^hb\iVKAFQ25H3=d#Rg_8lj6PWPPXM6XSamiPko1gk?doc<c<\Je"
  991.     A$ = A$ + "ZaFOm=hLK^?hFR[7\hR=HU;GVE\HAam:QHPW1_f12RfAPn5<b8S`_GWA5jk:"
  992.     A$ = A$ + "EZ8doe[GWmo1OR53%%%0"
  993.     btemp$ = ""
  994.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  995.         IF INSTR(1, B$, "%") THEN
  996.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  997.                 IF F$ <> "%" THEN C$ = C$ + F$
  998.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  999.             IF MID$(B$, j, 1) = "#" THEN
  1000.         MID$(B$, j) = "@": END IF: NEXT
  1001.         FOR t% = LEN(B$) TO 1 STEP -1
  1002.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  1003.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  1004.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  1005.     NEXT: btemp$ = btemp$ + X$: NEXT
  1006.     btemp$ = _INFLATE$(btemp$)
  1007.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  1008.     BASIMAGE5& = _COPYIMAGE(v&): _FREEIMAGE v&
  1009.  
  1010. FUNCTION BASIMAGE6& 'face.bmp
  1011.     v& = _NEWIMAGE(300, 297, 32)
  1012.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  1013.     A$ = ""
  1014.     A$ = A$ + "haIkMV0eLDEU7_b>9Q\#24P<12Q\_72RA6A#1G?ZSRh9IHD>A<:PA>RkSSjX"
  1015.     A$ = A$ + "h0Z7L2<X7S:P2ZP8<jX\916A9\4PX\JRB#F2[RPAU=A7GB=m__bGjZjdOmG_"
  1016.     A$ = A$ + "lZjNOEMo>WO7dT_^CGgkmm_O_kkn^_XXXh83333333333333333333333SlS"
  1017.     A$ = A$ + "hH3333i`d[<<<25<m:33S#Q^D_j0?`3d```8gad[<<<25<m:33S#1C_b``8D"
  1018.     A$ = A$ + "`d[<<<25<m:33S#1C_bXCH:[I=aSM3K#nmb^6ka5OaaCoT>9a]9657VNUAoa"
  1019.     A$ = A$ + "B?X3:N2GiE6?XodOBL]Yf1nL>m?`7X_?gBKk<b7<m:SmmD>UhMin_OaeKbCh"
  1020.     A$ = A$ + "iSWCY]e6m6VNEeTUlBN9a3j?oW5G7ATiQEkiVWOYm16M>VNEiW3HI;CL=2]c"
  1021.     A$ = A$ + "`Oh7FLoTa0SYGENI^o;o;R[34R<WSnX5ggIdL<mZb3cl4>1a7[G6I67oa7_d"
  1022.     A$ = A$ + "U^Dam_6VNEIPioVNCR?V^:`l>bSDLOME7C_:<IZo7o7R?n]:cnnYnDfL^40C"
  1023.     A$ = A$ + "_:\h0NA_8a7[JDWU\\UIjF58VNUnIBG`58nhBS16lCVfEnRYGYCVlGj;9nh?"
  1024.     A$ = A$ + "S^WmN][ed^b1<m:mQdSe<l3ChB^4Cc:?7KHjERa^MEGUhS_<b?6ojFWYMi1<"
  1025.     A$ = A$ + "m:iI?^X;BlaC6i?kngnKKJFm8VNU<<SgmkFla?6badGmZ=][^P<fAC_Z#HA_"
  1026.     A$ = A$ + "bGYhSG<TW5lbOiVVE7B6KXYGU[<Y;l25O<RQnHg]jPX]9S]cd[:6k\QA3<[g"
  1027.     A$ = A$ + "bKad\jdaAVNUgA;m>HS`P3h0>0CgZ5TaNIjENUIO\7[hao6Q7cLU[dd\j7bH"
  1028.     A$ = A$ + "[<m:_``NRW#lHNS`WYMRWHOjFVfEMbHS<mZNRQoX?Zhah6U?6fSl8V^e1JjE"
  1029.     A$ = A$ + "nTi]RE8NL]AiUIoVOcVNe1JjEm:F_AgX8IA_PG#UFg:Sm`d[j8f_?iWDlhGS"
  1030.     A$ = A$ + "Z7kc7oSGIe\bH;<mZf2[WiIX1ZRen#6KPYGeif<33QHo>aC\bYIUa6HjEVFU"
  1031.     A$ = A$ + "A`aRGlR[<JFINf=mZn5^?PU>^d`XoH17l1G9d\blLKjE=Umll>?aS7=<68fS"
  1032.     A$ = A$ + "_fG;N9;I9UJM[<?cVNe>aX^kkFlh#3SfUMIcK^DGKYINN=mZngfHH4#\X5]X"
  1033.     A$ = A$ + "BYVEVWCC_bdZ<:=D6gk`<?SVNEl#omoNaSc<<l5CO5[XDYIUii[R[G5]m];N"
  1034.     A$ = A$ + "lUQQ_I_>eC]d<G[<?KEHm:YSY<<bCFh2GHY#c:ccE5E_J??ocGlh93SlV9L^"
  1035.     A$ = A$ + "WK`[IUiIZRZG9MLTQAA1e2?JFB?Vcd[jLfkcn\5?na`XXIgGkJ3fiIUiIYRY"
  1036.     A$ = A$ + "G9MLSQQD#mI5Rcc:ccA5A_JF7ga9NlRQQd<eE^bPKNFIN6Z8jEB7WHHX52]N"
  1037.     A$ = A$ + "k#V?oULmZUN#7Tha766JSi]`56<Wi`<Of;ijEB7GHHXE2Unj#V?gUHm:k>1d"
  1038.     A$ = A$ + "`XoIXojOMl2F`2D_VEV?gUDm:YS5<<25FhOO]QB?V]ZZG=og`K#lH03S#QYo"
  1039.     A$ = A$ + "ZNEZN?3cli]TYGIWOI3S>Wi=_iYfm=<cWebVNU2lmM=oZOELdBFBkk?nLO^T"
  1040.     A$ = A$ + "GSdO^;SPM5kKkh76cHRS>VS9Xm53K[K=NncOnZL?3clI]4YG9]?_SIlS_c\o"
  1041.     A$ = A$ + "]3SKLfL<=OAGS[W>8mHIC_BA`M_Z_7Kd8;KI1gH5A8_m31V_H^cM^Z[_:gen"
  1042.     A$ = A$ + "[D_>YO6Bc4Fgj4g??PL?gCa<fXI\lU7<SG:4>jSF>Oa?oW77mgnKbK3J1Sib"
  1043.     A$ = A$ + "^<EEKFInlE2d[Tfo>P<fa:gh37OV?CLdOm_:_]#Jn?o?UgG#n^D^VUVFGHV?"
  1044.     A$ = A$ + "K1\Ne2OE_:MgkeUNLAch`?lhXo_o_Zgl]Z5[8^]_A^_k;>j_lGTgfd46l_mg"
  1045.     A$ = A$ + "fgN6ZQl_geSYBmjTF[JWN>d67oa;ohQF1SCZ:JFBK[K5[LU9ceBQnRMod>=E"
  1046.     A$ = A$ + "\^`^fGVje9]Fe\FeZ4gOfDN^WCna0];_lGNiFgjenJUg6g^l`?\:GSX6boNV"
  1047.     A$ = A$ + "?C1ZNe`Od7ELOICYVOElHo>QohODUSCl2BKKk4F`2DigM<cJac^cHXDJFM]?"
  1048.     A$ = A$ + "=e[CB]:YmQ=U;iBT?V_Ki\>;eV7U:U_HH3;>RcX_bd]6cgok;Jng3ImZI^jE"
  1049.     A$ = A$ + ";^oKWhj_NiSekE^P;8>j?oWEehT:]_hgmkDU_Hb[LUkXng=mZ0N^EL6<T>nf"
  1050.     A$ = A$ + "GlKo]9JFBKC=OALdeMMZkk?Vm\W]8ca:De[TfOeDT>^fg\U]X^eSDYm5D_>:"
  1051.     A$ = A$ + "bG8aL\<m:?alVWladnVY>ehXWnY3_J;]\j;^gk=aGX4=;gL\:B=[#C_JYJD["
  1052.     A$ = A$ + "BjHilT=^ah8foEU<6YBk;0l5\?^BKWok`L\X^\<mZVc#9_::`?EI6S\[kJLd"
  1053.     A$ = A$ + "ML7Z;o9EBO1P_h9OBeh;VcLVCQfCB3=m:Ym?E^a7>N`7<>j?l7TgNKnRhXKl"
  1054.     A$ = A$ + "6EU_HFcJF5fj239mZ9oUobRkKb`klM:O\KAa]MK9e3TBnNm:]N5WoA5i;V`o"
  1055.     A$ = A$ + "eoEQEgkQRNeH_iKFLoBUMl1L`7LLd=MCaAoYoTJ6WTQSjXTg6ETX<OAA]^`#"
  1056.     A$ = A$ + "A_BJoAUG_2^j[>Yf5efn5nfNKbKKZhnRI<kI_SNh#EG_Ja7fQ9^oXb[EihWm"
  1057.     A$ = A$ + "cDGmF;^=AJOQdfoo>Ck0>PLoNZ84d[Tf?\C<Q98O\ZDLEGELdVg\NF;2kKYd"
  1058.     A$ = A$ + "f4Ym5:j<ZkjQ3VNUR#jhD9iB_dh8bUhcl<jHL2m<:Y]9Bk;DD?GTm:<?_WXe"
  1059.     A$ = A$ + "^NU:6C8XNe#6b#RKe?KH3KX_OW2kc4c]l:^RhX7h1RSNnWgl5=lCQZGil5KK"
  1060.     A$ = A$ + "KZ9?F<NMVcLViF_mCcjEco8?Bi]o2>6if_mKO07O8bhT_og?9g9BgoY?]C[#"
  1061.     A$ = A$ + "O^KgOF6g1>5Y_Pnk7[?GBOA:fWSh8b]jK#cjEBKgK:5`MD`Kl=n6Kka6=nCQ"
  1062.     A$ = A$ + "<6Qk3d[mJCVSUT[3AIjDRi;ZmmJA:kLO#m=T7JFVNE7bTVTJ7O`?7jQNXioH"
  1063.     A$ = A$ + "4^SO8G_BOODE0j1H?E__H3K8>jaN<i7KT2FCHNdo6dZNen`LmEPM_X7Sl5n2"
  1064.     A$ = A$ + "OQ^IXAVOhm8g7W#^N_UKAfNAZi;Bhomo=i>]D9iL7fmCnTcUngPFe[TfN;eH"
  1065.     A$ = A$ + "4OmC^?6ikmmBjOWBVg4cGT`?h747MGgUjfKZI<SIhmjaBSjEJc^KSAJ2OW_C"
  1066.     A$ = A$ + "bJ2Y^6Tjke=OA2TcMFCXfj7\e67C=_kcn=S:e[Tf>g:bah^C^fLXme?lNU[S"
  1067.     A$ = A$ + "An_o_Cf;MZ_JYnn5cGT`ocoCLdjG_ZfS#7\V#OVgMC_B?SAlm?i^N5gm<?nS"
  1068.     A$ = A$ + ";G>\<OA2<GG>?Q?kcZZLH1COjC__m:\\ZG9]me6Sd1jET3;9[m7cGDgG#>\X"
  1069.     A$ = A$ + "NhDH^DlIN\dTNeLGa:4gfJSAjPa8\>4jSOVNUln2YGKN;H:_VGCOWA7OLOjX"
  1070.     A$ = A$ + "9m:Y][fHT>L<bgmkVDcXBe?a=OAMOaUMI9e<ZF>G>=P_bSUYGISAj9mZkon="
  1071.     A$ = A$ + "m:=h;D^NU_ZOD]XG]h3o`5gV:mH4b=Y_nQg[LO<2[7L[K]D^N`PcGLiG^JG?"
  1072.     A$ = A$ + "8<eJjD^nlNI#_JDgmM;^=Eja8P_n9_oL^3mZ7jQ:UjE1W_PlGYdl]33OCKZ_"
  1073.     A$ = A$ + "l^g[eRU6d[V3WIC5HCe`HT]_m]gAS5Jf?lND8SAX>5iNOGZjDdl59XQJg]=H"
  1074.     A$ = A$ + "b_Qg#?gK\dPNe`n=o6a]UJI<b86a8jTQ3=m7N?:4m:>3QL?]D2[oZPbG#N4i"
  1075.     A$ = A$ + "<4bMlURe[6B]H5joXQ^NUdfa>Re\VL?n;8jW<lMjGiE67mD?EY\nfCSjm5^c"
  1076.     A$ = A$ + "b9mID9l3M0mJ_lCJmZUn2OQRK3k88VX0R3I]nMj?lJ:Ta8Gh5FokdO^WC^_C"
  1077.     A$ = A$ + "_8VkB8h;hL6#OAFbNUAKB_FkXB[G9]m[[X8R3okXbnQ\;gEJh<fZ8OAL1oiI"
  1078.     A$ = A$ + "7n2=d;bJCfkU_lnZ[Q^=_kVNU^7STVcol?oh]^e]6_]]]]h=^a=6?^a=^Roc"
  1079.     A$ = A$ + "aojoJmm?oF_Ei[g71l3HganSO0o1n5AR9LnROl?>Y>hDL^[L<T7kaj;7FMkL"
  1080.     A$ = A$ + "\TD_:4\_=UZlmi5S?0=d?TQ2JmiZ4W_#Qm3iFA_DkXRZGY0KGGAA\7eJ5gJ1"
  1081.     A$ = A$ + "e`m=Ag4gFV`i;Dfm=a01e?;W?W^9_kVNEGbh7_la[5=SNde[SQ]\UTnGRdnQ"
  1082.     A$ = A$ + "ZZNEJO1md7YcSH7`n_okOOejNg\V#C_Z;Y:>7;G?Tij^>MMFe^ckDNKSTn2>"
  1083.     A$ = A$ + "oVB_^l>PA_^eegL\jVNfPDjEcQkUG5Hkj9T>V]8id?mjWkSKkfdE]9bWSZVV"
  1084.     A$ = A$ + "EJOA0D73=2jEMC_B^[7oUjeEiVKUS7mAU?^]87O#=RnCn9aAojO]nfklZdlM"
  1085.     A$ = A$ + "?Wc9[_#;O_A7`N^ZEegJ2Gh2GH7]V`<_?VNEW1SIckcN_6H_f[jW_iOi_DUm"
  1086.     A$ = A$ + "MgnXZj;Tf^g5<lkj^jZm9<ckSYGeiPVUda`i9[NeecE2e`0ec^fVKEEaG0Y["
  1087.     A$ = A$ + "W4=k;J3LkCXYGEP`l<:ceSUKl1WE`kh>BbER6WKEE`G<VaD_?9ZMOAKPKO2k"
  1088.     A$ = A$ + "TkDe<_75TNE#dWfk4HObXF_U>NfgLVWImiFm;n59W]IY]eV_8>jJ^V``G<0l"
  1089.     A$ = A$ + "?lJN=Mli9<ckA1YG=A>OV:`Ni=hkh:KeImANTeo^LVK5ie=0>ooUBO1TNN^\"
  1090.     A$ = A$ + "WPQP_H0H<eNNH=QMBOM?ckA1YG9]M:ghYOjTjhCjHkNUA>bjS?hNhTljZUJ]"
  1091.     A$ = A$ + "Z:k;hkiaG`cVdfG?1[9\C>ocINm5PNed?YCBLKD^Qkkf;bnUP_I`3^nn?aM`"
  1092.     A$ = A$ + "9mS_#lkb;3nRgkk]^F5n2Za<NV2hLFe8DG3LOZbJ2eXNehi\T[0kD^>>QN4l"
  1093.     A$ = A$ + "^\;b7_gY<lQGOlajFGbj>2\JW^dh;nHO\jn2n^3l5l\4ZnRnQAMEGEOkA8eQ"
  1094.     A$ = A$ + "U6e[TfnD8`N<CmOC<Vdam];;MYIeZNT79iI#JKY_l57bQ8_=^MiKn=[GO^h;"
  1095.     A$ = A$ + "nYodTWQ0^f5J5MBMHUieJjEnML2Wa^A=:iSo78nPO`jJE\oC\oJUYa7lLPnK"
  1096.     A$ = A$ + "1d;[kILn1dZh>54O1Of;;nRV0kAHkfGgclJ=m:o2cMWmMVNYVdS3J6;NaI7O"
  1097.     A$ = A$ + "`JeY?all?_lf>O3SgiiRW_G`;#NKOSLFWEfeoAo=Vh6n<GReZP>Y^AclJ=m:"
  1098.     A$ = A$ + "o3ed7WI2nNbGj;Ena5Ya=nPJFPc>;g1TLG5EF7O`c5?OlL:]]?=oSoSem5d?"
  1099.     A$ = A$ + "[X_hC?]RhVbZ_85Y[KDC_B9#oDSe7N;gBLdGm[:gHSGl;>kgSCO=ViLlH?F`"
  1100.     A$ = A$ + "G_d]5llac9?_lLOX7ZLn2G=PjdYH?0_gk=9>Y2XCi0m:gMYj0=7[<_FC_:o7"
  1101.     A$ = A$ + "W#?MPa9[M]aA3MX5gH3ngb=f`=W:nNl=^ahX]]]4mdb^FEJO1?_lLccoQOh5"
  1102.     A$ = A$ + "[>5n2bUFjL6BO\Rh2VCE0fOHj5LjE]CM^WieVcjEUjJ_ZMaYKAM=A]omSnA9"
  1103.     A$ = A$ + "ca9?b;?_W=ZAA=7N3g#bH3b]F9[NNjHO1?o\f;\7L?cDDn2bG8oKQoWh0fOS"
  1104.     A$ = A$ + ":V>U3Z1;bQEkdKIblJcImZY`gYX0kSh`h4>KmL6GX76A<k5OanmkiimRkV^d"
  1105.     A$ = A$ + "S?XgibHB6Kn#?DbL<Z#[kXY`co_kgUH?^aK\hl5<W:ngbe3[Z2[5_OHRWbYd"
  1106.     A$ = A$ + "gL\#_JPbQEVGK>[G=HZm#5HOD34OBOg6][7l1SSfdVBfS>f7KRW9^n[meRSN"
  1107.     A$ = A$ + "[_eTLeC_7P_WVjjL\S=IO^No_oTOWdOg]K^DlN#mk`k9_gD_Q<W:>K=Eda6]"
  1108.     A$ = A$ + "dGPnMSn2\OH7aNRMnOjO:a^Sm7o0n3l;hO`?eXOXol5l_1oKQo_Rk;6dcolk"
  1109.     A$ = A$ + "hLiX9m:Y];Z4RE1dbMen0iDQlIl3n1ee^8ghXO1=K<1oi<^Plfb[QLCak1S="
  1110.     A$ = A$ + "hmd]f_ZnlYjDO1f?\SH?a^RO0kL[l3]S_`M^1ZhJE>#_ZMj?bINMVNUlhb_5"
  1111.     A$ = A$ + "OG?gGF?iCVD_PLGoA?MQebam=7e>?e81m1Ykj^BfSnkknBfg;N=lMg^ekIS9"
  1112.     A$ = A$ + "jNO1f?gl^`^blR`>_i=WHgMn1n_hG`oPObl5M4XGe>WS`<_^LD_Ja7fQ9^=9"
  1113.     A$ = A$ + "ha=n1H=MPko_mMebh7<OQGHZedYXVAYgbX1mZI]ZE9^=a``#W\g;OikhnW#3"
  1114.     A$ = A$ + "jEk>[WG1f5333maHnFO[n>gcLW4fZJJ8c[;7e[6=[eG1f5333ma8^eK]]jC3"
  1115.     A$ = A$ + "INMiXNUdf3333M3eh>kAXYGIHHXMJWn:CVGSYGIHH84LVLXV6<m:333]SYGI"
  1116.     A$ = A$ + "HH4:d>m]_<_6C_b``#8LjE]j<4VieHjE6662AkdWAclJ<m:333Q`d[<<<25<"
  1117.     A$ = A$ + "mZ^Pgck9QCl4CHe[>>jMm^RS>QC8>jh?nhXSkhRSN7_Sh8>?T_mgNLdaN\aA"
  1118.     A$ = A$ + "_]gFLd:GILdaL<boiG[#?a[EaClg;mWA=2WKj>ILi0<FEcPN5eh^YGe1d[a6"
  1119.     A$ = A$ + "Lo;IW?o^gVJf]\#ObZGS9Mm>2UKK=mZ^PN=fPnO4mVM^g0DNlQZ]UF?#=1^["
  1120.     A$ = A$ + "LjeHBjAPL?Wld?]l??]0C_Z;XGS=^X;:Y7jA_7^:g;?kekTdU\TZeMfCo1mm"
  1121.     A$ = A$ + "_N=VlJ^VTkdNjOPBold2<mZ^PN=fhSlARSnQo`TkA>VSPd??QX=<=Uik_ef1"
  1122.     A$ = A$ + "j9fmZ=Tnd<g]5dSJUniY5HjEM1mJ\1iR7m:^SVZRjE3KHnE_RkZ?^[[ZRfBP"
  1123.     A$ = A$ + "kYBOXGamLaFgZl??]0Ko1k2jeHSU]\TkYGjWjE]kC>OZCUV_dG:i>2\:>?[S"
  1124.     A$ = A$ + "jXlSNejGObMFVd??]0C_Z;XGS=fkm>i>nSkL0^[VTni9T\M]2boRk>UAjWcR"
  1125.     A$ = A$ + "TJSOkIK7gG?GoeWXi;mcC;`d[j2laH;bi0mCEbG\d??QTMKPhN^7e_7GZd^R"
  1126.     A$ = A$ + "Ne6f#bN09mcC;`d[4:nPkIL^KWZBg?\5QNe=Oc9k;OEJ>FnB_2K7gSdBold2"
  1127.     A$ = A$ + "ddiMNXQBm;kShS;iBRS^UK9iNWCjWW#b^e>fEVW0gk[E5=;OHgh^NQk8a]]="
  1128.     A$ = A$ + "iONj76L]?KJZOb4<g?>n8nPkSI^?Oin>EjWWRPCmD;6mZoioiTi^B=>DEf_`"
  1129.     A$ = A$ + "NeV=lQW4?BM<cm:]d??m3LohXYnegnlIo\RKC:Th3Pk\LfoHZ=IYON:2NY_d"
  1130.     A$ = A$ + "RA_JNc;i>NWkkJVSUd?gQ#lhRGLR=SmoiIN6iONj7VhonoNOjEJYo]7<g_cn"
  1131.     A$ = A$ + "HL5i;HM[CmeC\gH83YHd[6lPC\]olO^Z7ki=nLO^NgVM6WAbLBi<iXhlYbmk"
  1132.     A$ = A$ + "\V^OL2VL^__kK_7S#m^L5GALd3nPbolD4<bAF<jE\f6\]\g[EQeJGK^6N9FT"
  1133.     A$ = A$ + "m[VJ_BakG=k=XYGe5LSgH_7SLh7NbL`IN0EQl2CodY8d[HMW<nSL7G5F[]?\"
  1134.     A$ = A$ + "IH_hlF`I`Gae_\k\hXUkgiPA_2VlTk]HT1=XTLHA==D5b;lUMI5SNe7n3W<n"
  1135.     A$ = A$ + "kf^]b_N5[g]G]GSOl9f[[mJC\G:>FdEkEXGefJ8i\NeHI_XEP]I0Qi5iS_GS"
  1136.     A$ = A$ + "J:fb;\o0K:i_JCKZlGgXCLRm^mRLGQ=cEK=:M^nSLm[_?m:ZUQ5]X5Y6mZY\"
  1137.     A$ = A$ + "Ve8^]Y]YGSEXoSBOl`eonTniAkf[fE_RjRI;KYlGKKnbN1^JGFYaQClD>Und"
  1138.     A$ = A$ + "[XF6dTNE#]V#O4_`nb#=jYhiQk=6eXbG]ZA<RTaNGjU67mh?Nio\IjCmMjE8"
  1139.     A$ = A$ + ":?gE0eb`RGlR=m:YRGXN\YV6:kS]0>W<iYNeIMF9[5l:_bTm6\\g[6lUN5e:"
  1140.     A$ = A$ + ":kC]R]G>m:fK`U\TUHjEB5_`H\ZB]2i;KFo=^cES8\gP:N^2N1OYmS=c=7OU"
  1141.     A$ = A$ + "^F#`YGA^fKeI7dd[J1CI:mNl2e;4ijDiWcD_1eg3mG?OZEA]XjbcNEil>kSe"
  1142.     A$ = A$ + "FCnjI]Pd;fh^4#jWYF0JEDKk;LQ;\UebPYGe2>kcf?SgX?YAOM\\?63H=7\_"
  1143.     A$ = A$ + "MiaL[HM=EUn9S?\KL_cA=e#]<XhjJ7LjET[MC_Bhh6V?NEH=<>#GVLfe[eVM"
  1144.     A$ = A$ + "]HhMXEA>[Z:m[?OD73>MNFoL0D3P^JKWLGIjEm0_XGD_7g#M^CMHEU^[GXO["
  1145.     A$ = A$ + "C_\d7c[Ri8lCn9EWnQ\?dZVi<C\M\F#>Wc:?^;mm<Qfd[Va9MBRKO:dh7>S^"
  1146.     A$ = A$ + "E]NP2S?hIUiIMWgILd7mS>`ieRon?d7Z^>5iNQjVWGOEjnV`Gc]28OODk7Bo"
  1147.     A$ = A$ + "<e2f[E]ZfZ_G9UNE`=7;O4o`L\Hn1:nlVV;`jg#WVa=lMmTC#jQESM\9k51W"
  1148.     A$ = A$ + "k9nooEn:e7SidZhgWGGEknlbGjE\o4Xe[lnTY;gE3DO_BDm:U?oD_7o0To5>"
  1149.     A$ = A$ + "cYBolDdP_6MJZI:Z;MbU7em?m<0Vg9cQRo;gA7lWcO?oNlkGUF3]?Se#_:4n"
  1150.     A$ = A$ + ">bJnFgJ1WolW_Je[V8eAYdfZR>6Z:]?Q=9^\_ecanZclUh>;VN23i26m9n_D"
  1151.     A$ = A$ + "WJlWcO?oNE]kSNbaY?e[LiP#akccHZmi<miLF[jE1eJ2I<S?RQ^h;>>jV^YZ"
  1152.     A$ = A$ + "E_7_EfDFS7P^4oGncZbf5OZEij7g:OoDMe9:[5LP>7>VNE70iJYGSSXnCY?4"
  1153.     A$ = A$ + "aL7ZBiSaXm`7JE\W5XGaJ\9o3:N^E#WL>L<mZ>0O=7;N^Y_dbnM9mcTQNheo"
  1154.     A$ = A$ + "jmgL[0VK5WI#5?g:`YGAM]?#W37C_Z3aGcG?#RU<:#lE\UK_E_kkFmWIemLE"
  1155.     A$ = A$ + "[J7e9:[5\MbMUTjEk:m8B5Hg:lH:ZEKbeLEYNR<6HlYNUkn3Bck;HLmiFaN3"
  1156.     A$ = A$ + "f>ee^djE1gL\leJ21^kLX^H<=;3OZEaI1h7mSBbgPRWonX[5okZkZf]>A=mZ"
  1157.     A$ = A$ + "^P3i#lC\5iNWk[4UO>D=bIVcLlCl4g;S^l\_a=Znn]fnLH7f>F;h0MO3JjEm"
  1158.     A$ = A$ + "0nL>FD_=Eejab81O>g:h6^QTJ4EiaD^e2BMGe>m#6C_B1aHOZ?ELdML79ki\"
  1159.     A$ = A$ + "bS_<b1XnnmYNUklg40gK#Y[kZ1ZO][9mZiLd7]hf^>6OLo4j0k?mb_ZbMXSA"
  1160.     A$ = A$ + "2_jG]oRQ>eC=A[RN7cCnTZ_V[0G^[JWn9ZVd[2biHice42\gcEQN#WAMlIlC"
  1161.     A$ = A$ + "jl\[hk\;7SmL?gM\_P]CoiCKjEk>fK5H75;NSe5`mGREckE3#CaWJE0kgLPD"
  1162.     A$ = A$ + "S<YgG`>Y>6dRNe1L#7Thf`>VGl;f_JFdSg[JmRPZ:LgOkKm:fkV0Y6TC__P]"
  1163.     A$ = A$ + "CoiCKjE1kJ2Ga:l[V5WCWbnM0JE7O6_#]ehZ?DdZhNiEjW_f0gmhLW^_PJB_"
  1164.     A$ = A$ + "JXTW#5H;k8H^gn<nSNnk_jG54O7YAGR?SGLk98[5Tm4<0F;h#NRW8cmRJXZG"
  1165.     A$ = A$ + "aWKY]UR7o1oKoKZoLOId5LNWWoSE#_RNLh?kW54JE#jk][>MO1eTN5\XGf;C"
  1166.     A$ = A$ + "LkI73a9SKLn=>TJbbjAFU;lIl1g=Q^ce<mh`WjYToi[=HZeVCBgLN1eZNE#>"
  1167.     A$ = A$ + "7;dDh\JichaMMGC>KQ1#MdHd6\KkVOS?^X;ZnI_Qkc3UO^VMhZADbMEgTWM]"
  1168.     A$ = A$ + "YG]COF25lMmH1_ggKein[Z<S_S;0GN[XoV`i4<#V7NjkLn^E[BKjE3>DgO<>"
  1169.     A$ = A$ + "74n>^l[oe]JL8TQcM\_S9>cc\nN2n0?#`4K<XWmIcL7>k]id8\NE#^V#`M7`"
  1170.     A$ = A$ + "hkhc=]YTmnaVWEH1gAIialZL[3dE_NBoLfVTnl=g]iIGSjE`Tn6O3a]_M5XY"
  1171.     A$ = A$ + "hkHDPkf:jk<VVEH0g7`iALPC_j7oS3Zc3ah>kc^[kM<QPNE`>7;0MUl8FmT?"
  1172.     A$ = A$ + "iTcbJP<oo:;iAM;hdZ8WE<g:b[I0egdBWWm^il2ZMmZMjcD81eg`_hGT?a\["
  1173.     A$ = A$ + "I=FM>XInfOkla_oUobe_S^H^ELfh3Tj]2jVk0W#C_JV[JERKWkJ#?IGfUl9f"
  1174.     A$ = A$ + "mh?nhX]]=CcBKlaohiSon<>Sjc]jV_iTnbN0ikgkE\R^j>U8dd[2je42DSji"
  1175.     A$ = A$ + "Al;LD7U=?;=aaMLiSOn`>\ji\Rm3lN_gPk\?dHNf;[jE1_VEN]OQ>Vh4]lIY"
  1176.     A$ = A$ + "1VdTb?O\C[Rn=d]N[1G]]Tnn_IncOnNA[BcjEkdW]#TlDc2^_k[nMi^d?[E9"
  1177.     A$ = A$ + "h>j>_lY_WgCmcK3gmK\GP1HoLdgi]:4d[f];ob5g^gCPF2W;blDcRJ\=PboJ"
  1178.     A$ = A$ + "`3WahldOjVG5angd=UDoM1fIcJGoNO?_LfV3=m:V3i^Aob#1nP^6Rehl0VWa"
  1179.     A$ = A$ + "hSH41eIc8HITS\HdZ8OE\?c4g48eIUSAOYGJVN8Z_bKEXXG=ggdKBLO#?1aK"
  1180.     A$ = A$ + "nn<AKccB6bCogKi]DO_0I^ELoDZlkmdVaDN5_RMXGamO3SQ[:jE>=;Ym1m<4"
  1181.     A$ = A$ + "cAOoXVO<ge]8WI1fg9[NbKOfTWLmiFM]GKLdmL?1kmlFSgEGnD[:4d[P178m"
  1182.     A$ = A$ + "jeF2[GSLATgankkn6TO_\JYfl4bMOFje1B?]RhT0do=XJaM>m:fC#OVWm#B_"
  1183.     A$ = A$ + "ZD<7;PH#^_17lPcoa0\GkXc7PamZPmJ_bOO4a1>]Z[nZCjES1FM;h`e[SmA?"
  1184.     A$ = A$ + "icd[D4Lf_X?]WgS5LHiQ_cYXl=>]:^o0YOFALAP^FnY=SI\SJI??bKE8YGEj"
  1185.     A$ = A$ + "d\8VTcFQ?_KW682PkBCAI][]hl5hgMJEDWELGS`Jh3D]:`=g:j13mJ?^Z\XG"
  1186.     A$ = A$ + "]g4CY0OSGPhC>[m5eH4Pk0HK?4gI:BO0TF[RJ2=`kU\kfYOjmdM<OID_Zd=7"
  1187.     A$ = A$ + ";V[3J74[VWW[Snkkg_mK_J?O;j5R5AN4Cc4V#fe0blZ`o7`O7bDNe_jL]N[2"
  1188.     A$ = A$ + "Im:HX\g9:`?i5#_PeYEdccb1k7E0omjM=GaE8Sm>]F5e1=nm0OMjYca>WmVl"
  1189.     A$ = A$ + "D[:4e[`N<Ali:`Gi=#cPkjT?kWEVaA`LWK#?^I0IncG>K;gO8>]:jSE<gFlg"
  1190.     A$ = A$ + "1ngE<V;h2bmjG8de[LJFBk[l>4kbN7NGgULS[L`MLGX[MAO=HdSFNKYkngRj"
  1191.     A$ = A$ + "FWn]7[3]TdO[M[3dWm;VbXN5\;d?PDP?c[P6a_igDlicZoPk2f#CgjB_dhXa"
  1192.     A$ = A$ + "?Ni]M#jlZC_<n^_k4oKXICK23K;KY#G7HX[GQmIjW`98^Ock#\<m?T]^Ei7_"
  1193.     A$ = A$ + "e<nROAm<NKcK>>Ji;GNKBS`I<8mjoh^m2oIPN6KJTmjH>V2OMPU1mZBij21f"
  1194.     A$ = A$ + "_8b3;iiHh3GnaOm7TCXRn\BaoN;LQbo\gO`gQVnlel3oQ9eJGPWGmdhdZlIO"
  1195.     A$ = A$ + ">^\[GiHJT;C5h3c5X_7cnQbidXFLQhS5kDHmT7bQ47mYodaAO[_EB^K8?cTo"
  1196.     A$ = A$ + "6V[1SQOl7?i?o2_`TO_Gb;9ie9mWm>U5\PjjDT[:bO6mJ_Bfm7YC[b=gZRD["
  1197.     A$ = A$ + "Z<XGQmJHlmG:`GjMhkSILmCl4igm^SQO8M^ZXN9X76cjj3\N]G[HoZ=_fdc]"
  1198.     A$ = A$ + ":?jo2UMm:WVUdnb2AgRiVXQm?dXijDTCMl?hW2XkOifRJ??iE?I_:ZG=J^S^"
  1199.     A$ = A$ + "UfWVgJF\>:fO9jC^J>7>E1Vglb^n?ZoCl;hO`?EBbEUSY=mY_SjG`M61=mZN"
  1200.     A$ = A$ + "CcRJ0AJoJQXKA>WinaQa7B?^]ZaaN\=GW2oA9DW2B_6#jm2iE_RYZYGEjGGX"
  1201.     A$ = A$ + "3G^ZYg^m:OUb?6^:AJ]:ZEQKh6Bl3h?:AiZZIjE^J]ZXZ=db\NU3\U3Z<d?B"
  1202.     A$ = A$ + "K7X^78GlKI;9SQ6b#TOlLI4\[Oe_JMM:ZC1^_Ua^COf8P?_b]267idZBOGg8"
  1203.     A$ = A$ + "UFEID_ZB=?;PeO`nUcMY2eT8mokCmDUO<NIP?aW8klYHOoXVh`>G1jCn=k\<"
  1204.     A$ = A$ + ";YFEID_bYI]7Wci8^o^#Q_SWiEbMXj?mW:kIW^<`WlCV]O:`MF3fEbWN5X?C"
  1205.     A$ = A$ + "?ne^fLo^S`d[bZIEfSYJ:lMnd3TY><Im:GceTLVKUNlO8PCOb=O:Z?1\OH7a"
  1206.     A$ = A$ + "NFAj]dYG38WUI9c_NEB_JADCh:`oGh`H:Z=nWiIB6[aiGSi7XicfSTLJWFF]"
  1207.     A$ = A$ + ":bS>f;\KHo`>Rm\2XEUF_BC[3\\[Gid\Z4eh#[`=O;b;?kS5eY6S5GcJTGW#"
  1208.     A$ = A$ + ";JD^mjSiBMMGGbJZaNQM[TWSZnC[RJG`ggUlVNEkYI=6>cY:8F#<HN1<fSc7"
  1209.     A$ = A$ + "2g1;LFAFojSS^T;9>jMm^TGkX89miAfEGjD3EH?hN:m1O`Tml[R\f_d<Z[jZ"
  1210.     A$ = A$ + "bdKSedj0[:jE>=[5GEGKHSh>K?TcH>g8<6mj_nTko>VSa7l3:_VR?QWW6c;5"
  1211.     A$ = A$ + "?Wllbc=?oonOORmPiBEadXLT>WE\6`R^_;HjEIe[Zl[;\ALihjIOfhX7jQB>"
  1212.     A$ = A$ + "?e\FXJO7KOSWO5_2ieJj5njOmMNNDlLac7?Wllbc=?o\gZEDM:7YcI5JEJKM"
  1213.     A$ = A$ + "PE9m:7h3V;m[454OX:Le`5WW4b]<SSY>S^aK<inVRm9SakGl577=SI8_FT3f"
  1214.     A$ = A$ + "o0Z_odjBYW35O^i><SW3j]WlLaJRMmSh:^65<eJS;J<WEJLNEEAm:KNF30>M"
  1215.     A$ = A$ + ";Z5b]]]hX7mACj=EL_CA>0AkRJkVjA2=QcmLSSFdR:>m9^7bhLNONWg>[AiZ"
  1216.     A$ = A$ + "C:dXhc9[eS?gTkLN>HND^JlddYf1=Nf0ejlZZRjE>=;bShDn8O4aSE22Hl=i"
  1217.     A$ = A$ + "kRL#oD?EbHokonCda8_m\f:fG=j?MToNVG3c53m\VYYd=`k5PNTKNCl_WKol"
  1218.     A$ = A$ + "hc1md#nLai>V?WX=EBjo`i1kakkmU9WEL?WZal[Gee[LJFmE3lUYk;jR4gl`"
  1219.     A$ = A$ + "8_?X;#^Z9WeDCUdk4i^0QjFj>_chXKkfBZQ2jQ1<W7dGhNRQeY1Xi`oUo<Po"
  1220.     A$ = A$ + "NnmhgWG7_NjCklnaiPQgOZaLG>biOOnLHcKZ]IlWiI^3]:Z7DG_\BkJEEEm:"
  1221.     A$ = A$ + "WV5iEL2\V65435dhd_Hn<T3OdAHmGXY#o0VJIbYUA>T#gi1NPTi3iPoolWcO"
  1222.     A$ = A$ + "?oNlkc[SG?iLRg?bk4_oVnDGch>Wc9Hf;#C_JWe\HmjVVUAEPdJEJXg`HjEM"
  1223.     A$ = A$ + "WVUEKF6UM6oWoc7dc[bd[bZIai?ObOh?\haE66nVdgY=QjlZ<mZ\PocVWUAI"
  1224.     A$ = A$ + "S1m\?KYHNEVNEFLk?2e;g<>RS#lh<3SNUmi#>4Eeke=m:o[IQodVWUAIPdc["
  1225.     A$ = A$ + "2]:G][KjEboLhKM;d\X^DT>Vc`XC9MnZ#[Rhh#=OEVNEk[IaL]61eZX2R1=<"
  1226.     A$ = A$ + "J76nVfDVe0Zen2SYGUOJF<?JYS3=<68JLO09^]<YEIjE]WV5cUNF=J[<<D4k"
  1227.     A$ = A$ + "G=]YdJEL7<GFF3XYGeihZgQAaiKC1aW66`8GojgYk72=goZ<mZR3gj3WU]n#"
  1228.     A$ = A$ + "35#EHmOVNE_[IA]`cl]U>NeXjBSJEUeeoIjEnAc2XW1=KK^F658CKfcNWZ1d"
  1229.     A$ = A$ + "#^Ne=mZRCcb]gQSTNeT2RU=:g\;KH3IbE5cYZ<D3XVNEaZKag_aL]6j3o`R7"
  1230.     A$ = A$ + "CKDnPhZdjD<_:RgZ2[ocd[b7=;V[5OOgTinlC1ah6U3fcSkhbT[:fo?Rc:ki"
  1231.     A$ = A$ + "Egd[:HM[E^BaSe=2GB[AU>WjEEM:C_:Od[LkO8WI[Y\lU;NL_AhaTOc_i<JE"
  1232.     A$ = A$ + "\n?RW8^Z:U[:C_ZHe]LceJo[moFja06:W]_mhY^h5W9?E<W:CW:;I\IVNUG9"
  1233.     A$ = A$ + "mL]VTMoQId2J\W:`iDVhVZnjoJT<f=C_bkhnNAgN8>mJ<XWki4OlQQl#L`na"
  1234.     A$ = A$ + "l_KX?EEEgk_fQ<f#C_:g8mJ4YVIHONfS?f7Cla<65?kn7mS^CiWbE;EV>E[9"
  1235.     A$ = A$ + "S]dd[bELmj1V[5aWXI9mH7SRW6gk?R3H>E^jDgd[jObH;=mZ23gL]875T[RA"
  1236.     A$ = A$ + "OiG^hSS<b?`oJiXZgad[TQ6GO8a^\^0Y7GIhOJLnD^nnIEXO:hK<m:i9mj4i"
  1237.     A$ = A$ + "nFRhiMk<>3a7WIdmPo[IcWbMOJIiYZk`d[d1Yg7ARY9fNB__gWhSk<j<6nVg"
  1238.     A$ = A$ + "LldVi<kgiCIiXZg`d[d7^iKAl=JGT?fnF[hfg^hS7=J2el;=^V?KnDi3VNU>"
  1239.     A$ = A$ + "aYIAn=H_SHo4AcJo]n4XZHJcI>kT>U[_DU>oDVFUO`d[d?YG[8S1H\0ciJo["
  1240.     A$ = A$ + "]^3Y7_FeHdGiE6?=nNS6dX`OhdX\elUOHjEQ3^iLaIlY_NKJ]eK`HUYL47Qh"
  1241.     A$ = A$ + "SS[2PM^Im=1l3h?`_hFgWYEU?HjEQ9=CkRa>XO]G_egZhS];3PM\IeRP[g^P"
  1242.     A$ = A$ + "MWekIiVZh`d[2GLO?^;gl^J?eYKm?ljNMR?V?41kFcbO^CW2kLjLXKJE57VN"
  1243.     A$ = A$ + "EiPdJG^J#]Am;bkb^MjW^hj1J2\7=Z=UFObE3jF^ce1VNEiT6e_Lme6giFTe"
  1244.     A$ = A$ + "e`HB6Kbi_MHobOYhJ7i9llehi<^amd3]9GoA0kEjejIJDj0C_ZLSK\Vk\ohj"
  1245.     A$ = A$ + "[=^JBe=g;WfenN`7Ll#OT7ALm5O0?7lldOJD^i#Q65f3dXJ<WiV>U^`d[ZNT"
  1246.     A$ = A$ + "N^G^c1T[fDKfl_Bc4?UCY_k0MYeRPan=oVakiZFECeSJV^Tk^JPWCGM7HcO:"
  1247.     A$ = A$ + "\`d[Zfdhj6KVf5Sek?m;7CJe[>NDGmE7?d7h1lkLTZmn=n?oW__goFY;e<m9"
  1248.     A$ = A$ + "gLWLi8gYAI[c;Lad[<J6=>7\dJI\NB6oSV6j1\^BW^FJ]]6YMdKJDg9=^J9`"
  1249.     A$ = A$ + "=G9GnVhc1hbkDcdT<MYb1VNUa0AjalYe_LJHXAhf?BG>m1dBLjI>==7>MWdT"
  1250.     A$ = A$ + "n_gmJL_7^eaak?jBl_GJ]YVY?IJDU?<m:3OASJ5=CW[CXoN_Tnid#><m:33S"
  1251.     A$ = A$ + "#1C_b``8D`d[<<<25<m:33S#1C_b``8D`7jE66665>VNUQQAXPYGIHH4:d9j"
  1252.     A$ = A$ + "E6666666666666666666666666666666666666m;oo`>%%L2"
  1253.     btemp$ = ""
  1254.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  1255.         IF INSTR(1, B$, "%") THEN
  1256.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  1257.                 IF F$ <> "%" THEN C$ = C$ + F$
  1258.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  1259.             IF MID$(B$, j, 1) = "#" THEN
  1260.         MID$(B$, j) = "@": END IF: NEXT
  1261.         FOR t% = LEN(B$) TO 1 STEP -1
  1262.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  1263.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  1264.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  1265.     NEXT: btemp$ = btemp$ + X$: NEXT
  1266.     btemp$ = _INFLATE$(btemp$)
  1267.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  1268.     BASIMAGE6& = _COPYIMAGE(v&): _FREEIMAGE v&
  1269.  

 
mazeball.jpg
« Last Edit: August 23, 2020, 07:54:34 pm by Dav »

Offline johnno56

  • Forum Resident
  • Posts: 1270
  • Live long and prosper.
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #1 on: August 20, 2020, 08:59:18 pm »
Cool game. Pro: No dying! Con: Now I have to think!
Logic is the beginning of wisdom.

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #2 on: August 21, 2020, 01:24:31 pm »
;-)) Yeah my brother put some Christmas money in a 3D maze cube that you have to solve for the metal ball to open the latch. That one took a little longer to open than your average Christmas present.

Well I gotta see how you handle the tilting!

No tilting, just plain old maze game where you can't stop the ball from going in one direction until it hits a wall, no fun!

I think it could be coded better:


Update: never mind, that's the way it's supposed to work, the ball rolls until it hits a wall. Level 2 I didn't see the wall it could approach from but now I see it. OK
« Last Edit: August 21, 2020, 03:09:22 pm by bplus »

FellippeHeitor

  • Guest
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #3 on: August 21, 2020, 03:19:05 pm »
Gorgeous game, Dav. - Frustrating at times, especially when I manage to get stuck in a repeating-never-ending path, but some games are just there to show how inept I am with them.

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #4 on: August 21, 2020, 03:24:06 pm »
@FellippeHeitor

Are you talking about Level 2? :-))

This sucker takes a different kind of pathfinder! ;-)
« Last Edit: August 21, 2020, 03:28:33 pm by bplus »

FellippeHeitor

  • Guest
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #5 on: August 21, 2020, 03:28:01 pm »
I got stuck at level 5 first, then after quitting I got to it again and managed to get the star. Then I halted playing, got back here to post and then got back to work :-D

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #6 on: August 21, 2020, 03:35:57 pm »
@Dav

Do you build these puzzles by hand or in code?

Offline johnno56

  • Forum Resident
  • Posts: 1270
  • Live long and prosper.
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #7 on: August 21, 2020, 09:47:28 pm »
I finally got to level 5... Wrong first move... Endless path... My brain hurts...

Is it possible to have a 'restart level' instead of having to go back to the start? Can you imagine getting to, say level 20+, then getting caught in an 'endless path'?
Logic is the beginning of wisdom.

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #8 on: August 21, 2020, 09:55:19 pm »
I finally got to level 5... Wrong first move... Endless path... My brain hurts...

Is it possible to have a 'restart level' instead of having to go back to the start? Can you imagine getting to, say level 20+, then getting caught in an 'endless path'?

Do you know about the space bar? And you don't have to worry about level 20+, yet ;-))

Man I only got past level 2 when I decided to work on a Pathfinder. :)

Update: there is also + - for level setting. Made it to 8, 9 I'm wondering if there is a soln.
Update: OK 9 done 3 times in row, go up on first 2 decision points at the T intersections.

I literally had a break through on 10:
 
Maze Tilt Break Through with Level 10.PNG
« Last Edit: August 22, 2020, 12:02:57 am by bplus »

Offline Unseen Machine

  • Forum Regular
  • Posts: 158
  • Make the game not the engine!
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #9 on: August 22, 2020, 06:04:46 am »
Hey dav (and everyone else)

I love these type of games, simplicity in design often leads to great fun and infuriation for the end user! I made one like this myself a long time ago and ended up making a GL version which you can find here.

https://www.qb64.org/forum/index.php?topic=2561.msg117920#msg117920

Great work though, i look forward to seeing more like this.

Unseen

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #10 on: August 22, 2020, 12:52:51 pm »
Hey dav (and everyone else)

I love these type of games, simplicity in design often leads to great fun and infuriation for the end user! I made one like this myself a long time ago and ended up making a GL version which you can find here.

https://www.qb64.org/forum/index.php?topic=2561.msg117920#msg117920

Great work though, i look forward to seeing more like this.

Unseen

Here is link to more of Dav's games:
https://www.qb64.org/forum/index.php?topic=2434.msg116509#msg116509

Collect them all! :)
« Last Edit: August 22, 2020, 01:09:53 pm by bplus »

Offline Dav

  • Forum Resident
  • Posts: 792
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #11 on: August 22, 2020, 05:48:38 pm »
Wow, I didn't expect to come back to all these replies!  Thanks for trying out the game, everyone.  It was a fun game to make.  Made it first in smartbasic, just wanted to port it to QB64.  I guess calling it a tilt game wasn't a good idea, since it doesn't tilt at all.  Sorry for that confusion. 

@johnno56 , @FellippeHeitor , thanks guys for your encouragement!

@bplus - If I remember right, some levels are enhanced versions of levels I found elsewhere, and some I just worked out on paper first.  I have just made some new levels using some graph paper, so I guess I will be updating this game post soon.  I may do levels where you have to collect several stars.  (And thanks for making a link to all my puzzle games on that other thread.)

@Unseen Machine . Thanks! I will download and try your game. 

Going to make a level editor next.

- Dav
« Last Edit: August 22, 2020, 05:51:49 pm by Dav »

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #12 on: August 22, 2020, 11:21:15 pm »
I started to simplify this code for a pathfinder AI and so far have a semi-3D version:
Code: QB64: [Select]
  1. _TITLE "Tilt Maze Pathfinder" ' b+ started 2020-08-22
  2. ' 2020-08-22 I am starting with mods of Dav's version of tilt maze as it was frustration
  3. ' with the his 2nd level Puzzle that inspired me to search for solutions with AI.
  4. ' Thanks for that Dav! ;-))
  5. ' 2020-08-22 so far just a semi-3D version.
  6.  
  7. '============
  8. 'MAZEBALL.BAS   https://www.qb64.org/forum/index.php?topic=2936.msg121950#msg121950
  9. '============
  10. 'Clone of the Tilt Maze Puzzle games.
  11. 'QB64 code by Dav, AUG/2020
  12.  
  13. 'The goal is to move the ball to the star.
  14. 'Use arrows to move the ball.  Walls will stop
  15. 'the ball moving so navigate around them.
  16. 'There are 10 levels to complete and they get
  17. 'harder as you go.  To help you (cheat) you can
  18. 'jump to other levels by using the +/- keys.
  19. 'Press SPACE to reset level and start over.
  20.  
  21. 'If you beat the last level, you will get a
  22. 'smiley face and hear a happy song.
  23.  
  24. 'For those who get stuck, solutions are below.
  25.  
  26. '=======
  27. 'CREDITS:
  28. '=======
  29.  
  30. 'I didn't come up with this game - It's been around for a while.
  31. 'It's mostly a clone of a cool game posted on THE QBASIC FORUM here:
  32. 'https://www.tapatalk.com/groups/qbasic/tilting-maz-game-t39133.html
  33. 'Also some levels derived from the original tilt maze game here:
  34. 'https://www.mathsisfun.com/games/tilt-maze.html
  35. 'There's other Tilt Maze games that influenced me.
  36.  
  37. 'My thanks to those original game authors for the tilt maze fun.
  38. 'Please accept this QB64 version as a compliment from a fan.
  39.  
  40. '=================================================================
  41.  
  42. 'Solutions below, for those who get stuck...
  43.  
  44. '#1)  RDLURDR
  45. '#2)  LURULDRUL
  46. '#3)  DRULDRDLULUR
  47. '#4)  DRURULURULDR
  48. '#5)  URDLULDLURDLU
  49. '#6)  RDRULDRULDRD
  50. '#7)  DRULDLURDRULDRD
  51. '#8)  RDLDLULDLURURULDRD
  52. '#9)  LURULULDLDRDRURULURDLDR
  53. '#10) D R U L D L D R U R U L U L U R D L U R D R U L D R U R D
  54.  
  55.  
  56. DIM SHARED bs, grid 'box or cell size, cells per side of square grid
  57. DIM SHARED bx, by, sx, sy 'ball and star locations
  58. REDIM SHARED pdata$(grid, grid)
  59. puzzle = 1 'start on puzzle 1
  60. puzzlemax = 10 'there are 10 puzzles total
  61.  
  62. SCREEN _NEWIMAGE(640, 640, 32)
  63. _DELAY .25
  64.  
  65. '======
  66. restart:
  67. _TITLE "Level: " + STR$(puzzle) + " of" + STR$(puzzlemax)
  68. setLevel puzzle
  69. update
  70.     CLS
  71.     'get user keypress...
  72.     k$ = INKEY$
  73.     moved = 0: done = 0
  74.  
  75.     'if right arrow....
  76.     IF k$ = CHR$(0) + CHR$(77) THEN 'right
  77.         WHILE pdata$(bx + 1, by) = " " OR pdata$(bx + 1, by) = "y"
  78.             bx = bx + 1: moved = 1
  79.             IF bx = sx AND by = sy THEN done = 1: EXIT WHILE
  80.         WEND
  81.     END IF
  82.     'if left arrow...
  83.     IF k$ = CHR$(0) + CHR$(75) THEN
  84.         WHILE pdata$(bx - 1, by) = " " OR pdata$(bx - 1, by) = "y"
  85.             bx = bx - 1: moved = 1
  86.             IF bx = sx AND by = sy THEN done = 1: EXIT WHILE
  87.         WEND
  88.     END IF
  89.  
  90.     'down arrow
  91.     IF k$ = CHR$(0) + CHR$(80) THEN
  92.         WHILE pdata$(bx, by + 1) = " " OR pdata$(bx, by + 1) = "y"
  93.             by = by + 1: moved = 1
  94.             IF bx = sx AND by = sy THEN done = 1: EXIT WHILE
  95.         WEND
  96.     END IF
  97.  
  98.     'if up arrow
  99.     IF k$ = CHR$(0) + CHR$(72) THEN
  100.         cx = ballx / bs + 1: cy = bally / bs + 1 'current x,y
  101.         WHILE pdata$(bx, by - 1) = " " OR pdata$(bx, by - 1) = "y"
  102.             by = by - 1: moved = 1
  103.             IF bx = sx AND by = sy THEN done = 1: EXIT WHILE
  104.         WEND
  105.     END IF
  106.  
  107.     IF k$ = CHR$(32) THEN GOTO restart
  108.  
  109.     IF k$ = "+" THEN
  110.         puzzle = puzzle + 1: IF puzzle > puzzlemax THEN puzzle = 1
  111.         GOTO restart
  112.     END IF
  113.  
  114.     IF k$ = "-" THEN
  115.         puzzle = puzzle - 1: IF puzzle < 1 THEN puzzle = puzzlemax
  116.         GOTO restart
  117.     END IF
  118.     update
  119.     _DISPLAY
  120.     _LIMIT 60
  121.     IF done = 1 THEN
  122.         SOUND 7000, .1: _DELAY 2
  123.         puzzle = puzzle + 1
  124.         IF puzzle > puzzlemax THEN puzzle = 1
  125.         GOTO restart
  126.     END IF
  127.  
  128. SUB update
  129.     FOR y = grid - 1 TO 0 STEP -1
  130.         FOR x = grid - 1 TO 0 STEP -1
  131.             IF pdata$(x, y) = "x" THEN
  132.                 FOR p = 0 TO 20 STEP .5
  133.                     LINE (x * bs - 20 + p, y * bs - 20 + p)-STEP(bs - 1, bs - 1), _RGB32(55 + p * 5), BF
  134.                 NEXT
  135.                 'LINE (x * bs + p, y * bs + p)-STEP(bs - 1, bs - 1), &HFF999999, B
  136.             ELSEIF x = bx AND y = by THEN
  137.                 'LINE (x * bs, y * bs)-STEP(bs - 1, bs - 1), &HFF000000, BF
  138.                 FOR R! = .47 * bs TO 0 STEP -1
  139.                     fcirc x * bs + .5 * bs - 7, y * bs + .5 * bs - 7, R!, _RGB32(220 - 220 * R! / (.45 * bs) + 35)
  140.                 NEXT
  141.             ELSEIF x = sx AND y = sy THEN
  142.                 'LINE (x * bs, y * bs)-STEP(bs - 1, bs - 1), &HFF000000, BF
  143.                 FOR p = 1 TO 0 STEP -.0125
  144.                     star x * bs + .5 * bs - 5, y * bs + .5 * bs - 5, .16 * bs * p, .46 * bs * p, 5, _PI / 10, _RGB32(255, (1 - p) * 150 + 105, 0)
  145.                 NEXT
  146.             END IF
  147.         NEXT
  148.     NEXT
  149.  
  150. SUB setLevel (puzzle) 'x is the wall, b is ball. y is the star
  151.     IF puzzle = 1 THEN
  152.         puz$ = "": grid = 8
  153.         puz$ = puz$ + "xxxxxxxx"
  154.         puz$ = puz$ + "x   xb x"
  155.         puz$ = puz$ + "x   yx x"
  156.         puz$ = puz$ + "x  xx  x"
  157.         puz$ = puz$ + "x      x"
  158.         puz$ = puz$ + "x      x"
  159.         puz$ = puz$ + "x      x"
  160.         puz$ = puz$ + "xxxxxxxx"
  161.     ELSEIF puzzle = 2 THEN
  162.         puz$ = "": grid = 10
  163.         puz$ = puz$ + "xxxxxxxxxx"
  164.         puz$ = puz$ + "xx  x    x"
  165.         puz$ = puz$ + "x   xx   x"
  166.         puz$ = puz$ + "x   y    x"
  167.         puz$ = puz$ + "x     xx x"
  168.         puz$ = puz$ + "x      b x"
  169.         puz$ = puz$ + "x        x"
  170.         puz$ = puz$ + "x     xx x"
  171.         puz$ = puz$ + "x x      x"
  172.         puz$ = puz$ + "xxxxxxxxxx"
  173.     ELSEIF puzzle = 3 THEN
  174.         puz$ = "": grid = 11
  175.         puz$ = puz$ + "xxxxxxxxxxx"
  176.         puz$ = puz$ + "xbx  x    x"
  177.         puz$ = puz$ + "x    x    x"
  178.         puz$ = puz$ + "xx   x    x"
  179.         puz$ = puz$ + "x    y  x x"
  180.         puz$ = puz$ + "x    x    x"
  181.         puz$ = puz$ + "x         x"
  182.         puz$ = puz$ + "x x     x x"
  183.         puz$ = puz$ + "x  x      x"
  184.         puz$ = puz$ + "x   x    xx"
  185.         puz$ = puz$ + "xxxxxxxxxxx"
  186.     ELSEIF puzzle = 4 THEN
  187.         bs = INT(sw / 11) 'boxsize
  188.         puz$ = "": grid = 11
  189.         puz$ = puz$ + "xxxxxxxxxxx"
  190.         puz$ = puz$ + "xbx   x   x"
  191.         puz$ = puz$ + "x xx      x"
  192.         puz$ = puz$ + "x         x"
  193.         puz$ = puz$ + "x       xxx"
  194.         puz$ = puz$ + "x x       x"
  195.         puz$ = puz$ + "x x  xx   x"
  196.         puz$ = puz$ + "x         x"
  197.         puz$ = puz$ + "x xx  x xxx"
  198.         puz$ = puz$ + "x     x  yx"
  199.         puz$ = puz$ + "xxxxxxxxxxx"
  200.     ELSEIF puzzle = 5 THEN
  201.         puz$ = "": grid = 12
  202.         puz$ = puz$ + "xxxxxxxxxxxx"
  203.         puz$ = puz$ + "x x      x x"
  204.         puz$ = puz$ + "x x xxx  x x"
  205.         puz$ = puz$ + "x          x"
  206.         puz$ = puz$ + "x x x x xx x"
  207.         puz$ = puz$ + "x x xbx    x"
  208.         puz$ = puz$ + "x   xxxxx xx"
  209.         puz$ = puz$ + "x     xyx  x"
  210.         puz$ = puz$ + "xx         x"
  211.         puz$ = puz$ + "x         xx"
  212.         puz$ = puz$ + "x   x x    x"
  213.         puz$ = puz$ + "xxxxxxxxxxxx"
  214.     ELSEIF puzzle = 6 THEN
  215.         puz$ = "": grid = 13
  216.         puz$ = puz$ + "xxxxxxxxxxxxx"
  217.         puz$ = puz$ + "x     x     x"
  218.         puz$ = puz$ + "x   xxx   xxx"
  219.         puz$ = puz$ + "x           x"
  220.         puz$ = puz$ + "xxx xxx   x x"
  221.         puz$ = puz$ + "x         xyx"
  222.         puz$ = puz$ + "xb    x   xxx"
  223.         puz$ = puz$ + "x x   x     x"
  224.         puz$ = puz$ + "xxx   xx    x"
  225.         puz$ = puz$ + "x           x"
  226.         puz$ = puz$ + "x   x   x x x"
  227.         puz$ = puz$ + "x   x   x x x"
  228.         puz$ = puz$ + "xxxxxxxxxxxxx"
  229.     ELSEIF puzzle = 7 THEN
  230.         puz$ = "": grid = 15
  231.         puz$ = puz$ + "xxxxxxxxxxxxxxx"
  232.         puz$ = puz$ + "xbx   x     x x"
  233.         puz$ = puz$ + "x xx          x"
  234.         puz$ = puz$ + "x         x   x"
  235.         puz$ = puz$ + "xx       xx   x"
  236.         puz$ = puz$ + "x             x"
  237.         puz$ = puz$ + "x xx       xx x"
  238.         puz$ = puz$ + "x     x x     x"
  239.         puz$ = puz$ + "xx            x"
  240.         puz$ = puz$ + "x   x         x"
  241.         puz$ = puz$ + "x   xx       xx"
  242.         puz$ = puz$ + "x       x     x"
  243.         puz$ = puz$ + "x      xxx    x"
  244.         puz$ = puz$ + "x x         xyx"
  245.         puz$ = puz$ + "xxxxxxxxxxxxxxx"
  246.     ELSEIF puzzle = 8 THEN
  247.         puz$ = "": grid = 15
  248.         puz$ = puz$ + "xxxxxxxxxxxxxxx"
  249.         puz$ = puz$ + "x x     x     x"
  250.         puz$ = puz$ + "x    x       xx"
  251.         puz$ = puz$ + "x        b    x"
  252.         puz$ = puz$ + "x     x     x x"
  253.         puz$ = puz$ + "x  x          x"
  254.         puz$ = puz$ + "x       x x   x"
  255.         puz$ = puz$ + "x      xx    xx"
  256.         puz$ = puz$ + "x             x"
  257.         puz$ = puz$ + "xx       x    x"
  258.         puz$ = puz$ + "x   x x       x"
  259.         puz$ = puz$ + "x   xyx       x"
  260.         puz$ = puz$ + "x   xxx       x"
  261.         puz$ = puz$ + "x       x   x x"
  262.         puz$ = puz$ + "xxxxxxxxxxxxxxx"
  263.     ELSEIF puzzle = 9 THEN
  264.         puz$ = "": grid = 19
  265.         puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  266.         puz$ = puz$ + "x x   x       x   x"
  267.         puz$ = puz$ + "x x   xxx   x x xxx"
  268.         puz$ = puz$ + "x           x     x"
  269.         puz$ = puz$ + "x xxx xxxxx xxx x x"
  270.         puz$ = puz$ + "x   x   x       x x"
  271.         puz$ = puz$ + "xxx x   x   x   x x"
  272.         puz$ = puz$ + "x           x     x"
  273.         puz$ = puz$ + "x   xxx x xxx xxx x"
  274.         puz$ = puz$ + "x     x x         x"
  275.         puz$ = puz$ + "xxx   x xxx     x x"
  276.         puz$ = puz$ + "x       x       x x"
  277.         puz$ = puz$ + "x x x   x xxx   xxx"
  278.         puz$ = puz$ + "x x x             x"
  279.         puz$ = puz$ + "x x x xxx x   x   x"
  280.         puz$ = puz$ + "x         x   x   x"
  281.         puz$ = puz$ + "x xxx     x x xxx x"
  282.         puz$ = puz$ + "x  bx       x  yx x"
  283.         puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  284.     ELSEIF puzzle = 10 THEN
  285.         puz$ = "": grid = 21
  286.         puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  287.         puz$ = puz$ + "xbx x     x   x     x"
  288.         puz$ = puz$ + "x x x     x   xxx   x"
  289.         puz$ = puz$ + "x x                 x"
  290.         puz$ = puz$ + "x x xxx x x     x   x"
  291.         puz$ = puz$ + "x       x x     x   x"
  292.         puz$ = puz$ + "x   x   x x     x xxx"
  293.         puz$ = puz$ + "x   x               x"
  294.         puz$ = puz$ + "x   x     x xxx x   x"
  295.         puz$ = puz$ + "x         x     x   x"
  296.         puz$ = puz$ + "xxx xxx xxxxx xxx xxx"
  297.         puz$ = puz$ + "x         x         x"
  298.         puz$ = puz$ + "x   xxx   x x xxx x x"
  299.         puz$ = puz$ + "x           x     x x"
  300.         puz$ = puz$ + "xxx xxx   x xxx   x x"
  301.         puz$ = puz$ + "x   x     x x     x x"
  302.         puz$ = puz$ + "x x x xxx x x   x x x"
  303.         puz$ = puz$ + "x x             x   x"
  304.         puz$ = puz$ + "x x     x x x   x x x"
  305.         puz$ = puz$ + "x       x x x     xyx"
  306.         puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  307.     END IF
  308.     REDIM pdata$(grid - 1, grid - 1) 'from text to 2d array
  309.     m = 1
  310.     FOR y = 0 TO grid - 1
  311.         FOR x = 0 TO grid - 1
  312.             pdata$(x, y) = MID$(puz$, m, 1)
  313.             IF MID$(puz$, m, 1) = "y" THEN sx = x: sy = y
  314.             IF MID$(puz$, m, 1) = "b" THEN bx = x: by = y
  315.             m = m + 1
  316.         NEXT
  317.     NEXT
  318.     bs = _WIDTH \ grid
  319.  
  320. SUB fcirc (CX AS INTEGER, CY AS INTEGER, R AS INTEGER, C AS _UNSIGNED LONG)
  321.     DIM Radius AS INTEGER, RadiusError AS INTEGER
  322.     DIM X AS INTEGER, Y AS INTEGER
  323.     Radius = ABS(R): RadiusError = -Radius: X = Radius: Y = 0
  324.     IF Radius = 0 THEN PSET (CX, CY), C: EXIT SUB
  325.     LINE (CX - X, CY)-(CX + X, CY), C, BF
  326.     WHILE X > Y
  327.         RadiusError = RadiusError + Y * 2 + 1
  328.         IF RadiusError >= 0 THEN
  329.             IF X <> Y + 1 THEN
  330.                 LINE (CX - Y, CY - X)-(CX + Y, CY - X), C, BF
  331.                 LINE (CX - Y, CY + X)-(CX + Y, CY + X), C, BF
  332.             END IF
  333.             X = X - 1
  334.             RadiusError = RadiusError - X * 2
  335.         END IF
  336.         Y = Y + 1
  337.         LINE (CX - X, CY - Y)-(CX + X, CY - Y), C, BF
  338.         LINE (CX - X, CY + Y)-(CX + X, CY + Y), C, BF
  339.     WEND
  340.  
  341. SUB ftri (x1, y1, x2, y2, x3, y3, K AS _UNSIGNED LONG)
  342.     DIM D AS LONG
  343.     STATIC a&
  344.     D = _DEST
  345.     IF a& = 0 THEN a& = _NEWIMAGE(1, 1, 32)
  346.     _DEST a&
  347.     _DONTBLEND a& '  '<<<< new 2019-12-16 fix
  348.     PSET (0, 0), K
  349.     _BLEND a& '<<<< new 2019-12-16 fix
  350.     _DEST D
  351.     _MAPTRIANGLE _SEAMLESS(0, 0)-(0, 0)-(0, 0), a& TO(x1, y1)-(x2, y2)-(x3, y3)
  352.  
  353. SUB star (x, y, rInner, rOuter, nPoints, angleOffset, K AS _UNSIGNED LONG)
  354.     ' x, y are same as for circle,
  355.     ' rInner is center circle radius
  356.     ' rOuter is the outer most point of star
  357.     ' nPoints is the number of points,
  358.     ' angleOffset = angle offset IN DEGREES, it will be converted to radians in sub
  359.     ' this is to allow us to spin the polygon of n sides
  360.  
  361.     pAngle = _PI(2) / nPoints: radAngleOffset = angleOffset
  362.     x1 = x + rInner * COS(radAngleOffset)
  363.     y1 = y + rInner * SIN(radAngleOffset)
  364.     FOR i = 0 TO nPoints - 1
  365.         x2 = x + rOuter * COS(i * pAngle + radAngleOffset + .5 * pAngle)
  366.         y2 = y + rOuter * SIN(i * pAngle + radAngleOffset + .5 * pAngle)
  367.         x3 = x + rInner * COS((i + 1) * pAngle + radAngleOffset)
  368.         y3 = y + rInner * SIN((i + 1) * pAngle + radAngleOffset)
  369.         ftri x1, y1, x2, y2, x3, y3, K
  370.         'triangles leaked
  371.         LINE (x1, y1)-(x2, y2), K
  372.         LINE (x2, y2)-(x3, y3), K
  373.         LINE (x3, y3)-(x1, y1), K
  374.         x1 = x3: y1 = y3
  375.     NEXT
  376.     fcirc x, y, rInner, K
  377.  
  378.  
« Last Edit: August 22, 2020, 11:22:21 pm by bplus »

Offline Dav

  • Forum Resident
  • Posts: 792
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #13 on: August 22, 2020, 11:49:16 pm »
Hey, I like it, @bplus!  Looks cool, and nice and tidy code!  Pathfinding algos are beyond me right now, but I have been wanting to understand them for another puzzle I'm trying to clone.

I was just about to post a small mod of mine which grows and fades the star out when reaching it. 

EDIT:  Updated code again - fixed a bug that was messing up the ball.  Added RotoZoom method found in the wiki to animate the star when reaching it.

- Dav 

Code: QB64: [Select]
  1. '============
  2. 'MAZEBALL.BAS v1.1
  3. '============
  4. 'Clone of the Tilt Maze Puzzle games.
  5. 'QB64 code by Dav, AUG/2020
  6.  
  7. 'New for v1.1: * Fixed bug where ball gets messed up,
  8. '                and runs off screen (bad math calcs)
  9. '              * Added winning star animation & fade out.
  10.  
  11. 'Follow this programs development here:
  12. 'https://www.qb64.org/forum/index.php?topic=2936.0
  13.  
  14. '=====
  15. 'ABOUT:
  16. '=====
  17.  
  18. 'The goal is to move the ball to the star.
  19. 'Use arrows to move the ball.  Walls will stop
  20. 'the ball moving so navigate around them.
  21. 'There are 10 levels to complete and they get
  22. 'harder as you go.  To help you (cheat) you can
  23. 'jump to other levels by using the +/- keys.
  24. 'Press SPACE to reset level and start over.
  25.  
  26. 'If you beat the last level, you will get a
  27. 'smiley face and hear a happy song.
  28.  
  29. 'For those who get stuck, solutions are below.
  30.  
  31. '=======
  32. 'CREDITS:
  33. '=======
  34.  
  35. 'I didn't come up with this game - It's been around for a while.
  36. 'It's mostly a clone of a cool game posted on THE QBASIC FORUM here:
  37. 'https://www.tapatalk.com/groups/qbasic/tilting-maz-game-t39133.html
  38. 'Also some levels derived from the original tilt maze game here:
  39. 'https://www.mathsisfun.com/games/tilt-maze.html
  40. 'There's other Tilt Maze games that influenced me.
  41.  
  42. 'My thanks to those original game authors for the tilt maze fun.
  43. 'Please accept this QB64 version as a compliment from a fan.
  44.  
  45. 'Used the RotoZoom program from the QB64.org wiki under _MAPTRIANGLE
  46. 'which was written by Galleon, the creator of QB64.  Thanks!
  47. '=================================================================
  48.  
  49. 'Solutions below, for those who get stuck...
  50.  
  51. '#1)  LURDR
  52. '#2)  LURULDRUL
  53. '#3)  DRULDRDLULUR
  54. '#4)  DRURULURULDR
  55. '#5)  URDLULDLURDLU
  56. '#6)  RDRULDRULDRD
  57. '#7)  DRULDLURDRULDRD
  58. '#8)  RDLDLULDLURURULDRD
  59. '#9)  LURULULDLDRDRURULURDLDR
  60. '#10) DRULDLDRURULULURDLURDRULDRURD
  61.  
  62. DEFINT A-Z
  63.  
  64. puzzle = 1 'start on puzzle 1
  65. puzzlemax = 10 'there are 10 puzzles total
  66.  
  67.  
  68. 'load images...
  69. ball& = BASIMAGE1&
  70. blank& = BASIMAGE2&
  71. pass& = BASIMAGE3&
  72. star& = BASIMAGE4&
  73. wall& = BASIMAGE5&
  74. face& = BASIMAGE6&
  75.  
  76. _ICON ball&
  77.  
  78.  
  79. '======
  80. restart:
  81. '======
  82.  
  83. _TITLE "Level: " + STR$(puzzle) + " of" + STR$(puzzlemax)
  84.  
  85. GOSUB SetLevel
  86.  
  87. 'draw puzzle level
  88. CLS , _RGB(51, 51, 51)
  89. REDIM SHARED pdata$(grid, grid)
  90. bs = INT(_WIDTH / grid)
  91. m = 1
  92. FOR x = 0 TO grid - 1
  93.     FOR y = 0 TO grid - 1
  94.         a$ = MID$(puz$, m, 1)
  95.         pdata$(x + 1, y + 1) = a$
  96.         IF a$ = "x" THEN _PUTIMAGE (y * bs, x * bs)-(y * bs + bs, x * bs + bs), wall&
  97.         IF a$ = "b" THEN
  98.             _PUTIMAGE (y * bs + 1, x * bs + 1)-(y * bs + bs - 1, x * bs + bs - 1), ball&
  99.             ballx = y * bs: bally = x * bs
  100.         END IF
  101.         IF a$ = "y" THEN _PUTIMAGE (y * bs + 1, x * bs + 1)-(y * bs + bs - 1, x * bs + bs - 1), star&
  102.         m = m + 1
  103.     NEXT
  104.  
  105.  
  106.  
  107.     'get user keypress...
  108.     DO: k$ = INKEY$: _AUTODISPLAY: LOOP UNTIL k$ <> ""
  109.  
  110.     'if right arrow....
  111.     IF k$ = CHR$(0) + CHR$(77) THEN
  112.  
  113.         'current ball location in x,y
  114.         cx = ballx / bs + 1: cy = bally / bs + 1
  115.  
  116.         'Move ball right...
  117.         FOR x = cx + 1 TO grid + 1
  118.  
  119.             'move it smoothly, by pixels...
  120.             FOR x2 = ((x - 1 - cx) * bs) TO ((x - cx) * bs) STEP 2
  121.  
  122.                 'if come to star
  123.                 IF pdata$(cy, x) = "y" THEN
  124.                     _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  125.                     _PUTIMAGE (ballx + x2 + bs, bally)-(ballx + x2 + bs + bs, bally + bs), blank&
  126.                     _PUTIMAGE (ballx + x2 + bs, bally)-(ballx + x2 + bs + bs, bally + bs), ball&
  127.  
  128.                     'fade out star
  129.                     _DISPLAY
  130.                     SOUND 7000, .1
  131.                     temp& = _COPYIMAGE(_DISPLAY)
  132.                     d = 100
  133.                     FOR trp& = 255 TO 0 STEP -5
  134.                         _PUTIMAGE (0, 0), temp&
  135.                         RotoZoom ballx + x2 + bs + (bs / 2), bally + (bs / 2), star&, d / 100, angle
  136.                         _DISPLAY: d = d + 10
  137.                         angle = angle + 3: IF angle >= 360 THEN angle = angle - 360
  138.                         _SETALPHA trp&, , star&
  139.                         _DELAY .01
  140.                     NEXT
  141.  
  142.                     GOSUB Done
  143.                     GOTO restart
  144.                 END IF
  145.  
  146.                 'if come to wall...
  147.                 IF pdata$(cy, x) = "x" THEN
  148.                     ballx = ballx + x2
  149.                     SOUND 500, .1: GOTO moved
  150.                 END IF
  151.  
  152.                 'Draw ball image....
  153.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  154.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), ball&
  155.                 _DISPLAY
  156.                 _LIMIT 500
  157.             NEXT
  158.  
  159.         NEXT
  160.     END IF
  161.  
  162.     'if left arrow...
  163.     IF k$ = CHR$(0) + CHR$(75) THEN
  164.         cx = ballx / bs + 1: cy = bally / bs + 1
  165.         'Move ball left...
  166.         FOR x = cx - 1 TO 0 STEP -1
  167.             FOR x2 = (x + 1 - cx) * bs TO (x - cx) * bs STEP -2
  168.                 IF pdata$(cy, x) = "y" THEN
  169.                     _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  170.                     _PUTIMAGE (ballx + x2 - bs, bally)-(ballx + x2, bally + bs), blank&
  171.                     _PUTIMAGE (ballx + x2 - bs, bally)-(ballx + x2, bally + bs), ball&
  172.                     'fade out star
  173.                     _DISPLAY
  174.                     SOUND 7000, .1
  175.                     temp& = _COPYIMAGE(_DISPLAY)
  176.                     d = 100
  177.                     FOR trp& = 255 TO 0 STEP -5
  178.                         _PUTIMAGE (0, 0), temp&
  179.                         RotoZoom ballx + x2 - (bs / 2), bally + (bs / 2), star&, d / 100, angle
  180.                         _DISPLAY: d = d + 10
  181.                         angle = angle + 3: IF angle >= 360 THEN angle = angle - 360
  182.                         _SETALPHA trp&, , star&
  183.                         _DELAY .01
  184.                     NEXT
  185.                     GOSUB Done
  186.                     GOTO restart
  187.                 END IF
  188.                 IF pdata$(cy, x) = "x" THEN
  189.                     ballx = ballx + x2
  190.                     SOUND 500, .1
  191.                     GOTO moved
  192.                 END IF
  193.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), blank&
  194.                 _PUTIMAGE (ballx + x2 + 1, bally + 1)-(ballx + x2 + bs - 1, bally + bs - 1), ball&
  195.                 _DISPLAY
  196.                 _LIMIT 500
  197.             NEXT
  198.         NEXT
  199.     END IF
  200.  
  201.     'down arrow
  202.     IF k$ = CHR$(0) + CHR$(80) THEN
  203.         cx = ballx / bs + 1: cy = bally / bs + 1 'current x,y
  204.         FOR y = cy + 1 TO grid + 1
  205.             FOR y2 = (y - 1 - cy) * bs TO (y - cy) * bs STEP 2
  206.                 IF pdata$(y, cx) = "y" THEN
  207.                     _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  208.                     _PUTIMAGE (ballx, bally + y2 + bs)-(ballx + bs, bally + y2 + bs + bs), blank&
  209.                     _PUTIMAGE (ballx, bally + y2 + bs)-(ballx + bs, bally + y2 + bs + bs), ball&
  210.  
  211.                     'fade out star
  212.                     _DISPLAY
  213.                     SOUND 7000, .1
  214.                     temp& = _COPYIMAGE(_DISPLAY)
  215.                     d = 100
  216.                     FOR trp& = 255 TO 0 STEP -5
  217.                         _PUTIMAGE (0, 0), temp&
  218.                         RotoZoom ballx + (bs / 2), bally + y2 + bs + (bs / 2), star&, d / 100, angle
  219.                         _DISPLAY: d = d + 10
  220.                         angle = angle + 3: IF angle >= 360 THEN angle = angle - 360
  221.                         _SETALPHA trp&, , star&
  222.                         _DELAY .01
  223.                     NEXT
  224.  
  225.                     GOSUB Done
  226.                     GOTO restart
  227.                 END IF
  228.                 IF pdata$(y, cx) = "x" THEN
  229.                     bally = bally + y2
  230.                     SOUND 500, .1
  231.                     GOTO moved
  232.                 END IF
  233.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  234.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), ball&
  235.                 _DISPLAY
  236.                 _LIMIT 500
  237.             NEXT
  238.         NEXT
  239.     END IF
  240.  
  241.     'if up arrow
  242.     IF k$ = CHR$(0) + CHR$(72) THEN
  243.         cx = ballx / bs + 1: cy = bally / bs + 1 'current x,y
  244.         FOR y = cy - 1 TO 0 STEP -1
  245.             FOR y2 = (y + 1 - cy) * bs TO (y - cy) * bs STEP -2
  246.                 IF pdata$(y, cx) = "y" THEN
  247.                     _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  248.                     _PUTIMAGE (ballx, bally + y2 - bs)-(ballx + bs, bally + y2), blank&
  249.                     _PUTIMAGE (ballx, bally + y2 - bs)-(ballx + bs, bally + y2), ball&
  250.                     'fade out star
  251.                     _DISPLAY
  252.                     SOUND 7000, .1
  253.                     temp& = _COPYIMAGE(_DISPLAY)
  254.                     d = 100
  255.                     FOR trp& = 255 TO 0 STEP -5
  256.                         _PUTIMAGE (0, 0), temp&
  257.                         RotoZoom ballx + (bs / 2), bally + y2 - (bs / 2), star&, d / 100, angle
  258.                         _DISPLAY: d = d + 10
  259.                         angle = angle + 3: IF angle >= 360 THEN angle = angle - 360
  260.                         _SETALPHA trp&, , star&
  261.                         _DELAY .01
  262.                     NEXT
  263.  
  264.                     GOSUB Done
  265.                     GOTO restart
  266.                 END IF
  267.                 IF pdata$(y, cx) = "x" THEN
  268.                     bally = bally + y2
  269.                     SOUND 500, .1
  270.                     GOTO moved
  271.                 END IF
  272.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), blank&
  273.                 _PUTIMAGE (ballx + 1, bally + y2 + 1)-(ballx + bs - 1, bally + y2 + bs - 1), ball&
  274.                 _DISPLAY
  275.                 _LIMIT 500
  276.             NEXT
  277.         NEXT
  278.     END IF
  279.  
  280.     IF k$ = CHR$(32) THEN GOTO restart
  281.  
  282.     IF k$ = "+" THEN
  283.         puzzle = puzzle + 1: IF puzzle > puzzlemax THEN puzzle = 1
  284.         GOTO restart
  285.     END IF
  286.  
  287.     IF k$ = "-" THEN
  288.         puzzle = puzzle - 1: IF puzzle < 1 THEN puzzle = puzzlemax
  289.         GOTO restart
  290.     END IF
  291.  
  292.  
  293.     moved:
  294.  
  295.     IF k$ <> "" THEN _KEYCLEAR
  296.  
  297.  
  298.  
  299.  
  300. '====
  301. Done:
  302. '====
  303. _SETALPHA 255, , star& 'reset star&
  304. _PUTIMAGE (160, 210), pass&: _DISPLAY
  305.  
  306. puzzle = puzzle + 1
  307.  
  308. 'If that was last level...
  309. IF puzzle > puzzlemax THEN
  310.     'show smiley face
  311.     _PUTIMAGE (100, 100)-(500, 500), face&: _DISPLAY
  312.     'play happy music
  313.     PLAY "o4l8gfedcal4gl8fgabo5co4gl4el8defedefgagabl4o5co4c"
  314.     PLAY "o3l8co2l16gf#gl8g#gpbo3c"
  315.     _DELAY 8
  316.     puzzle = 1
  317.  
  318.  
  319.  
  320. '=======
  321. SetLevel:
  322. '=======
  323.  
  324. 'x is the wall, b is ball. y is the star
  325. IF puzzle = 1 THEN
  326.     puz$ = "": grid = 8
  327.     puz$ = puz$ + "xxxxxxxx"
  328.     puz$ = puz$ + "x   xb x"
  329.     puz$ = puz$ + "x   yx x"
  330.     puz$ = puz$ + "x  xx  x"
  331.     puz$ = puz$ + "x      x"
  332.     puz$ = puz$ + "x      x"
  333.     puz$ = puz$ + "x      x"
  334.     puz$ = puz$ + "xxxxxxxx"
  335.  
  336. IF puzzle = 2 THEN
  337.     puz$ = "": grid = 10
  338.     puz$ = puz$ + "xxxxxxxxxx"
  339.     puz$ = puz$ + "xx  x    x"
  340.     puz$ = puz$ + "x   xx   x"
  341.     puz$ = puz$ + "x   y    x"
  342.     puz$ = puz$ + "x     xx x"
  343.     puz$ = puz$ + "x      b x"
  344.     puz$ = puz$ + "x        x"
  345.     puz$ = puz$ + "x     xx x"
  346.     puz$ = puz$ + "x x      x"
  347.     puz$ = puz$ + "xxxxxxxxxx"
  348.  
  349. IF puzzle = 3 THEN
  350.     puz$ = "": grid = 11
  351.     puz$ = puz$ + "xxxxxxxxxxx"
  352.     puz$ = puz$ + "xbx  x    x"
  353.     puz$ = puz$ + "x    x    x"
  354.     puz$ = puz$ + "xx   x    x"
  355.     puz$ = puz$ + "x    y  x x"
  356.     puz$ = puz$ + "x    x    x"
  357.     puz$ = puz$ + "x         x"
  358.     puz$ = puz$ + "x x     x x"
  359.     puz$ = puz$ + "x  x      x"
  360.     puz$ = puz$ + "x   x    xx"
  361.     puz$ = puz$ + "xxxxxxxxxxx"
  362.  
  363. IF puzzle = 4 THEN
  364.     bs = INT(sw / 11) 'boxsize
  365.     puz$ = "": grid = 11
  366.     puz$ = puz$ + "xxxxxxxxxxx"
  367.     puz$ = puz$ + "xbx   x   x"
  368.     puz$ = puz$ + "x xx      x"
  369.     puz$ = puz$ + "x         x"
  370.     puz$ = puz$ + "x       xxx"
  371.     puz$ = puz$ + "x x       x"
  372.     puz$ = puz$ + "x x  xx   x"
  373.     puz$ = puz$ + "x         x"
  374.     puz$ = puz$ + "x xx  x xxx"
  375.     puz$ = puz$ + "x     x  yx"
  376.     puz$ = puz$ + "xxxxxxxxxxx"
  377.  
  378. IF puzzle = 5 THEN
  379.     puz$ = "": grid = 12
  380.     puz$ = puz$ + "xxxxxxxxxxxx"
  381.     puz$ = puz$ + "x x      x x"
  382.     puz$ = puz$ + "x x xxx  x x"
  383.     puz$ = puz$ + "x          x"
  384.     puz$ = puz$ + "x x x x xx x"
  385.     puz$ = puz$ + "x x xbx    x"
  386.     puz$ = puz$ + "x   xxxxx xx"
  387.     puz$ = puz$ + "x     xyx  x"
  388.     puz$ = puz$ + "xx         x"
  389.     puz$ = puz$ + "x         xx"
  390.     puz$ = puz$ + "x   x x    x"
  391.     puz$ = puz$ + "xxxxxxxxxxxx"
  392.  
  393. IF puzzle = 6 THEN
  394.     puz$ = "": grid = 13
  395.     puz$ = puz$ + "xxxxxxxxxxxxx"
  396.     puz$ = puz$ + "x     x     x"
  397.     puz$ = puz$ + "x   xxx   xxx"
  398.     puz$ = puz$ + "x           x"
  399.     puz$ = puz$ + "xxx xxx   x x"
  400.     puz$ = puz$ + "x         xyx"
  401.     puz$ = puz$ + "xb    x   xxx"
  402.     puz$ = puz$ + "x x   x     x"
  403.     puz$ = puz$ + "xxx   xx    x"
  404.     puz$ = puz$ + "x           x"
  405.     puz$ = puz$ + "x   x   x x x"
  406.     puz$ = puz$ + "x   x   x x x"
  407.     puz$ = puz$ + "xxxxxxxxxxxxx"
  408.  
  409. IF puzzle = 7 THEN
  410.     puz$ = "": grid = 15
  411.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  412.     puz$ = puz$ + "xbx   x     x x"
  413.     puz$ = puz$ + "x xx          x"
  414.     puz$ = puz$ + "x         x   x"
  415.     puz$ = puz$ + "xx       xx   x"
  416.     puz$ = puz$ + "x             x"
  417.     puz$ = puz$ + "x xx       xx x"
  418.     puz$ = puz$ + "x     x x     x"
  419.     puz$ = puz$ + "xx            x"
  420.     puz$ = puz$ + "x   x         x"
  421.     puz$ = puz$ + "x   xx       xx"
  422.     puz$ = puz$ + "x       x     x"
  423.     puz$ = puz$ + "x      xxx    x"
  424.     puz$ = puz$ + "x x         xyx"
  425.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  426.  
  427. IF puzzle = 8 THEN
  428.     puz$ = "": grid = 15
  429.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  430.     puz$ = puz$ + "x x     x     x"
  431.     puz$ = puz$ + "x    x       xx"
  432.     puz$ = puz$ + "x        b    x"
  433.     puz$ = puz$ + "x     x     x x"
  434.     puz$ = puz$ + "x  x          x"
  435.     puz$ = puz$ + "x       x x   x"
  436.     puz$ = puz$ + "x      xx    xx"
  437.     puz$ = puz$ + "x             x"
  438.     puz$ = puz$ + "xx       x    x"
  439.     puz$ = puz$ + "x   x x       x"
  440.     puz$ = puz$ + "x   xyx       x"
  441.     puz$ = puz$ + "x   xxx       x"
  442.     puz$ = puz$ + "x       x   x x"
  443.     puz$ = puz$ + "xxxxxxxxxxxxxxx"
  444.  
  445. IF puzzle = 9 THEN
  446.     puz$ = "": grid = 19
  447.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  448.     puz$ = puz$ + "x x   x       x   x"
  449.     puz$ = puz$ + "x x   xxx   x x xxx"
  450.     puz$ = puz$ + "x           x     x"
  451.     puz$ = puz$ + "x xxx xxxxx xxx x x"
  452.     puz$ = puz$ + "x   x   x       x x"
  453.     puz$ = puz$ + "xxx x   x   x   x x"
  454.     puz$ = puz$ + "x           x     x"
  455.     puz$ = puz$ + "x   xxx x xxx xxx x"
  456.     puz$ = puz$ + "x     x x         x"
  457.     puz$ = puz$ + "xxx   x xxx     x x"
  458.     puz$ = puz$ + "x       x       x x"
  459.     puz$ = puz$ + "x x x   x xxx   xxx"
  460.     puz$ = puz$ + "x x x             x"
  461.     puz$ = puz$ + "x x x xxx x   x   x"
  462.     puz$ = puz$ + "x         x   x   x"
  463.     puz$ = puz$ + "x xxx     x x xxx x"
  464.     puz$ = puz$ + "x  bx       x  yx x"
  465.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxx"
  466.  
  467. IF puzzle = 10 THEN
  468.     puz$ = "": grid = 21
  469.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  470.     puz$ = puz$ + "xbx x     x   x     x"
  471.     puz$ = puz$ + "x x x     x   xxx   x"
  472.     puz$ = puz$ + "x x                 x"
  473.     puz$ = puz$ + "x x xxx x x     x   x"
  474.     puz$ = puz$ + "x       x x     x   x"
  475.     puz$ = puz$ + "x   x   x x     x xxx"
  476.     puz$ = puz$ + "x   x               x"
  477.     puz$ = puz$ + "x   x     x xxx x   x"
  478.     puz$ = puz$ + "x         x     x   x"
  479.     puz$ = puz$ + "xxx xxx xxxxx xxx xxx"
  480.     puz$ = puz$ + "x         x         x"
  481.     puz$ = puz$ + "x   xxx   x x xxx x x"
  482.     puz$ = puz$ + "x           x     x x"
  483.     puz$ = puz$ + "xxx xxx   x xxx   x x"
  484.     puz$ = puz$ + "x   x     x x     x x"
  485.     puz$ = puz$ + "x x x xxx x x   x x x"
  486.     puz$ = puz$ + "x x             x   x"
  487.     puz$ = puz$ + "x x     x x x   x x x"
  488.     puz$ = puz$ + "x       x x x     xyx"
  489.     puz$ = puz$ + "xxxxxxxxxxxxxxxxxxxxx"
  490.  
  491.  
  492.  
  493.  
  494. FUNCTION BASIMAGE1& 'BALL.BMP
  495.     v& = _NEWIMAGE(191, 193, 32)
  496.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  497.     A$ = ""
  498.     A$ = A$ + "haIkMNfVDDdf6n_T77nE9WA#097Gb8ITL6TT1bI541141ET<8159YR0Ri\Ri"
  499.     A$ = A$ + "L>W[WgcjimVWVeMW^WMkIZNVij3W7P^;cdMEGMegeMZ^n[ojMG_#842Q#842"
  500.     A$ = A$ + "Q#842Q#842Q#842AI>g`=L3^6eX6iJFcJV[U]\U^FgjFkJOkK_kV^YKbea>f"
  501.     A$ = A$ + "AGWjDWLM^cMfee^fEGgjFgldm^gm[i?iWeU^d5o_7onMX3M`oIdfffFoWGcK"
  502.     A$ = A$ + "NcM=Y9=ae`6f`POo:4=X1=`edVfD_67=l07h0MSNdSf=Q9<1gLWkLM;H1;`]"
  503.     A$ = A$ + "TU\4gbGnbM[KM[cM?gcmh^gkmNMKJCKbcVglVMggmMOnoOKH3K`]ne_NgZFe"
  504.     A$ = A$ + "Zlongn]OknomCKJCc=a9>Ag`6f`Lm]_meol1?Oac1Qnn?;beMMg#`_6:GPed"
  505.     A$ = A$ + "I=GF3^Wm\WNmg`7n`mJlI<SIheh;MY;e]Ve\6_NN[KM[^M\SMhNh7nQMkNgk"
  506.     A$ = A$ + "f]om_Og1>`1L7i87amH?fSi>fa>fEih7ohNh_OdSNDo_c1?h1monkI?kao_O"
  507.     A$ = A$ + "WkLW^7h1N0oc9l\3?K\`5^#ogkh6ghLSJDSbo<7GGlnRfdVfhJLSKL`7g4Uf"
  508.     A$ = A$ + "PM<HkAojGoLSI<Sa[iFfbFVKKKKK^M][Mi>a9>QkdWnd^WkiN>g;nR_XkeOm"
  509.     A$ = A$ + "G_Pb;ob_\k5NQG`mD?eCi>eY>UK_kM_nWahM:lnU9=Y9i6b#6Rgn9NNEf79B"
  510.     A$ = A$ + "2H[n=NSgXGkP>7K>Fa:FQO=gm]_miGOn9ObWdMfcNFgcn\?[k2Gh2NM8JNdT"
  511.     A$ = A$ + "_j[nZ5L]o[mJ_VokQ_cWoiONgU^dUlG7WkLWcMVcL6gSoh?^k`7n`^7mAODg"
  512.     A$ = A$ + "MOgg]gf9\GJTSLT^KnV_Iok42mh\8k0f\S=2mX7m`Kk`lWolm[Qn#?d3i]mh"
  513.     A$ = A$ + "INVWaMi;Oi2^^>]hUNYGbOmbcZl<;fR]h5_H_n_om_o^FdRF8KRZP1Khag93"
  514.     A$ = A$ + "N`3f=kI?K_n0kba6VcOncO=[Yo:_b[DDFC?]Og0?3`mPm^1NO5??`nAhIQa?"
  515.     A$ = A$ + "naOem=7ji3Aa1\Q_M][Mnm]R?DH_SHk>J3\K?=eiX3[?TVG7HG6?7`nYgbFf"
  516.     A$ = A$ + "RgV>lM4__Cn<Zl5c?=gj]N[^5]X5i]7Ve0af0FOTef;DJ>NFZ^#JNM4mjQkE"
  517.     A$ = A$ + "^WIo2\?1la4_gK>cI>ne3HL:dcGRj?\N6ffPM^H_;nR4O5n4?aCh]]Yn\6OB"
  518.     A$ = A$ + "F_^^n\D]miTV_KPo]l\?n<RmfPoCimPhcDN_8[GP]QQN>DTodZFe:_Oh_[kj"
  519.     A$ = A$ + "^L7j#7b_6GJi7bL]N^Y7Ocgl=_:_eKmF^gn]OKgkl>_SkMOgg]6QO6o>lk6m"
  520.     A$ = A$ + "OKBonZ_`W5k?0o5]a=^AgdWndma[CjoB3`W=\o=f3;n[QHUR_>NjWnYm[aQ="
  521.     A$ = A$ + "_egefiooKl6_Q7dZ`E^bEL_gkmN^?h3n0g7mAOTkCnT?amYOjWjn\?kcLOnW"
  522.     A$ = A$ + "oiNnb_l;mlEOeGinj_n[_6hoWmc]OOngbW1OFlIbW=O7lMIO_feA^^FcWkEK"
  523.     A$ = A$ + "?14W]7l1O#g:Gi:MSM\SeEEEEim1LXWO5e<HO3fZ>[I=;gJGkJmnRWm^FOGO"
  524.     A$ = A$ + "?:XcH]HFW6=8ja?nSoH_F5mkgmMOWkkon_gm3o`?hnUOiGLoj_n[^Okgn=?o"
  525.     A$ = A$ + "aOl7GUol?oCgOmGoU7nkAoIf_?oKicP?;n<icV_3n^hkT_K^6hJQ[9^fBcm:"
  526.     A$ = A$ + "cn2HlSW18>7m^gmf7oS#??;nOP?j8Nn\7FFW7oDR=\lnKVoZ[fIKfZP]8_ok"
  527.     A$ = A$ + "onNmfGl5OQOMJdSoh?nSGEKokon_kadeAefomOogo;nWoiO^6ZYOWX?KH?OH"
  528.     A$ = A$ + "O?fc6L=`e2GCL]ae8G[L=Kf>ECkO8ON?0aaSHGS_`8na\O0ReMXWg[dQHfS?"
  529.     A$ = A$ + "jVbDVROm9dmh3SlEW7moWICSIKn7nQOXgf3FcedlV>_jJhR=fc3fc0L=R]BL"
  530.     A$ = A$ + "=KkQ8Z=AaMoW[g1P_1`oX4KPQ>dQjg;LXWo[4QhBB<jI]NbK<Rm:n\SeYBjl"
  531.     A$ = A$ + "IeWkanId;HO=fEPFjWoiOnZjlX[Q7J=O]mN3km4L=ce>g3L_`m4gKL?FGdnA"
  532.     A$ = A$ + "SGf5_h5miK7k7N#3J#jM059H_\V=>T3STCI\F_iOnlimifjkVVgfSjgl=OSg"
  533.     A$ = A$ + "nJ\Y0=TYi3]n>ON>P[I^fiNPk5^W\m<K?3DK_?89P?c#oC^TB^?A>L[lTX`2"
  534.     A$ = A$ + "nL3=?nSVl1fR;EMI_[H;<n=1K4#KP>Qeg[YefSJoMFWJjJ7hNSkA^GiNVkM6"
  535.     A$ = A$ + "3Z;k=Vg1`kHIOEToLTO[SH4S8hjSbA`o=T7a4KZkon_OOn7`kNc7]NDkJHm?"
  536.     A$ = A$ + "\QoKof_mZkI5K5ZYmLF:Yk[]mFK`mX]7I^gI<8jk2ZYa\L1[mP_P8GZYf58n"
  537.     A$ = A$ + "Q\o[#[G:WPl>QJH2o=PMmi[MZVo9a78l^OlG8f3GC[C6J]KQRJjmH<6`H1S9"
  538.     A$ = A$ + "<fHn9]^4c<RO2eP6i6Xb?Xj?TO9<FBngP^gb[bh\S?ZM=h[3FOSh6I[aKkM5"
  539.     A$ = A$ + "<O8FYQMoKf2aH3SA<FaHFDkQBbn2<O1Ii74f09O1EgPm>ak#aWm4GflaNNKM"
  540.     A$ = A$ + ";N?>[WIaMbfkJdeh[N\UZ4`dnA77H\aRO6SI<f5M\<Y_7Ph2CnPC^aAMj7JM"
  541.     A$ = A$ + "DY4To8hg0baFlI?jnTjcN3Vg`>FRic?mCode4cYJR#[53Qf?GS5<VaH7SQAm"
  542.     A$ = A$ + ";JB`b;2bQZ=_i=kZZZZlmJR#[[:5Pa9ZO:ZAkCNbCVG[gcOgR3[ISSik6FO["
  543.     A$ = A$ + "BDWW???Hk5PoKc68;>aEOL>>XNI8_BVjDWZg?5QFGUU1KL`O>T;]DoeTC29="
  544.     A$ = A$ + "gcRJO3n`cdlRj?<FbHJDkPBbLREW0h3Dl3DEoO[o;KPZIHO]TcaH[H^F__j["
  545.     A$ = A$ + "m`NbH>QhhSO[I^RL0[BeNVd2KlSaB6C]LUPaJ;?QBbk2`n7b;Jba#b58R?IX"
  546.     A$ = A$ + "eJI5X62Yo1`NJYOd4G>XEMO`IaWRi7;_bH^cb7BAm36;]lWcN6PalJJ^8G_3"
  547.     A$ = A$ + "0odajJHoSb3Ro;hknI>cIjm=6a9\fZUZZ?nbJ?T7_ToRAc1QXijXXnCdaD;7"
  548.     A$ = A$ + "9H<WanX[oW;oPboOFC3oF\jE_JolMUN>#`ko8g`Y7TaHCBf?[ign[LU[hm7G"
  549.     A$ = A$ + "e]]?dJUbEZnN0H\WiPl9_8HmOFOSlQVN8GUZnO03H0^kl>_CO=SS=Q9YfI9^"
  550.     A$ = A$ + "S4oMb=Al17[3927<7`L1c9F^a5gjG4OBFoOkKOknnFJUFmPANgC?CPNN6e6A"
  551.     A$ = A$ + "BmQ9nJSmKQO78oL]eiIoHRR7fk1H>Pi2VCH^9Yn05m?mDAb1m:Yn21e#>a]j"
  552.     A$ = A$ + "ANT79AeFEdLC0o=C>HIe3XEGORR?A7oI>QiVXi2ALcYhoJlo9eO1eHMXeU53"
  553.     A$ = A$ + "hnTjNPjQ>9ffK[gcN[hM\fnJU^?lHc3<W`L3cAAGo?^g3#=7Q>PHIF^gOh8g"
  554.     A$ = A$ + "kYVgR;_k=OWIe>8nEPeF8_3I<WH^;b>`L2c=<7aLUE[TaioCnIX3H]OliAXe"
  555.     A$ = A$ + "W5287Mhijkh>^3OngWdekYN[9NRfjmfj=QN^Fl_enP]n?cI<gUdeoY>PI__H"
  556.     A$ = A$ + "k?ak9djed4>CM8V]\_fLUGJASE2f=B^DaJ9fhKXWS5ao<0o9cI<gIfnWThOa"
  557.     A$ = A$ + "nOIOPdSL3]N=]0Oj#MMB<=Xn6BR_<I<3O7Ha]2o9cH:oY8kR=7IaoRi`Z7o["
  558.     A$ = A$ + "J3fk;eY1ag7K4:ek7LV]>DO]\WnTZk]hFAnTKSWh?=Af7kI0[F0\hOU4m?f4"
  559.     A$ = A$ + "#^o#_8XD_?HA^;A_1THiakdRkmN\o8[OhHSS0SSRB7\i=V3I^TidT6k;\=Pm"
  560.     A$ = A$ + "4R^9djgj3D_QL62VTc]46KHoAT[D\NAdek3mLY8o8jjoFobRifTXoI]Ob];>"
  561.     A$ = A$ + "cT2]n]^0fi#oKTlf;Yfhck6Im16k\n?YXd7K^TiFVSCbJoFNoC_PVN#FXeci"
  562.     A$ = A$ + "3DS2D[]dgXbUo]Rnc\NN9SE0n:#DjS=OJm:dZk;kJkI0joELFiQ]oQF?WDHo"
  563.     A$ = A$ + "]dO<I=ObA]hlWYe3_iMSQNNBDHafk;ciaigClk3mP9R5JYBmnbe9iX4eZIBb"
  564.     A$ = A$ + ";Ib1#[F3S>>ao]XdWZ?WbL=cia]^_eo?9oGhLc9djjhPc_B>gJXNKCbNKagG"
  565.     A$ = A$ + "dGT\LDCjnbCR>gbL=cifI6#Lj4>OXXWGA>#6JmM^\eQhgbcY\?UL]F_U_2ln"
  566.     A$ = A$ + "?c_>fhDe?CB4U7Hc_VOOH^?JN?DKj5jg3Tc3D_7Ienm6WYKd;^`F7jKPaIW?"
  567.     A$ = A$ + "ik4amfdmlWRbO\iJVkA3TTlM0m4i6#OjCO2^>_VPJAQmUcnKS;Wl]J]e>7ZH"
  568.     A$ = A$ + "\`>_Y4UgHce<gS]o99V_Hg?i60WgmQFWGMX^;Io]d?lS[7ZIiU\U_>fh1oMA"
  569.     A$ = A$ + "i?VfWo^]fOLfmcJYH7=ijICKJC3^N?Z^WjAa>?3S;>FHS7nje\cg674E>H[g"
  570.     A$ = A$ + "IWKNX9RK]Oli9ij3i3LFY7W`n_9n347;RQKLf^am9ihQMf4:]OU7AOG?JQTX"
  571.     A$ = A$ + "m1jccdS3kE_jE`em`X7mXmWOc9i\P`lU?gcfI8[Xb5d0X5<On7WnQh5AMNSm"
  572.     A$ = A$ + "eQFg3cH6c`W_JaMFfR=MGioo<YEJOAD]_MF17WMoT;`Fom?djNbI=Rk0fQ5G"
  573.     A$ = A$ + "OSeb?IcFOQ`0=ABbcI;F0dOca^W#5_;Z]B\cWJ]9^N;UM>=cnjin4Kl423d4"
  574.     A$ = A$ + "X=RNNHGKJOnCli3i?#Xbe1Rc6i\F^RQ[QM>=cm8acF8Z>X=\c3khdCh?AZ]A"
  575.     A$ = A$ + "bai#Xm]jBQN\BLfj#Oke>Wg4RJ3d8XERcf7Rc;mbb#EO;;KI;cK_CLnga>O3"
  576.     A$ = A$ + "Io<QN\ET]1=RMN?V;=5a?UNn1W9E5cNJ2mM1bCI>CPH=oL57Gc>Of73fc94a"
  577.     A$ = A$ + "1JUTHg?ajUcGlQ<TQDd>?79?Uil3VJC9^nY9g3fIRBX7C5U6HW];99NGLnl#"
  578.     A$ = A$ + "\^h\9\HXm9o5H?^lm6GnWbnF\j`=dSYRB3\jj=9ki5k>8Wii\lZHXma_BT_V"
  579.     A$ = A$ + "D?UaM]anfI_;VfWoD8Z=<=2JVT4WGRW:fO#>4G<dndcMBJOcgdnfcd\G6QXf"
  580.     A$ = A$ + "`d99EkcN=aOWL>FGXem\WJnNX>bbEmYHeSHdem]WW5RJSXj4d>aEGSF=mBo^"
  581.     A$ = A$ + "\#g;C\c=Rhl_CeenfceQN\ET]9Z>99JOS=]Y=E#kU9L^`AoVRh9P^?Gi`PeS"
  582.     A$ = A$ + "e<]_#T_Pf9Ymb=j=2TS35BkM6j#7J>kOnAm[_egM2mHXXd4[?nTTJJl07h0N"
  583.     A$ = A$ + "kA:Dm^I\g1Km9F^aM]H[i;]_X^2J7K]ohdKdO4fbFfB1;6G4;G>C#iI\lAk;"
  584.     A$ = A$ + "4eEBZf7o]C]\GXjKi4k<bM=laCB\gAJOAm5d#9a^7lc?e<KQZF6kNgk^ol`>"
  585.     A$ = A$ + "^HJ5Ek;4eGBRf7O_`Il``6f`liLCJkSWne_ni>h1?H\adBJOAJBBdnTG=DoD"
  586.     A$ = A$ + "L>]Wfni_=]Y=nN3ABj_\F^Kbe\#DO9^LjdPH]NKgf]ic[cdfFoa<VahO_BLm"
  587.     A$ = A$ + "N:Ym5Y99EkcJbL6fBO39=enH_c<Wi<mkY8^n_SdnRdTTZmY7>\ne_NoJoYYf"
  588.     A$ = A$ + "O#3J#n?cLU3?Bk;:4T?JObWid^gm<fa>FOoW:>Km=]_#Tf4W^3Kaga>fQK]["
  589.     A$ = A$ + "M]YZfObCNbnjcEJOAX89JOR_5m_QdDk?_i=?_]DlN5Ym5QPhdMdKd8W3XneC"
  590.     A$ = A$ + "C]?kOVHj6W?NTfGDX8>MWEkjkNgk>EenH_3i_YdnR#ABdnTG3\fOJZmIo3DW"
  591.     A$ = A$ + "Raec=5R#1eC2aNUenCC]ojFgjlfA9]_8[2JoCMZCi>jA?JZZma_YDK<9aV7Q"
  592.     A$ = A$ + "84Pfo\Wm\nn3KJZmIO^dcoUfGTE1]?iH<iHOJZmglVg\_N]TfGTE1]?m#QCO"
  593.     A$ = A$ + "jC;]_XR2Ym5EZDXdnL^29km5II#kC?J3OmXmj:ZT0]?eG2nh?=end?ZXOk;o"
  594.     A$ = A$ + "k;bZDXla9iaVdnR\<XmaFO>3BCC]o:Fa:LKKKKCfl8b\#nlP_mil7==enT;K"
  595.     A$ = A$ + "dg[TfGTE1]?fkTfibVU3c99om5R#0Jo3Oh3k[OUdDk?oi?OonMUfGTEY#Ek:"
  596.     A$ = A$ + "LnJQ=o9YV55R#0JOl3?mRodDkKeZNBjC32A8PmR^m]_MgZFeZBE]?mj:ZIG]"
  597.     A$ = A$ + "^_8[2fScNBY?lWVJoNfcNj]ki2Gh2illdE825Xma^LdYYYfWnk9WSST_4:nF"
  598.     A$ = A$ + "R\8HC2W?4HONJZmil\H`3N`NoWNi;OiPOO:4E7f;:m=cndWnTZJo6f`6NeN#"
  599.     A$ = A$ + ">fm4jkCQ8:T?3GlRGd=a9>AGWkLWCE]?dU^d5O_Jh<Wi<1oNE8R2nhQlH3KC"
  600.     A$ = A$ + "JJCKJZ[mY?TCl]>na?N`_G5RX`JndKBh\1:]em0Wo4hSoTLFc945C8_m9^F5"
  601.     A$ = A$ + "ZcJ^Ve\Vi6oh7_?VaQnNE8R2mTWE_jEG#\g1JBCJRoL7RNC8Wo4aM6D845;`"
  602.     A$ = A$ + "7<hOc2eI;]]OGRI<nBEahBTE0KA6gh6G1Cg7eVOlcYbUOAX1K?`oVd;56h07"
  603.     A$ = A$ + "H1Ek3CJBCb_OG>k]2mm^Xb6dmH3bBGjBM]\U]\P[miL\3ol7gi\[#DX1K?8?"
  604.     A$ = A$ + "KBkcG^JSnfgnjgGQRaU8dPOmi\VH4SH455]O7kH7mi;4if3_cAnkA4:`_nhK"
  605.     A$ = A$ + "cNgkNGDdnHGE?jA?le3?njAJOAXPn#e<Va<liL#a#k3=ZA=bGW0\f_ZU;Aa6"
  606.     A$ = A$ + "\g0KmaW;TOm5;M_a:Gi:MkOokgMY;MYP?F8Z\0k=8Gjil#Ql=XH[mYFFFlRG"
  607.     A$ = A$ + "\fc[XX3kaUn2>aJZH[kQQ=\QiVm\W]_GHYLL#D<QN=>iFcLVcL2Rf_E]ZEnL"
  608.     A$ = A$ + "LPlWShLQ=HQN<ADI0WUXh[a2E>;77\OGbIDjEQd3#E>>8:dP]5DCjkKOkcEE"
  609.     A$ = A$ + "EEiJKKKK#dn6Hg3W;;Z>N55JX?9PO=Y6Z2YVgHX3MXnNg3ihP\kAD8QeGgjF"
  610.     A$ = A$ + "gZ_Vd3]^7JOkK_GoSoNDN=;:T#n3cj\3H038hjNSFgjFkcSdSLTSXngS8e1k"
  611.     A$ = A$ + "l]Jb][M][^6dP64L=_1kkUl8Uno\fc[8]a>?Q`WR]X5]8hjmZ3m]#\33knU]"
  612.     A$ = A$ + "?Rd4l]3WkEDk8QFWGC#n4Q?Gi<NDihS8]`jkDdSIIOUQFWW;moJFcJle=OX7"
  613.     A$ = A$ + "c4U7PM4D;jM[KM;hjkL1fRQon=knU??5eG8WIhlT8daa:9P?OhliRL^#kkED"
  614.     A$ = A$ + "O1MOokOo3^^>9PoW`^ObeXcOnc7la>AY9D3jDO8cM^c]PecY:4#>^=i9?Ioe"
  615.     A$ = A$ + "^Z];AnPUC`Hg0e75i]CXeci3dO\8??gh6gXOO_bf7ABQm8B^;\gm^GG_jE_b"
  616.     A$ = A$ + "Daa:OHA;JAncSMliYFkGT4\lESl4PcmQ#[Q[[#]D>X1=8omRdoRT0nbWn]CF"
  617.     A$ = A$ + "fGn91[nFXVR?gi>WliYXFab=Ob9bA=ZAicKW#[OC3XfNGh2GX>SB5e:H[c>f"
  618.     A$ = A$ + "a>L;Oi;?hjed4jUKSI<SaW_3jljBDM`G8H[3eNNF=WMZ?P_OhIJjUWQN\FT]"
  619.     A$ = A$ + "Pe4Y>4cRiXIJ1W?kTc3HCWj[?2Rm3fh_^e]^<C]HE8GkWLBJWkLW^CNbCZni"
  620.     A$ = A$ + "I5>dO?`78hCWRA?4?dP?KYVcX_^ajolLOXW345GHm>fK;[1BodTJO:djbR5H"
  621.     A$ = A$ + "GgdWndMkI?ka_gGUg3EF`jMd3UIoOdGS3]N\H3WOALF]CMXai7PZe[:78FW\"
  622.     A$ = A$ + "fGWjDW2^><4P]?TCfHkSeKgDM^GN3c_hC7>KhXWiG:Wc2Y14gGlo3WGkHoS\"
  623.     A$ = A$ + "mYl5lQo2F`2Lgb]L;1GgU5Xa=^anjMQjaTjAVJDCao]l2F_WnV<eQ2fi4Rn6"
  624.     A$ = A$ + "NF6lm9mfIZA=5kgb;H_]\N?af?dj\\:h[[A>bAj7W`?0Z7OFj2a^QekI]NV?"
  625.     A$ = A$ + "KBCJB`eGIMh\\3m?mP;doboWUFHeM5f]bk_WolW_omiQFGEZ0eW9aj3oobNP"
  626.     A$ = A$ + "EonYd1F[7OfANK=[I=;ON\7JmDY6<V=a9>AOMOAoXSeADnoWMaRE;iY5[GaI"
  627.     A$ = A$ + "`<eLHXeAUZPmoH3dBFbBLkJGkB[oWQQl#6oD`JE3LP3\TZg:TEQhO<jA?JO]"
  628.     A$ = A$ + "_`N08gWDO_:kPeSTi\gQnZ0eKX\c9MQL0MJCKJ^e^fejg3Ujm3I3`>7>[?Ga"
  629.     A$ = A$ + ":FA9A_C[DU>dQ>h[mMf3<ea?_3PmE5jio:=HM7lo<iR8WgJd;bZ4c9]#0ea<"
  630.     A$ = A$ + "a9aZ1n#[5Zd0M?iO8aR7kA3]NXB3jIAl<`DVbDla?1O1ajA:F05>`7>\F?n`"
  631.     A$ = A$ + "1O#[mc6F8O09^Q7n`7fW;#4oLU?dY7\F2nE0O<C>HB_fSejE>iTMPl1Ul3Tc"
  632.     A$ = A$ + "kd3MX3YlQ>5`>[OXogCMFCnf6jiIao6Z5<\1Rg7SnWm1P_gD<ab?\HDA\DXO"
  633.     A$ = A$ + "`BOa4o:#N9P_62ml\8g`N1H=:R96i>;?34J=EY2Hc8eE5[OP?UKGkJG`W?5i"
  634.     A$ = A$ + "7d;#7gh6gEeo4WMl=1?7Xg3lo`\UWHVPVWc9FlM0mmNjog4GU#?G:ZkP]#l>"
  635.     A$ = A$ + "Kj3<kNgkFm5g8P_a>a9>Q_>2Y7iXJZZl2b;8Rc>e6?nXPH#bJKkOokgkk2lM"
  636.     A$ = A$ + "GUP_QH=Ndjln?N?8jm=\Q=hVjDWZKh3OhNki;Wk=JRoK=2<h1?h[NNHGYdWP"
  637.     A$ = A$ + "hiKR;5i55kOUc6WBUcb:Aj2k9Vc5ENO0__7O4AnRB_Q4OLD:W_4l\\YcinIe"
  638.     A$ = A$ + "[Nenh`R==H3XZS:1`niXGACmRA?Ca>[T\c9Kf;8J9lmGF[>bhJQ[9^f`N6^>"
  639.     A$ = A$ + "ij5kJhjWnj=iG9ao6M_\YA47hK?ZONbC;b;GFgTNX7kAPH7`I8I8mG4JNFG7"
  640.     A$ = A$ + "ocL\SM<oe5JLjSgHoNOjCOlnj:dSSRBC8OEjI?kYK4SH4NKRFeZFUoM24_7b"
  641.     A$ = A$ + "Q2Ri9f6A^DP_CI?cHW4_[`PeQ1FC6HmiJ2kWKon\f]1O>lIcg1JMn>IMMl?3"
  642.     A$ = A$ + "fd#m1R^WJLH2CH2nJ7QnnBYjidFFR[kjT?NS2eCCcKNcm?G#Oe5m6eV:fCSO"
  643.     A$ = A$ + "Da7Bh35lW:iJ:iH1nEQcLE\3QmFcc=0oMPnB=oL\eRW[8Wa8_hgjFgZGG_\U"
  644.     A$ = A$ + "]<glVgll[YCNTQ_giMCE2m_HAf3N_0[_B^4A>eA]5P?Di<FRn=9_[0m:iJ7?"
  645.     A$ = A$ + "G`NYGlRG\goB0jIPo>ooiWcIC9oncI>caol4nRQ??\E7Ob#Nb;=_#842Q#84"
  646.     A$ = A$ + "2Q#842Q#842Q#84RbMn?0fDo%%%0"
  647.     btemp$ = ""
  648.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  649.         IF INSTR(1, B$, "%") THEN
  650.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  651.                 IF F$ <> "%" THEN C$ = C$ + F$
  652.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  653.             IF MID$(B$, j, 1) = "#" THEN
  654.         MID$(B$, j) = "@": END IF: NEXT
  655.         FOR t% = LEN(B$) TO 1 STEP -1
  656.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  657.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  658.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  659.     NEXT: btemp$ = btemp$ + X$: NEXT
  660.     btemp$ = _INFLATE$(btemp$)
  661.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  662.     BASIMAGE1& = _COPYIMAGE(v&): _FREEIMAGE v&
  663.  
  664. FUNCTION BASIMAGE2& 'BLANK.BMP
  665.     v& = _NEWIMAGE(158, 159, 32)
  666.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  667.     A$ = ""
  668.     A$ = A$ + "haIk37D3000334BDWoefV<j78QZ;EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
  669.     A$ = A$ + "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
  670.     A$ = A$ + "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEMf7?=jK%%%0"
  671.     btemp$ = ""
  672.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  673.         IF INSTR(1, B$, "%") THEN
  674.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  675.                 IF F$ <> "%" THEN C$ = C$ + F$
  676.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  677.             IF MID$(B$, j, 1) = "#" THEN
  678.         MID$(B$, j) = "@": END IF: NEXT
  679.         FOR t% = LEN(B$) TO 1 STEP -1
  680.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  681.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  682.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  683.     NEXT: btemp$ = btemp$ + X$: NEXT
  684.     btemp$ = _INFLATE$(btemp$)
  685.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  686.     BASIMAGE2& = _COPYIMAGE(v&): _FREEIMAGE v&
  687.  
  688. FUNCTION BASIMAGE3& 'PASS.BMP
  689.     v& = _NEWIMAGE(324, 155, 32)
  690.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  691.     A$ = ""
  692.     A$ = A$ + "haIkMN6[ED4666`2H35\0:ME`2Rm6F`^2::4kX8FA454\g[A15kPUPmJD80f"
  693.     A$ = A$ + "kR6SXR6R]XH;Z9ZQ8AACDnoJNV9O7F>L?Wc^c^kiN^gkkKbC<8\cl=k>ckIJ"
  694.     A$ = A$ + "k\][M];ZM2Q#8L8999eFGb?DBBBb;i7:999iUl3UTTTlBnQBBBBN9o#9999_"
  695.     A$ = A$ + "TOXTTTTGb?DBBBb;i7:999iEJl3K^gch2Q#4:b?D84]eYm]_mAMX3MX`l3kL"
  696.     A$ = A$ + "WkLD?kI?S6`06#df^]K[#84=\dY>eYX>fa>FHnQh5>h1?hXQ?lQ7ML7ga942"
  697.     A$ = A$ + "A3;MY;Mae7^Rb?Tn5RGhH7kHS^P;h242QXQU^e]^5ee^fe2c?TnPR_;ieeOm"
  698.     A$ = A$ + "G_#84=\\IKfV5]aKl6;o#Q#dV7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q"
  699.     A$ = A$ + "7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:"
  700.     A$ = A$ + "42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7"
  701.     A$ = A$ + "i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42Q7i7:42QWF2nQk`>\3AMZCMZDJ6"
  702.     A$ = A$ + "2]_m]_9Ck^e]^Uid^8Qh^A?6]h<?Ra:mL:YTgg[bJlDDaHBR[\T?iAm^lZ>A"
  703.     A$ = A$ + "mliC;1o`]H;fRXNe[N5em^gMG\V6jJGkJD7kH7MTgYMBbk=ICfT<5gDO:[aH"
  704.     A$ = A$ + "FRST6Wm]_m=caHeN>E?Z[DNldi>giX=JSf8GKTbQo=hGTVHKkf^]c5Om^gm>"
  705.     A$ = A$ + "ZWm\W1G_`R[J53QL_8?ZgUGe9Z7eGJ9j7B<bmdkj^^[X7kaN\DS5;5AJG=^g"
  706.     A$ = A$ + "kmNMe92mj]hVjU4SCKJC;CaAAE696_V[iJbD<beE]WCe[j:a;Ghk#k^\h95g"
  707.     A$ = A$ + ";\Om[O>O#3:c?ocolA;H1;8jGnUO9Ji;Oi=IKYU^dU6mmOog7mV_iKF:^<ZF"
  708.     A$ = A$ + "<Hg;2miPMmYmIZU6I]>A]8?Z_dBe?THlmN_g;AiMUR5NnL]GkeV[YMed?oco"
  709.     A$ = A$ + "LdEL5GA`G_5g3LP3dE_Wj0I9>VolWO`aBeBKRa[l:_b<5S?d3m#U:_l<jj^^"
  710.     A$ = A$ + "[[IY^BU4nEh9AjF^Wdj\>[S[ogeZ?QdG90_j?ocolPSUU]\U5=kI?kXeKmF?"
  711.     A$ = A$ + "7E:6BCKKC_f[mJUN>\iKnV7dcDkIIF[CD;E]feb?\fa2a`UOiG^knGm`?La;"
  712.     A$ = A$ + "NaAWciL>AoiOnW1Mmgf]MK^hnl?oc?J3g`=<jeOmG?Xdicn\?c57_d;mB1Mm"
  713.     A$ = A$ + "ECD696?_cklLah3nP?H#YSEFQ;kb^\X[nZ_jPl4;bWWaeBFbBLnRfHfZTWX="
  714.     A$ = A$ + "VC[?QiILmKof_5M;gb]DaH84o`OmGoeB?7fV]IK2b?cNF>a9>AGM2l7;2E]f"
  715.     A$ = A$ + "eb?\fabX7mXMN;lkFeSf?;LQ;<j`?l3?JA;JA1MmDORhNDSJDAMY;M9j]N[g"
  716.     A$ = A$ + ":Xdi1NP7`57?jSnX1MmECD696?jSnXSFoeOmS^WkiN2:M\b:<na?NWWH8oVO"
  717.     A$ = A$ + "mb?ddWnYOJdJ^V[ICj7AO3]i:Ta<Bo;cKmgomOkn]SV:62a?4=Va<6gcQcl<"
  718.     A$ = A$ + "?CgL3l`?l3WZ[gNFN2W`9hZgBm_R#E[M]l3[M\LP7h16MjWnY7M9GbUDGJo`"
  719.     A$ = A$ + "H?jOokOdMNWgI#GoTWlTMam#6b#LN=TNQXCkd>]X1<P14=UY<UP^nZ9KlEkl"
  720.     A$ = A$ + ">_cA[kj^^ACMZC=XdIX3MXUN>Qo?Um#nmnj]O8j5OaGdi7A\SW4nhfl5Jm=l"
  721.     A$ = A$ + "[oj_^`bO6oaTVdTFYH8;nQGl5Oa^dQhVng=cI>cDMmfcbmN_gKgHi3mg8[UZ"
  722.     A$ = A$ + "FkJi7FkHQf\dFkR^X;Z^dnI>cI>^igiB_d;=X[WahJcO8Ycgn]OK#Yc>]CkT"
  723.     A$ = A$ + "c?=;cUIU4UARAJg_F[eJ5M3g`=4Dj#<J?W6a86Ad4V`4LmkYUPO8bNF1To<>"
  724.     A$ = A$ + "IlChnb[l:_BQWo<oVWd9MB[dLZ5ZOh7mAOT;=hi9m?L6cH6Yjj]WUdfWOSl>"
  725.     A$ = A$ + "^Sk8ea#BDeJG;o``RUR\mccn\?KdZ]J[Vkg93AWkiN^^hVnI`hPnV_iK2:MH"
  726.     A$ = A$ + "<;\?]hgmcKAITHTiIRmX1m=:4]EKeFEji4S]WbN;9o`?h3nPBa?m?KCgd=]d"
  727.     A$ = A$ + "J[FYe=>_e=MCgd:i9C<4RO8Z?mY?AMX3M8J3fP=8enIfcBF?6l3In4;2UWN<"
  728.     A$ = A$ + "b?\nh7BnbHEcbecL#QOHXSibfgZ<WLi]TOh:d^]KkFYb0NQL?Qm8CmB\n:Fn"
  729.     A$ = A$ + "cHW]H84ISiUaULcgl=WZ[EnQ5K\fBg?Tn8VU[O]GkefE_:4mn_okkB3n]NV_"
  730.     A$ = A$ + "ilFb?L5JTSLT^hOeGmEgi5aN2Tm>HmD7fQMHU^?bjZ4ZOX]WIHnohi#JTl3;"
  731.     A$ = A$ + "fH]U^O8]?nb_l;3:=\aOa_CWUH0o#VCYlF]fl33mi4j\>[cZd_Oam36_J8Re"
  732.     A$ = A$ + "_Pk7\g>C[R??V43\N8Q:ROl3_`;l2Cee9o`R=FK=h7nb_l;7DJHSmQe#;4MZ"
  733.     A$ = A$ + "WjYFZ?ZDNcKeJc?Tlo8>RS8X[UehdZWajGan^>4Ig;N^WkiBme>[I=[Bg7I]"
  734.     A$ = A$ + "#P#e`6f`LcEch6ghBee9o`R=FKTm3]d^JPGDXk35lI`?TmbE8:^O8cgN8:YU"
  735.     A$ = A$ + "aF;nQ0[GKJ5k5Mc7PikUeB94aeBj<fa>fDO]f_?1h9cJY5ZH<cl<mT?iC>EG"
  736.     A$ = A$ + "GNi76_>Ae#nQYC=WnQ\>6do`#gc=l>2`JlanM>4IeY86^eKmF3:=BBMbeH=F"
  737.     A$ = A$ + "3gh4_aKl6cDLf8h7bc\i=_iUj[elRH?f`mR#g_Wfm1fSaQ630ca2eMbRjA?j"
  738.     A$ = A$ + "QKNACSZgnQkj^^[^mJTf_=9Ce3o#VW5f_I\FbT?6\7^0bc#4e9XNmaOl7O#G"
  739.     A$ = A$ + "?c[_iG5jn0[FUa1=X1ijC3em3ec]Ab?TiJ=Tig`lR86`?l9NRW8hH0?i#n=D"
  740.     A$ = A$ + "km97hi1mA<;Ra<O87bQTZ[Y8l3I^<I?MBo3RGg3_#F39NGJhnUl3cF\TGY=n"
  741.     A$ = A$ + "43N`3>Jh3Oh^l`Pa[POFJWCJC<NGlJ2M]#\hSn7>mY?m<U6EZ<RG=cK?m5Qg"
  742.     A$ = A$ + "Yg#DSVOH8_[hVO8[[<o68oi\43YMMMSOm0eKbZO8cabn^_kKZ^VR`?TmL=nN"
  743.     A$ = A$ + "7caL<[DM?jG8NQdVnZ^Z[BnQI<Fb[dVn<Q?1ci3Y_1n4DW0?aokon_DWnh7B"
  744.     A$ = A$ + "O=2I_bHmEPnJ#o3_okonCMJPZEI4_Nj7JFNgmKdl33iM5gl39oa?lINVW9Ca"
  745.     A$ = A$ + "#Xc5[MOTj=dWn\8V7eMOggmDM=5QO8[W8]5H>4RGgSa8Co2a;<?>SKTOHn<O"
  746.     A$ = A$ + "C<_cdG#jK#lc=D>K_i\7Tei;Tm?1_oKdf:4_<[m9mCPeT9D_ZJE6]g?=n_QN"
  747.     A$ = A$ + "f>eJc?TkE?mCodI:6hlm9d[7XNCFm3AYM^NbKo#F[>jW[m>g4_NGU>WeTOHH"
  748.     A$ = A$ + "aBNen1o6j3Hlc?Dk<lUg]OncL^KUFAK<BSGmEOeDO]hUJck7YAXW_=YY<:o`"
  749.     A$ = A$ + "E\gSJ]h7nEOeGUZomi]O8S]QdQO;f>oKK[OnHgXj7bc<N?]h<8Pg7>>;?JZc"
  750.     A$ = A$ + "9h#c3JSQ?D8W90fN]QjAD_9dig?=UAi7fhh7B<4jnh?;:_l3YN0W=4l^3bI8"
  751.     A$ = A$ + "6Y3SaQjH\g>]bYl3CW:Bo`ZYb?WP3Ym1SaVe2Qg=ed:6[NNdn\J:_>;TUOhZ"
  752.     A$ = A$ + "63]em3[VNWgiM:E>cbiY^l3[OnQa?WPY?JQN>`aLg5R\jU\F7IIm>[Vb[c2I"
  753.     A$ = A$ + "i7^ZaPl3[\hk>SE>iL?D[WBbEcUOXM>1SO6[YAXe=3M>P\gc1fW<\FSl=g8_"
  754.     A$ = A$ + "ENMF8;o`E=6TOHU5ec\b9kg1>;kdg;PTYV;o`hWicfk:0W_kYE\7G2AFNclA"
  755.     A$ = A$ + "SghLWkL3:MZVb[c2Ii7^ZaPl3[\HnI\b9_kFlmkAO_0BVJ^l3SOV?SG8mOjW"
  756.     A$ = A$ + "nYO:eY3WgoYEaO_]HmHXNi;l2_#ZCWJYlj\#FnQ[J<8o`:[hWS?lncLfWmIk"
  757.     A$ = A$ + ">ogUOHfRURd?<NKLkM[Wi1>]:TcPohnQFkR#?SMZV:RmN[l3UOH]T]g9PmOo"
  758.     A$ = A$ + "gOgkX2OSmTOHfRUj]OHXOCXB[RGOaf7J5aga3i7^29o#_TOHUog:o`Ef?\Xn"
  759.     A$ = A$ + "FdF^>fSmH;Ugfk]EAh5;o`E8i7jUl3[loFi7^2o#XX>K<[FNK_Go_aKl65Fn"
  760.     A$ = A$ + "8o#i7JBnQEnOK[Mo#J3D9\cJ;Pj5II?gTFAOASWg\N>Qn]=:9UAi7:o#CiUO"
  761.     A$ = A$ + "8OkOZDm^3h0>0i7f0j7JYM]`f_=hC5bij#FR;;_Okgn]cLJE9\e`nf_mK?Xl"
  762.     A$ = A$ + "#nQ[J<dFg?<YW7\Lfg`g^6]nb9C=2nQ<ONfgk\_kkn^Pb[T:nV85?_cbJKSB"
  763.     A$ = A$ + "BicJkUe_I8b?DnQUW>e2nNg`n_Ako`TYjQO8Wg6KiF^UAkh>^S^cn0SmIOf7"
  764.     A$ = A$ + "GkKnF3IO?L;RiZ<^R_GKX>5m=ThKncOn1UN9Y<Jc?J[Uc3Fi76^:2o`ndWnh"
  765.     A$ = A$ + ">3Uhl`fZg]GkeN5MX7jQjnn^<Y9=9MN`V#E?l3iie#6b#LkEnA?jAG2VgGf["
  766.     A$ = A$ + "XTWLf]5jij#J4N9FLAM8jK8NI5IId>3VhKZD8BnQ[J<dLh76jnY?^:2o#>CJ"
  767.     A$ = A$ + "?bSl8MW7fFm^a<Vah6W<WA\<gQjmG>IZNh7bc^SjX>:Gofim;gPc^GNFa_MA"
  768.     A$ = A$ + "NQWAXW1<9EaGk=NoA\_kT5IIdjkkSl8?B#iQl3GeHXi`?Tj>IiK#=Z8l3?h3"
  769.     A$ = A$ + "nPMSaRcRmhekhlWSa9ck^LNL6g8o`R;];7b7f7PiaIdIeTM>OIo^:Wk<#AF6"
  770.     A$ = A$ + "]kSjlnZU_OHXOS4=eX]7\TOHbSUjYO8WcndFQnZ]lU_lPb_TXheSH^m8?UOH"
  771.     A$ = A$ + "b;[]em3gUMIG2:O=9o`:o_]Aa?\BOo?jGojWK\N5AJ7okl0ooSGF:bmLCleN"
  772.     A$ = A$ + "SmR#Nh7F[bXMO<[nQImKUANi7^TU\TDO]Uk7bgV^\43Qh7bNf;[nQIiKH?ZN"
  773.     A$ = A$ + "mmCYlfFb?<IbZOeDOo?hNI_kM_;Td^Yn>?HUU5\P54DnE;5ok_;`gXAb_\\^"
  774.     A$ = A$ + "f9Y<Je?cZOHFoFIT7eEXmG8ZLo`\lmaSH84o`b?7?BkLcHcmlCmD?EZcKCeS"
  775.     A$ = A$ + "_O:a[G#iDnQ9GD7INcKN^a0]X5]8gnoS_SR0k?4F3fR8]Q?iCnTBg;bSbBBR"
  776.     A$ = A$ + "7;ojOok_K=i\mmHAF6Y>IFl3YO=cI>cam>F_`5^`X5_h5klf9mSOF8G?l3ik"
  777.     A$ = A$ + "9M8:_l3YM?OS8bbHfQ#nNBQO8o^gh6ghBMNK:?OoDZDM2STF_#nQ9CggmMO^"
  778.     A$ = A$ + "_Q[Qn^\E;m3o`?DjN1kONK?gDD[al<Wi<GYkmlmkfVgbRb3f:S<NIbolFl]Q"
  779.     A$ = A$ + "g:CeJ]4cJMU\4ofgc#^GCoFV`4V##Y3[76m9j7oaO<hH8;nQL]3LP3<ei]Yj"
  780.     A$ = A$ + "ak_\9[\bNhPiF<[kiVfjnQLokD>UCamk#5QnR_h;:M_Pc`Gl<XOnQ^_U[UR_"
  781.     A$ = A$ + "GKXM5WSoh7FTm9e:Sh34jk[Ge4[;QEVZeN=[XkoMeDlkmhWai:don_oKZC7j"
  782.     A$ = A$ + "3DXonLCM^6U6IU1jOJXcaMcQO8k1<nV1TeeKY]^OhX6eXLkcm#o^OD;m^_kk"
  783.     A$ = A$ + "FjN1eEI\#<7L5eN^9nki>kUOfknh1GTN4FITb5k7\lFCMZC]DIZF_;2=:nQf"
  784.     A$ = A$ + "JIlaOl7GGSQhWS7fiJDJTE6`?OjCOj153=7nQ\_HI<nDoCnQQ;n^Od[Ne[XY"
  785.     A$ = A$ + "<UYTkY=RcXoh[e[m^R0oaOl7iNn5O?:<h1?HGmkRf?d:Sh1`gfWlFhoIUYJm"
  786.     A$ = A$ + "^ZfLj76oN?n0h7NggmMGgbO>ocS_FJ43Qj7Bo33ikD1Zi`?Tjjl>[#O4UOHh"
  787.     A$ = A$ + "Ri9Qj]d?kR#cJFcZdmRmH?f3gHc]a_F4kiVhm?Hof_mcM>8EdnQFITf#do]l"
  788.     A$ = A$ + "FWaIL6[d_YD]cbTVCo#kkIX=FEPjF<_oe3egnfgEb?TaP`k^NJTi7bn[ReEI"
  789.     A$ = A$ + "I;KIY>>J>l37dP6TKM`hmGAnQQ;NfAmFj_AAXh[g7_3jlKH5YoDlf3lMfQa#"
  790.     A$ = A$ + "`JhD?FCKl3In7bKUVcncV;o`h[SAlnVQO8SgoOnWoY#cOjGDllWfMfi;GJTM"
  791.     A$ = A$ + "_Vmk3[7C8Sg_i`?<?lITOHc[O8kSTlDag;^fH;I?m;o`RELO?NO3]kmfL5Kk"
  792.     A$ = A$ + "Kboj_n[29o;OLbfh7]gCcd8kNM?jA?L];Va<VAZS7i7F\aI[Eo`lN?g4?_fj"
  793.     A$ = A$ + "]N[S6i87YKmH[GkiafRnQ=UG8[[?eiImfi_3o#6k9SUKY;MYiJnciACiNQdV"
  794.     A$ = A$ + "S_Igfn`?=:^O8m?<Tm<Tl3;fh\eXO8[WbdVfdbel:^_1kaLkn^l3cOanD<nJ"
  795.     A$ = A$ + "i77RAVcC>oEH_`7gCTWo?nSohI>oi<X9nifQ1N#TofjX5ZO8#<CKSOogomDU"
  796.     A$ = A$ + "6b?\HSchWCF\_\Vm\W]kLHVi<QecTWQQR]n33MX3e]o2hlkSm#GNTf#lf<VO"
  797.     A$ = A$ + "8SQQijVjKL6n?gi>GghBH_2`IUHXiElegTci;lVH_VGTgoRG6I>Whlil9ObW"
  798.     A$ = A$ + "diAbNHROWQe3>;YOlbEBl3;Rb:kE:RSJMV=_WkiNjVGOjG^]WP<?ahokhN6o"
  799.     A$ = A$ + "mOh7nQYZmOelQiM8Wm;a9NRWXK=iINB\ci=nFcbm4f7k<7:9iN]]V#DgTmWK"
  800.     A$ = A$ + "B[SJ]Y`?dj[1?;HnQb[j46]5m39n`kXJe3K90kcA>3;YlDNkSl6JG#m5jSB["
  801.     A$ = A$ + "UkO0W3Nh[EYeG^iZ\>P1<0gcGl=a_Ylm<>NRE:^jI?kIYm>?kaUbKccOGl_="
  802.     A$ = A$ + "I=5hSaIe;NQCLRCdiiTek5D7UmQHF^_`H6Z7go]kO]5FOiZEGZU4dg9f[8lK"
  803.     A$ = A$ + "\5MIRc79FKIl=J]Lo3HOgROCUfoQecb:N#Kof_m^e^HH3KH^mJ4cgFeNoIX]"
  804.     A$ = A$ + "6SK>_R1nn=`n^WlWmb5m;UWiToImN1[5DFSe\jWVDhg2hg>hLR]e^OHLHO2B"
  805.     A$ = A$ + "Ja_SBK3j_0SQ:;`nBQc0OVc7l#X?LiEJ3\WiHm6Ym2eGSgFVa_Po8SOPnFPW"
  806.     A$ = A$ + "IFb[3jP>8gIh0e=hnDi_oB5am_b;Sh9<i9?IGohhn:gOcJjCLBlBLgDU[jEM"
  807.     A$ = A$ + "56[:Y3n?TVDgVj;llSnV`cfJm>dbkO=NV<_9QhgP?<m72OHVW7jC8eKI^AH<"
  808.     A$ = A$ + "h=EnCna_S#lbINDJ_GCiRnMbie?oF;?_CBK:Z3P75Y1ogl\>Q1U7:GFobK;i"
  809.     A$ = A$ + "7bcJnm?B?:oLoUiC:;`lQ`kF\MFTWWY=#O2Ym2cY3?_Xm#i]KIL]hS#\TUlR"
  810.     A$ = A$ + "HVHWbPe?QRnnGiUAlg9?H>khnJF;C9YLE_Z[#iTbch7ohMn3Tfl\;]WIm4Kh"
  811.     A$ = A$ + "MAm=B7BKlJ`[POG1o2lNSk3c_eQog86a8LcAYi3KgC:_NECE7SlZF??JZkeV"
  812.     A$ = A$ + "7>o>7UM^?TTfDD7`lXioVWe9RWGD^XleFhmG^YZ;IoV5?_hiDFPdPdRdTWki"
  813.     A$ = A$ + "IJ7?m]j5UgVQo<i;omI=?SGFZTWANOo[lb8U5[=DAl<:=WQ9iIIU[_Y:WiAM"
  814.     A$ = A$ + "IBOl:hgC`;Rnk5gc9[n`YY>FU^GWVkUFJ4oNDNGW8NNI??bjg#UFRnQ2A[AX"
  815.     A$ = A$ + "]LiN>V_Ain`iag>9aZRl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`"
  816.     A$ = A$ + "Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl35"
  817.     A$ = A$ + "2Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`S"
  818.     A$ = A$ + "l352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352"
  819.     A$ = A$ + "Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl352Q`Sl"
  820.     A$ = A$ + "352Q`CAj7fnfgnX>eY>5eU^dUX^e]^ib;Q#8JDYOm[OAM_kM_#l3k#7j#D7k"
  821.     A$ = A$ + "H7SjLWkLDGkJGMn^2Q#dX2NQmZGm:gm3UTTTJ=;i7:999iUl3UTTTlBnQBBB"
  822.     A$ = A$ + "BN9o#9999_TOXTTTTGb?DBBBb;i7:999iUl3UTTTlbl352Q#d^Xo74NT%%h1"
  823.     btemp$ = ""
  824.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  825.         IF INSTR(1, B$, "%") THEN
  826.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  827.                 IF F$ <> "%" THEN C$ = C$ + F$
  828.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  829.             IF MID$(B$, j, 1) = "#" THEN
  830.         MID$(B$, j) = "@": END IF: NEXT
  831.         FOR t% = LEN(B$) TO 1 STEP -1
  832.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  833.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  834.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  835.     NEXT: btemp$ = btemp$ + X$: NEXT
  836.     btemp$ = _INFLATE$(btemp$)
  837.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  838.     BASIMAGE3& = _COPYIMAGE(v&): _FREEIMAGE v&
  839.  
  840.  
  841. FUNCTION BASIMAGE4& 'star.bmp
  842.     v& = _NEWIMAGE(190, 190, 32)
  843.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  844.     A$ = ""
  845.     A$ = A$ + "haIkMNo\DD455NnWdL>QiL>;6:4#4##PRT05I99P92FP:15D11:1D05D\0OR"
  846.     A$ = A$ + "PB##Paj[jZ[MN3c\k<kfcdmlfc?lE_E4N_memI_cY_cmNWXGiERS42Q#842Q"
  847.     A$ = A$ + "#842QX\<UY47=i9kog72AMbFfBLdVg\oOO84e53OhaAWndaAocoHN]_Oo84e"
  848.     A$ = A$ + "1cKNaAaa6VkLSSNiG^mhkg_2Q;H?kYU^OGkbX]OYG:KTfG<DPgl=SSn_o[U^"
  849.     A$ = A$ + "o2G8>j=NShXGl5=l2_P1ko]Ekkkgg2A_`ZFE;=_UU_LSFoiN^hXWmI=`[i?C"
  850.     A$ = A$ + "jNa#1>bA^BMoQ>TAWod?MLdCnT6heBk;6:`4V`EZiQ;OISoW7oaSSNT7a0_6"
  851.     A$ = A$ + "]ocolBg;JfliONfjNhCnThX7nQSSNP7`0_n9N2SW7[?OOonG8j6>i9cGgOlS"
  852.     A$ = A$ + "77MogOLdMOg6he?jSJRi;_>RV:cJFi[i]<bA67M7gQ1dn?d3IljS?ORi;M_X"
  853.     A$ = A$ + "Ya>fAWemKH3aAgj]Jh>_CC<o7ka<NM\almm_72AAQlcOncgIM?e^`]MKaAgd"
  854.     A$ = A$ + "=InjmL?VchZcg:JR\\UeI=_Ua=^hX[ojSS^iK>>j^^[hX7l1=W_ENM4==>h1"
  855.     A$ = A$ + ";^^OkK?>jJ_fhXKl6SS^mK?>jn^?SGWWiIdiK5=76kH=iW_XjNZQ1lfC<Oli"
  856.     A$ = A$ + "ciK9WV?eC9_>RV3[Om5GcKIVc<>jj^>S?On<0ic?I^lU^G4j<`0UGgOP347M"
  857.     A$ = A$ + "=GCLd=L3VcgN_g[bU_Xi`dVFielF`C?NM^UK9>JH3CibGdLHKK[kem[H5Vcg"
  858.     A$ = A$ + "RG7^?FT;OZI7Eg2R#VGkeRS>kIkNM?nS#gKmjXLi;J2\X5emJN;lI7>OKbLi"
  859.     A$ = A$ + ";_>R#Vm]_NGgCmKJcU?NMD^l5Q<SNdaAGjBm^^oLWc4[GibGd4PJY_GelFVh"
  860.     A$ = A$ + "4_B_>Z^54Q8on_k>M?cK1bUObjFPLi;_>R#2VmO^Bc3hG2]^=Gnb[S84QIoW"
  861.     A$ = A$ + ";em`lWO[LiK[K1U;OAX0cl?VmO^Fgc<H#e]P8DQInW[elF8f>W_Ee]P8dHgk"
  862.     A$ = A$ + "^jdmOl7?hLiW\^5D?8:l5YWoO^VCM:cIK]ibGe]P848[ioW[IDSBibG4FLh3"
  863.     A$ = A$ + "Gmjn]^Ee3RR`QgiMZN=?P?:dkZ^54Q0KLSeS^7VndE?8:23n[oZndmkOoIW;"
  864.     A$ = A$ + "OieADWlN_GmYi]PgV\j1AieADGlMOGm[kGjBE?8:l75MnoiJ>fa6\GWTibGN"
  865.     A$ = A$ + "M4E=UInoiJhW_j1AQ?PiLS_dmOfWMUe]PbU_XZi]Okb=ooL=Wi<6omY[K1U;"
  866.     A$ = A$ + "OAEbjFWodlF6ohEM;8ZGnSo`ojNbUTZK1AMaDWZoel0mP8eZPj1AAM`GoenG"
  867.     A$ = A$ + "cKI>cYmmPXdm2G#_>ooL=ol?[N#DDmhRioW[Qlf[N#DDU\gmjOMNJFmZc_74"
  868.     A$ = A$ + "EM;8jEXOW^h5m_>?=D?X4_7_>Z745^6j]KO[acSA<2Eg2RZQSNDo[_c3VGE:"
  869.     A$ = A$ + "Gn2GcTVToef]3Z;DlhXN#DhBfdVl_f^C<UYTM?8:_>R^1VoOomOkOMMWh7nQ"
  870.     A$ = A$ + "Fib7_>Z745m2EilocU#mQbiICg3Rb[SXKPI#__ed5U5_H=kT5m>TO`ZLnoiJ"
  871.     A$ = A$ + "hI>QZK1A_b:GYoebU5R[KcU_ZK1Ag`_l;nG7GFFkJc^74C>kTUfGT7d?CnF3"
  872.     A$ = A$ + "g=LjCKliXIW\KPIT4c^Un5fi>m_6^KIi;gl\#TWgFCKJaAcNfaAcKNVj9mmO"
  873.     A$ = A$ + "ohXU\4o_njB#KFEjnA>BcLZcgkY2AB#CRf\ZSkSoAGlL9F8j5XfHGcJ<Nfj4"
  874.     A$ = A$ + "^Bk?SI47MbCjoOg5mWPf3oKTOZlPcaH?;S[dolmPW]=kKOnO=#dO1mnc[nZV"
  875.     A$ = A$ + "lCU6bE;`ig9gEYeo^#gcg;nnbcUNikADeP_6NN:amO>;X6l0^G5Tk:nL0jO["
  876.     A$ = A$ + "f_Gemf[I`g;n<5OnRjd]>W3lRn;>a9RS6cH<g;R\PjaPJCRkA7i\U?7Pf7]I"
  877.     A$ = A$ + "bkIA_XmC[kicEfi_NEn\\DdO2iC6m<g3^\Pj#RN<SN>Pjb0m?eV1Jbdg[>G4"
  878.     A$ = A$ + "c?IlNZi?nIaWk8OZbgSXG1O=cOnVkkLN#mgAmH#]8QnWkA7J#dRX9C7_gUnk"
  879.     A$ = A$ + "9>?eh=N[X7OX7gh<_3<PoGk4=C#kPfRj]8?\mB?JO^_d4c7]7J#dRX9MYond"
  880.     A$ = A$ + "NM\JOlCQ_:^V4G_QOnnhi1RXIcfg^9nmEMEG9GmEKPJ>5M?alYG38F?J>dNF"
  881.     A$ = A$ + "_mYel^:?nIYmC7gW?3^`56VcO3AH1J4VkQIYgCZkCZi;JLNGG?BYen9?W[e_"
  882.     A$ = A$ + "?WgPW9>bgS8?HnBSF]CJNlg#mfQg6jUBdFFol9?7KEZicb_ObcjbeJXnGiJ?"
  883.     A$ = A$ + "LN3nZlm8BCkleHQHlXia??nJ8?>F=5J\di\\>[iDikAD6X?fJ:nJLY_W#hIW"
  884.     A$ = A$ + "P`?dDmeh:O?Okgjom0AmbffFcfGSlm8:3h[QnOIXP_6ikAD4H_Uhc3eleD6m"
  885.     A$ = A$ + "_lmdOAEh[9dekMS_W5\0ikIX0mCnJLU_WGoeU_WV<7ohmWnJ:Sn??O?D?Ybg"
  886.     A$ = A$ + "Cc3le#Lk^eGCEDklQ4bgc#;`Gc\VUled=Jollm`c?Cik9L1O=\_9O=M_n_Mn"
  887.     A$ = A$ + "NnV_aokaR13?7[KW_6K<nnEO=U=fONnNX7LT_7o3nJH>U9O=^Gkg>O?L]EO_"
  888.     A$ = A$ + "gg_ba>VleDejoTnN\mcUeg3e`Z_e0mKlEOUleDWanccg3ckdVdcVQV:bGSod"
  889.     A$ = A$ + "nbgSOX\nJH678O=^EoWW_7FOU_7g3nJ`[BImeT^?_U_VNGk;O?E?bGCh#Amm"
  890.     A$ = A$ + "`L3EnNjN`G3jEi[9\XCnNhJ\bgCgQle4f8O?^5FSVi<U_VV0iik9iljDnNj<"
  891.     A$ = A$ + "^`G3[iIi[agJTQbDDO?DS\nFS5J\e]:O==I:Z_WE\2o[e25hIKXle<dP>iki"
  892.     A$ = A$ + "Sn8o[g25HV];O=3M8?O?4OB?GFJ1c\Ddg5YOXT_VV1IikQlEhK]FX1c`UdJN"
  893.     A$ = A$ + "i[YiCB]ogomnGW5J\Y==H_=F=?cnSQ=<i[Y93k?l<HAiao:i2G`Xa]WQ5_=4"
  894.     A$ = A$ + "WgZiKjc_VnMn`?doJ\#5N>LK?7;m82niaKCbWCDbGCcTSNDo[_2E>`1JiaQL"
  895.     A$ = A$ + "g`c=7ReSOnd?C0mmnXXh<i9kO]EX3eA6jNRgS^WnI3M_=F_dl=?fbFl_^:d1"
  896.     A$ = A$ + "OPhcQcdR?7NN8C>;9N_eSS_g7557Z=WcL6o[[2M>eY<gS:>G;WcUNiQWmgLV"
  897.     A$ = A$ + "FicYiaRFToeD=56cHJiaWli`mY2o?b[CcSm_Oo[WJ:`Li:YG7bY3iaTkEURi"
  898.     A$ = A$ + "gLh]N[hX;M9o[WJ:`J5eP3nM87nlJ^?]T;C^7]Bgg<H][eoJYV6cM^iW?Cie"
  899.     A$ = A$ + "YIPVU\UWOkgJMOKY6<YNdhnG9_>=3Vndm_6ZY2jKlj#]HVll]fjACjn`5=kT"
  900.     A$ = A$ + "kNFoj7L=;XLig<PJ[mOoGo[OJZLfcJdlIU;OMnf`UU_Lo[MJj<a9fjl]D3nD"
  901.     A$ = A$ + "g2:GnQ=7j#nGgddI?kYE^lil]:GnQ=SOlaAGnbnGgd>>i9=hkg7]3F396_bU"
  902.     A$ = A$ + "OcP=^Ao[IJ7kNg6O30_fg_OJ7;I93^6=E^l3G2ehXL_#C?g>8?iX]lmk]lPk"
  903.     A$ = A$ + "oQ]obil]fLi[JE;\H>caoJU\PIh0e5JNc\3VOoQjWGiIX=alCW;OMnf`QM];"
  904.     A$ = A$ + "o[CB3_W`CCWV?ChO>4mmlUOIneU_RikO2]n6?;O=]K6lI[mmU]<ooN?9WolV"
  905.     A$ = A$ + "liHkgLU;o`RE_Jo[A\d9O=YW7I4;5O4X[PA>b`bg3elAjLi[N#<<PjYbgj3X"
  906.     A$ = A$ + "XnJ\WGd>3nhO3NM0N=WOTLXkkOOPOjWD^l3AVdTl_f0O=;NaMgLFUlT#<Db?"
  907.     A$ = A$ + ">`[i?SoOO`746g?2R_K[E=U;o`P=_IoZ9`Gc`7Name#n`C>?b`_<j:dA0_Vo"
  908.     A$ = A$ + "<>39oM6mXm__7lAJ[E=K^lE]Zi?`7mY?]od3UeGCbWSa4G7o2fI`7a>1k<LV"
  909.     A$ = A$ + "oOlgQo^nfgCjn>Gibg_\`5j7M0nJXWeMilS?9I=on9f?c_OOikQ[kXn>?<HO"
  910.     A$ = A$ + "k[ngokEO=9ONoUe\5>i<L>mc[AnN<ZAi7O?lLb;M^leiK[OlAOSc<Ef5nJB>"
  911.     A$ = A$ + "WEC[G\JoTc_o#`gc5_XicMZFel;[I=egNNEh[YMcIeRlL;2=8mJ#Mjk9_n>G"
  912.     A$ = A$ + "NMZ?Z[n6_ZmeTg_OUagCMmLLi87AmM^?IJC[NfWaG3aeJWV?[W;>UaGCWXXn"
  913.     A$ = A$ + "NZ[jkQ?oYn>g?De?;b[KO=5Ak7:nNFgjDOWk3XfH[bn67?3lcY^med=Jo\lm"
  914.     A$ = A$ + "#mmDUnNH>kZn>_nY:[IaM^Cok[Y8jOOkkI2C#mMNMc1?Xkg7aG3g3\#aGCAd"
  915.     A$ = A$ + "nndg3gWJE[Je7SKL^OOl4W`lm>dled=Jojbg3k1lmGib_NH3K8lleTnimGM_"
  916.     A$ = A$ + "Wk;O?dG=Z_c[7LEL[VV_VRXm;R_7>KT[^Nia?N[Li[JE[jHfcfMnJHoXYi[Y"
  917.     A$ = A$ + "KdnE]_7j9NegiE;^hi=>nJ`WBCfGCAdoeU_W_h;DOWGU<RAdKm=>nJF`26jh"
  918.     A$ = A$ + "[Y8Joj`g3mM>G;DmMNe`ZFUleh2]OEhkIZCEmMNEa_n[bGC_XokT_7RAg]cO"
  919.     A$ = A$ + "XOl7E^l[2NggEnJLQf_8nNFjBk>O?hYGmM^KY\m=nOnWUgG3aYJjnJj6]OFn"
  920.     A$ = A$ + "NH6LEFO?h3EmM^kX\m=n>fQleD4mOJO?lkL_hkQnNT[KZLik6`[BAme#M3CL"
  921.     A$ = A$ + "Li[YHJoRjkYXmb9moRjkLg`NgKWG_iJbDKb43??MOoX_V^AkWW_7b9FWf7ff"
  922.     A$ = A$ + "fDOWk2H^EdYH=L_G\?G>8F^leDNLU_W\jkLngYcgF>nd?]mnJFi:=nDhjZLm"
  923.     A$ = A$ + "edajU_VRS[lm`cP0U;oN3ZkY\FKIfMAO?`IW\cXJdg9embGCia5nN>lQEOWg"
  924.     A$ = A$ + ";TGOS_omKV]1LV9f3`gBJ?>bGC_A_jk9[n>gjeAalK?L6YdnJFkJ=aO8_`LV"
  925.     A$ = A$ + "9dc4;gNNFi[aMDDO?lli:]_7V[AZ_c;?TKVcM^1k[I6c`\fCL7Re#<7Km#aJ"
  926.     A$ = A$ + "LbWK8bGSKXKmmXn>_kPc>IG3Yf?X^YHMW[gbJ>G[eNNFdiXg]gc4i[amD4O?"
  927.     A$ = A$ + "L=PTe9>WoRm6egi5W3L0ce>I>]HGcImV[cbJ=GSejaQeFkc:7i[YjX8nNH]g"
  928.     A$ = A$ + "jk1_of[mbNUZE]fcH7[iNN?cIfJmVe8FWi\A\6Kmh`J:jMkc:7bGLJO=\6;="
  929.     A$ = A$ + "_KX<nN6H0cNU]V^]GC#ib?K`7?nJB^FcJ<[_4KQ[GbJ;[UfW5JbGCmBAmm`i"
  930.     A$ = A$ + "dH?bf;3fLi[n>_H[_9mhHSYPF7hebGSOfK:BnNB^?YjFXh[]F?>4?Q[UbJ7a"
  931.     A$ = A$ + "C`C3OEnJlknCWlm`N4JNn:kMfJdDNMJojZ=?>h;Te<^F9[O\VBL5b;\lehom"
  932.     A$ = A$ + "Y\lm`N3kA\GaN6kM\7JWSRb[Cn[WFM_MMTl03LmBR[8O=Q1]cg3kEfm]TaYT"
  933.     A$ = A$ + "^?kead[Q4W0]>`JWle4FTFkcN3kA\GaNVmIEJFaZlmkm#QT[Qf[MbJX5FgT_"
  934.     A$ = A$ + "V`TdnN\nn]TdCZREUojW=fABD<n`V\RmWgnW_O_6JTL];;TV?\AkOmnJGFhk"
  935.     A$ = A$ + "gK2]7:42Q#842Q#842Q#842Q#842QX#loLUV%%h1"
  936.     btemp$ = ""
  937.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  938.         IF INSTR(1, B$, "%") THEN
  939.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  940.                 IF F$ <> "%" THEN C$ = C$ + F$
  941.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  942.             IF MID$(B$, j, 1) = "#" THEN
  943.         MID$(B$, j) = "@": END IF: NEXT
  944.         FOR t% = LEN(B$) TO 1 STEP -1
  945.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  946.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  947.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  948.     NEXT: btemp$ = btemp$ + X$: NEXT
  949.     btemp$ = _INFLATE$(btemp$)
  950.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  951.     BASIMAGE4& = _COPYIMAGE(v&): _FREEIMAGE v&
  952.  
  953.  
  954. FUNCTION BASIMAGE5& 'wall.bmp
  955.     v& = _NEWIMAGE(193, 192, 32)
  956.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  957.     A$ = ""
  958.     A$ = A$ + "haIkMVoDKKl66?094`LK<H3H\aVS#`4P090QLA^94BPLl=9CKcdIji?eYMjd"
  959.     A$ = A$ + "[IjOlkgmIIUA\`F]j`[TIOoQ?S5Bkka^jiaBfH3e[GWEGBU:EHC?md\A6I4f"
  960.     A$ = A$ + "#3=4[gNkUeC?m`^jE_Z0\=1Ak6#7W;G>FnliIS?nh\5GLIFS6[b^i=_=Kmeg"
  961.     A$ = A$ + "DXm[E[VP9VH2FYBUH3>hP\nk_OQ^_k^kF`E^bEJ^=1Ak6#;?`038Nnm:EZaV"
  962.     A$ = A$ + "Mf5Hgh6[aFMeeIc=gLRWo_Lib2_26OWMf9[S>jPMY;M92R;<0==dfhJ3`?\`"
  963.     A$ = A$ + "2;bFJYUIc?ol\YVJ:ae0PGibGnbYN_B#d:1JLLoAE[R[7<?oNSFT=l`3;^o7"
  964.     A$ = A$ + "hABknSP`60]>dmhe8dXASVgo?Mo?4^2#[3=?dn[\b:Rk?2g7DJgG44f4_G[l"
  965.     A$ = A$ + "J[]FcgoWd^W88\9N_GW[_njT7P`91_fHh38?0Q[RW7HS=fPNm04>99Q70_oB"
  966.     A$ = A$ + "MeEGWjg7=0KC#dZ`_>3J?X1Sbk[OLm0hmF2m0nm]Q?W5hggl2;\P0\=1A[2o"
  967.     A$ = A$ + "j<XmP64Ja`nNk77?0lL8FlkG6ONSfNk]IgkNg[9gm^gUPXUQO]6dN#32]8dT"
  968.     A$ = A$ + "Qij1Ae3hmloS>jX\mgOOfWolWIoaOl7\oiOn7fOmGo5k?ocoTPXU3dJ#c1]7"
  969.     A$ = A$ + "dP#;2=IH^N#Dm0`WQOgJhcGd7oh7IOogom\on_oKfon_o[XW88\5#c1]7dP#"
  970.     A$ = A$ + ";2=IHn<o4E?0Nm7hj>GojGWmcol?cnmOogKb_mKo61Qe`_f3JAX9Qf4JdFY7"
  971.     A$ = A$ + "0aQ?We;]dB\OjWn9f_n[oZXO`Sob_l;44F3oJ?X5QV4JCCo\?7G?0nlVn]Ok"
  972.     A$ = A$ + "g:lONlSoh?B#H=l[mPF4JBKh1`eIll0OmGoe\Oh7nQVlMOggA#H=l[mPFdc3"
  973.     A$ = A$ + "dZ_G8To9WLBagmV?mY?9lONlU_l522[QO]7dR#C2]Y=l0hkLl\c>;komQ?`n"
  974.     A$ = A$ + "bgl==kY_j[n:22[ACo0G32]8dT#KJ3?#aR5Ie[ESMdQ7bn<go1nT4lNDA#dZ"
  975.     A$ = A$ + "aC_iYoPF4JBX=]U7XVd3l9OmCJ_^#hFhYkP64JaJYP7heljn1Omd7hG?RP`F"
  976.     A$ = A$ + "dDgaieI4?`kimUAlN52KLV>n\:ZcS0WG_GB;:oZW?Rjj\US;=m0SEL<FeJEI"
  977.     A$ = A$ + "_ne_Fj9oXPgagf8NW2Q=>C7OF5eiAPc[g9Y5UOec7AMMfbaioJ2#;F]JEfHS"
  978.     A$ = A$ + "=VEm07L`1Lokk?a3`gf8NW2Q=>C7OF5eiAPc[g9Y5UOec7AMMfbaiYoQ64JA"
  979.     A$ = A$ + "[j1he1ekE_jElNoM=k5\=1Q]`_^3Jadd30Ohk5nidOMQ`M`_^;]l0_TGgSle"
  980.     A$ = A$ + "C7MdABNW27YQP>^Yicdj5el7G2Z_ee7QMm9Yj[TNM:YGG?>Onm3I1?`KOkac"
  981.     A$ = A$ + "a3?4l>5hkckH7iOKO7o`Sn_7WgH5K[<f33jhW3n?fAWCoN^SCGomOToSlUOe"
  982.     A$ = A$ + "LMX_mOZOnLV?jZWGLZckPjCehdQ^eiCeg1]N4T>8Xe_cf7`30=GZk1Ni;Kj;"
  983.     A$ = A$ + "?^_<#c5ei^AWC=8ojdfV>^4iLhoANeEW`>_3kjUANPH\NTDj0ia?BjQm^n2d"
  984.     A$ = A$ + "Rfb3dYd3DYBEfNljNbcOmFfKhmfKNcQji#52kh2:NCc_jh3khRkl8XlZ;n`>"
  985.     A$ = A$ + "_3KLQ]NaMM?>[O2_`KKNm8X5QV4Jc>]P7X0_>CO:?0h#f1l7?PgOJi#52kh2"
  986.     A$ = A$ + ":NCc_jh3khRkl8XlZ;n`>_3KLQ]N1D7E=MR^n9eLNGO0JAX9;H3?#WM:m0EH"
  987.     A$ = A$ + "_h5kM:oj1_i=Y:_BBJg7]KdZFgNS29NnmMm1X5QVDh1JaOOR5NP254oO;kI?"
  988.     A$ = A$ + "K?f17hc3L`1Y:k;9]kSf=JGGg>AgMX#;2=9dVfd3ldWm2f[>h4O>N]iY9k;9"
  989.     A$ = A$ + "]kSf=JGGgJZkhJ#X5C3?`CNfc>ecOPo6_##H;lOM<X5C5?`COjYNnSdN=Q`]"
  990.     A$ = A$ + "`oeaPF<=l0?j9?Q]W_NJ_mfCbn7cn1##ScdlHJL6gGbiQ^heMlh>O=>nmT4S"
  991.     A$ = A$ + "LIdlGCMJNN>R[36_N8[_VjdDga1JAKk1:kc3hO]i52foHf?02JLVVWPRkUB<"
  992.     A$ = A$ + "^_Tc3MiEgaSklehhgCB<bUAcO=eYiii8^>X>Ol>oLVa8[oiD7XgNY4??#I;j"
  993.     A$ = A$ + "1bc[cTlj]kSN4kilNkiliaa\GfSGX#Jg?49biWCmL]l]QF4Jblfd3D^laN0A"
  994.     A$ = A$ + "_oB9HkGTmhiBBknP8i>o0?0Gc1N^W7P[9]V78ONaO7GN`^kbNjc?I>lD1?WP"
  995.     A$ = A$ + "Xe3g7h7X5QV4JCKj1^?_^?Qg??S[m1HKR<8?CR][G[^^L]_0nfg?Ul0gk1?P"
  996.     A$ = A$ + "mhWnDR\>?FR][W5[;dRfd3<2_>C0?`m_?kalG?>A6W7;afecRe5JAKj16VGW"
  997.     A$ = A$ + "Blj]cm^7Kg7oh;>\[Td^?BkiEDG7fE3FX_QFdfNPRB?`3ie?fl89aMLVNLMS"
  998.     A$ = A$ + "KG9a]?==^XV_`6O#c;MS?\mg^J8Zc_#4?dRhiU7afNPMfQgSk6?NXV]3kh<m"
  999.     A$ = A$ + "h?DIkT^?==^XV_T:nd>o9<#;2=i`fb3<b8\RU:a^3_^?hQ?<nl09aMLVNLC["
  1000.     A$ = A$ + "GDkCCS;Zi;YR?]cO22dR#C2]YEl03?\h_YMKa[kmhe?fl09aMLVNLC[GDkCC"
  1001.     A$ = A$ + "S;Zi;YR?]cO22dR#C2]Y=m0KNWk`^k3NPiLO=4VLH3deWImn=Y6GKhiCX5C3"
  1002.     A$ = A$ + "?`]gJ;a[5aHfA3Q97f0MmIF_OCZae6Nn4JaDa3\iV\M^kMKbMDh<kO7=XKl1"
  1003.     A$ = A$ + "\oF6bnJ79jjGKeWkXP^nediEB_>MVe[#>_BRe5X5]Y7H`17V=fH5IKLkKcfV"
  1004.     A$ = A$ + "OOH0LoHK]m>\=U\U2K60j6oi^oMTH#NS:RjM>c[`fo9BO`IK99MnCjn<FW_3"
  1005.     A$ = A$ + "aiE_c?Nj?X5QV4JCKi1:8m0=e9gAfOKM2K9IC3Agh5kg;ghakhKm84i?DXNn"
  1006.     A$ = A$ + "96mOLI;5JIci4Z?SdhEeiVLni>WllD#;F`ZNP15o=\HMN\K^mf7cFKc^5Hcc"
  1007.     A$ = A$ + "bVB>_SI<KYP1aT8e=19[d?a]?DS_E=_dUGangBRDo1]8dT#KJ=?#Q27k1h_F"
  1008.     A$ = A$ + "4?fHccWK;Aga=V]THhhC\jV#TEjWhf7ZagZVGjb[gnm[m4N0^VdfNPeFOM^_"
  1009.     A$ = A$ + "LcV\n]8J_iFBBkn`<l[mPFdFNP>li1FQGg=hegSeghf6bVB<MlQ=?VVo=e##"
  1010.     A$ = A$ + "i;Xh2:OVf7jbKHSgdnL391=?<Mm:Xi_Y[oWolg_fK5ONP>\X7h6[]V_WkhF2"
  1011.     A$ = A$ + "_XIL;9V>n`V7Cco]d##i;Xh2:OVf7jbKHS?ZmIB7GDGo?oiOCM7W6L]Xel0M"
  1012.     A$ = A$ + "d1K0NM6UG_UGI5f=U?g1N4meZ6a6B<MlQ=?VVo=d##i;Xh2:OVf7jbKHS?Zm"
  1013.     A$ = A$ + "IB7GDGo?klGh3PVCB3^F4OGRQf4JDKh1#mJLSKL:MoJL_hZ>5[;iRJmbhmY?"
  1014.     A$ = A$ + "]7dRFe3<`0\lS>:K9NMGa[?^i=I[`k[EFME7QeDhRFmbhm9dJ#caeN0X5QV4"
  1015.     A$ = A$ + "JCKh1jSGWQieKa6=H;ck5lj2^1__`f;S798JehYe`SLPF4Jbn\Y78ONfehe]"
  1016.     A$ = A$ + "1_?J2oNb88\6ndN#;2=Y]m0;Lm6l[1]j9\lb44f3OJ?X5C5?`eFR]DSElA32"
  1017.     A$ = A$ + "2;b9J?X5]Z7X_n4O6EWKQ5I;^dbnH922;b9J?X5QV4JCKh1ba[cP2?`eHGKY"
  1018.     A$ = A$ + "6nH922;b9J?X5QV<WUl0mb[c0lj=kLcaFHa5KbLaTT:?IMLUiI[Nm`_f3JAX"
  1019.     A$ = A$ + "9keVNPQ6jH?`e^FCV=V<_ThVW\>^bl\E_NL:]7l0L=Y]m0eVMFnePFX9e98\"
  1020.     A$ = A$ + "8neN#;JE?#^LROWdc`[k\ljkAmiS9Nc_hVW\JOXVg\bl]=5oJ?X5QV4JC[h1"
  1021.     A$ = A$ + "j]Ga_CjY[ES=3oJ#eU<CmHbLBRKNbZmQJNc:cgfDZkCkEU[5QV4JCKi1j7NP"
  1022.     A$ = A$ + "IVAhoZ9IVjcbZ67VEBLcCF]?DcKFInf62dJ#cEGZmZ`eRYR7XJEN_DWgC7c<"
  1023.     A$ = A$ + "c`Od?N7CMo4]FJGFgSAO>S_hafC?MEQVdfNPbL?#5_iA]jL_H=FUZ0\]lW5D"
  1024.     A$ = A$ + "ohmY5Oa5YSK:ZiYV6RKMB:R#o<S29jjH2^nL^mYYioHM5dL#kQh;KI?`Eie9"
  1025.     A$ = A$ + "7_Nho3PUiG32gC4^V0f^LeI4NSSao??S62JLVVWP#=?EEfFMOA]>959el>Yb"
  1026.     A$ = A$ + "GBg?A=obS9eL#kQ]QF4Jb[JC?#omcVPGgYhmACZDABE9Zo\>2JLVVW`FW:J8"
  1027.     A$ = A$ + "^e9Y8YkWhV_FmjC8e;ndN#;2=Yel0laV;G>FYYVVkoZbV\ZTbETDERj?[SP6"
  1028.     A$ = A$ + "WYiIJ9VVW:J`dj4DmD?^^a[KLA]OdE7_l5dhdMLeh3Z_2KO7BmRW^SC9h1hJ"
  1029.     A$ = A$ + "BX=]Z7HRb\9WRg;ET0?AXXRTTJLC99^iadj4DmD?^^aKjh<]O<]_2ZO<]OSj"
  1030.     A$ = A$ + "iMCkG=WoldMCGQolaUC5?`hUVTEJbb\BUU<iTQTbBBZaI[l#T>W7DR[Y^[\#"
  1031.     A$ = A$ + ";J;?`UTN0lkSK\BC`:>iD\RC9QgGQSYTTDScFiQ8M>?X4GCMgD\a:>Q#CN\>"
  1032.     A$ = A$ + "^ek1jV?fNhe[`hU4n_CX41Q5i4]GQa:ajYgL\^kf2N0>2?0_Nh_c_SGTg3L?"
  1033.     A$ = A$ + "hh5;9Y81Q50J=XkVD0dRmdSW7`<ML\l0Mg=?VNIi;<6oJ15U<>1Q5aCgEB0d"
  1034.     A$ = A$ + "R#C2]Yml0m`6QGgAimaXlNRP`nD\9S8l0mHM?``i;`mOSkS24]ELail6nndW"
  1035.     A$ = A$ + ":NPA6UUOdah<^TA9J[`klF19YMo4M`oGR]Y7hbljd=?6lMH6n?LmPS9?AK55"
  1036.     A$ = A$ + "D8]kWX3dR#CNI;j1^Rd3<4_n3UOD9i9J[HD5Bkn9j0]hE\Y70ab[5noOf#3c"
  1037.     A$ = A$ + "k1h58R1iE8]kWf?`og1PV4JC[i1^Bg\16L8fP3=2WQma#nNllHH=KKjh<=NK"
  1038.     A$ = A$ + "A#mSoeTcKmaKoSX\FVeWGA=OaEWLni1OGRQNf^NP[8ZKb=g^hi1jG#HGOb:#"
  1039.     A$ = A$ + "N0Sl03<PhJ#3R[7L:6<0Rkh<=NKaig?m;9l[?I5Bjn=Yd9W=?#;V6NPnjK0F"
  1040.     A$ = A$ + "omc??go#:<H04gaIJlfRPjW`^nTE8YkgTBWLfl0]X=m0MaSmblHca[KOXnZd"
  1041.     A$ = A$ + "W2jf_Y7?[7Wjn3JLV^NIJOZ;_VF?CcCD?_ZKm9^eaG<#;2=IGFb3d9?f^haR"
  1042.     A$ = A$ + "oVNQ_oJWQL:XKoVNl\NLZk?XaIjjUYmY^lJJm<=?AmlZ^eWhF7Oa0]8dTMJ;"
  1043.     A$ = A$ + "?#GM9lKhc[=nklkI8W2jf_Y7?[7Wjn3JLV^NIJOZ;_VF?CcCD?_ZKm9^eaG<"
  1044.     A$ = A$ + "#;2=9dVFa3dIW\^he2OoUagS02Rd6X5QVddo7eg:l0GegSGEIOoGKWH[1:K7"
  1045.     A$ = A$ + "gj5Dl]jl[KlZ[_1]^KM]H4kWH_NVFN0lMYQ7[8N9M;akWE?^jnC:DcOL[G#a"
  1046.     A$ = A$ + "gZc_^a[^n6dj^]9ZmC\G?iJAKk1086od]2j>^jnC:DcOL[G#agZc_Y[_1]^K"
  1047.     A$ = A$ + "KRJo4gngCGJC?0nLZB#TEPl04^>YQ70O>E98b:#N02G7Kj1^4Z3l0hc<11A6"
  1048.     A$ = A$ + "1?MY=m0hmRRP8[PEm0:gC41AFP`ZO9?0a5=B3?#c[mL1Wc\FWabGH[KB=ndJ"
  1049.     A$ = A$ + "NX5b3dbe>T78K<?dBJh188JSQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl0"
  1050.     A$ = A$ + "4^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7"
  1051.     A$ = A$ + "P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl"
  1052.     A$ = A$ + "04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T"
  1053.     A$ = A$ + "7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQ"
  1054.     A$ = A$ + "l04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>"
  1055.     A$ = A$ + "T7P`eQl04^>T7P`eQl04^>T7P`eQl04^>T7P`ea_78G^L\Nk]GF7MdAZgG44"
  1056.     A$ = A$ + "fR^k^Kacm3?#nliI3?l`\>k\cD__88\1hikacmgOom;l0C<a4\a7OLae6X[5"
  1057.     A$ = A$ + "#LA7XakZ[^H3>hPRWk7NP[Om6\iWoJ\nj[?am7Ufm81A[4lLmhNP:EZ4KZYV"
  1058.     A$ = A$ + "Bh1FNiEinPUIS>J1^gH8Q?0S3gK4l<44G40?g?dehen>`038doC?md2?`=_i"
  1059.     A$ = A$ + "]I[]f]H;^hb\iVKAFQ25H3=d#Rg_8lj6PWPPXM6XSamiPko1gk?doc<c<\Je"
  1060.     A$ = A$ + "ZaFOm=hLK^?hFR[7\hR=HU;GVE\HAam:QHPW1_f12RfAPn5<b8S`_GWA5jk:"
  1061.     A$ = A$ + "EZ8doe[GWmo1OR53%%%0"
  1062.     btemp$ = ""
  1063.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  1064.         IF INSTR(1, B$, "%") THEN
  1065.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  1066.                 IF F$ <> "%" THEN C$ = C$ + F$
  1067.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  1068.             IF MID$(B$, j, 1) = "#" THEN
  1069.         MID$(B$, j) = "@": END IF: NEXT
  1070.         FOR t% = LEN(B$) TO 1 STEP -1
  1071.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  1072.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  1073.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  1074.     NEXT: btemp$ = btemp$ + X$: NEXT
  1075.     btemp$ = _INFLATE$(btemp$)
  1076.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  1077.     BASIMAGE5& = _COPYIMAGE(v&): _FREEIMAGE v&
  1078.  
  1079. FUNCTION BASIMAGE6& 'face.bmp
  1080.     v& = _NEWIMAGE(300, 297, 32)
  1081.     DIM m AS _MEM: m = _MEMIMAGE(v&)
  1082.     A$ = ""
  1083.     A$ = A$ + "haIkMV0eLDEU7_b>9Q\#24P<12Q\_72RA6A#1G?ZSRh9IHD>A<:PA>RkSSjX"
  1084.     A$ = A$ + "h0Z7L2<X7S:P2ZP8<jX\916A9\4PX\JRB#F2[RPAU=A7GB=m__bGjZjdOmG_"
  1085.     A$ = A$ + "lZjNOEMo>WO7dT_^CGgkmm_O_kkn^_XXXh83333333333333333333333SlS"
  1086.     A$ = A$ + "hH3333i`d[<<<25<m:33S#Q^D_j0?`3d```8gad[<<<25<m:33S#1C_b``8D"
  1087.     A$ = A$ + "`d[<<<25<m:33S#1C_bXCH:[I=aSM3K#nmb^6ka5OaaCoT>9a]9657VNUAoa"
  1088.     A$ = A$ + "B?X3:N2GiE6?XodOBL]Yf1nL>m?`7X_?gBKk<b7<m:SmmD>UhMin_OaeKbCh"
  1089.     A$ = A$ + "iSWCY]e6m6VNEeTUlBN9a3j?oW5G7ATiQEkiVWOYm16M>VNEiW3HI;CL=2]c"
  1090.     A$ = A$ + "`Oh7FLoTa0SYGENI^o;o;R[34R<WSnX5ggIdL<mZb3cl4>1a7[G6I67oa7_d"
  1091.     A$ = A$ + "U^Dam_6VNEIPioVNCR?V^:`l>bSDLOME7C_:<IZo7o7R?n]:cnnYnDfL^40C"
  1092.     A$ = A$ + "_:\h0NA_8a7[JDWU\\UIjF58VNUnIBG`58nhBS16lCVfEnRYGYCVlGj;9nh?"
  1093.     A$ = A$ + "S^WmN][ed^b1<m:mQdSe<l3ChB^4Cc:?7KHjERa^MEGUhS_<b?6ojFWYMi1<"
  1094.     A$ = A$ + "m:iI?^X;BlaC6i?kngnKKJFm8VNU<<SgmkFla?6badGmZ=][^P<fAC_Z#HA_"
  1095.     A$ = A$ + "bGYhSG<TW5lbOiVVE7B6KXYGU[<Y;l25O<RQnHg]jPX]9S]cd[:6k\QA3<[g"
  1096.     A$ = A$ + "bKad\jdaAVNUgA;m>HS`P3h0>0CgZ5TaNIjENUIO\7[hao6Q7cLU[dd\j7bH"
  1097.     A$ = A$ + "[<m:_``NRW#lHNS`WYMRWHOjFVfEMbHS<mZNRQoX?Zhah6U?6fSl8V^e1JjE"
  1098.     A$ = A$ + "nTi]RE8NL]AiUIoVOcVNe1JjEm:F_AgX8IA_PG#UFg:Sm`d[j8f_?iWDlhGS"
  1099.     A$ = A$ + "Z7kc7oSGIe\bH;<mZf2[WiIX1ZRen#6KPYGeif<33QHo>aC\bYIUa6HjEVFU"
  1100.     A$ = A$ + "A`aRGlR[<JFINf=mZn5^?PU>^d`XoH17l1G9d\blLKjE=Umll>?aS7=<68fS"
  1101.     A$ = A$ + "_fG;N9;I9UJM[<?cVNe>aX^kkFlh#3SfUMIcK^DGKYINN=mZngfHH4#\X5]X"
  1102.     A$ = A$ + "BYVEVWCC_bdZ<:=D6gk`<?SVNEl#omoNaSc<<l5CO5[XDYIUii[R[G5]m];N"
  1103.     A$ = A$ + "lUQQ_I_>eC]d<G[<?KEHm:YSY<<bCFh2GHY#c:ccE5E_J??ocGlh93SlV9L^"
  1104.     A$ = A$ + "WK`[IUiIZRZG9MLTQAA1e2?JFB?Vcd[jLfkcn\5?na`XXIgGkJ3fiIUiIYRY"
  1105.     A$ = A$ + "G9MLSQQD#mI5Rcc:ccA5A_JF7ga9NlRQQd<eE^bPKNFIN6Z8jEB7WHHX52]N"
  1106.     A$ = A$ + "k#V?oULmZUN#7Tha766JSi]`56<Wi`<Of;ijEB7GHHXE2Unj#V?gUHm:k>1d"
  1107.     A$ = A$ + "`XoIXojOMl2F`2D_VEV?gUDm:YS5<<25FhOO]QB?V]ZZG=og`K#lH03S#QYo"
  1108.     A$ = A$ + "ZNEZN?3cli]TYGIWOI3S>Wi=_iYfm=<cWebVNU2lmM=oZOELdBFBkk?nLO^T"
  1109.     A$ = A$ + "GSdO^;SPM5kKkh76cHRS>VS9Xm53K[K=NncOnZL?3clI]4YG9]?_SIlS_c\o"
  1110.     A$ = A$ + "]3SKLfL<=OAGS[W>8mHIC_BA`M_Z_7Kd8;KI1gH5A8_m31V_H^cM^Z[_:gen"
  1111.     A$ = A$ + "[D_>YO6Bc4Fgj4g??PL?gCa<fXI\lU7<SG:4>jSF>Oa?oW77mgnKbK3J1Sib"
  1112.     A$ = A$ + "^<EEKFInlE2d[Tfo>P<fa:gh37OV?CLdOm_:_]#Jn?o?UgG#n^D^VUVFGHV?"
  1113.     A$ = A$ + "K1\Ne2OE_:MgkeUNLAch`?lhXo_o_Zgl]Z5[8^]_A^_k;>j_lGTgfd46l_mg"
  1114.     A$ = A$ + "fgN6ZQl_geSYBmjTF[JWN>d67oa;ohQF1SCZ:JFBK[K5[LU9ceBQnRMod>=E"
  1115.     A$ = A$ + "\^`^fGVje9]Fe\FeZ4gOfDN^WCna0];_lGNiFgjenJUg6g^l`?\:GSX6boNV"
  1116.     A$ = A$ + "?C1ZNe`Od7ELOICYVOElHo>QohODUSCl2BKKk4F`2DigM<cJac^cHXDJFM]?"
  1117.     A$ = A$ + "=e[CB]:YmQ=U;iBT?V_Ki\>;eV7U:U_HH3;>RcX_bd]6cgok;Jng3ImZI^jE"
  1118.     A$ = A$ + ";^oKWhj_NiSekE^P;8>j?oWEehT:]_hgmkDU_Hb[LUkXng=mZ0N^EL6<T>nf"
  1119.     A$ = A$ + "GlKo]9JFBKC=OALdeMMZkk?Vm\W]8ca:De[TfOeDT>^fg\U]X^eSDYm5D_>:"
  1120.     A$ = A$ + "bG8aL\<m:?alVWladnVY>ehXWnY3_J;]\j;^gk=aGX4=;gL\:B=[#C_JYJD["
  1121.     A$ = A$ + "BjHilT=^ah8foEU<6YBk;0l5\?^BKWok`L\X^\<mZVc#9_::`?EI6S\[kJLd"
  1122.     A$ = A$ + "ML7Z;o9EBO1P_h9OBeh;VcLVCQfCB3=m:Ym?E^a7>N`7<>j?l7TgNKnRhXKl"
  1123.     A$ = A$ + "6EU_HFcJF5fj239mZ9oUobRkKb`klM:O\KAa]MK9e3TBnNm:]N5WoA5i;V`o"
  1124.     A$ = A$ + "eoEQEgkQRNeH_iKFLoBUMl1L`7LLd=MCaAoYoTJ6WTQSjXTg6ETX<OAA]^`#"
  1125.     A$ = A$ + "A_BJoAUG_2^j[>Yf5efn5nfNKbKKZhnRI<kI_SNh#EG_Ja7fQ9^oXb[EihWm"
  1126.     A$ = A$ + "cDGmF;^=AJOQdfoo>Ck0>PLoNZ84d[Tf?\C<Q98O\ZDLEGELdVg\NF;2kKYd"
  1127.     A$ = A$ + "f4Ym5:j<ZkjQ3VNUR#jhD9iB_dh8bUhcl<jHL2m<:Y]9Bk;DD?GTm:<?_WXe"
  1128.     A$ = A$ + "^NU:6C8XNe#6b#RKe?KH3KX_OW2kc4c]l:^RhX7h1RSNnWgl5=lCQZGil5KK"
  1129.     A$ = A$ + "KZ9?F<NMVcLViF_mCcjEco8?Bi]o2>6if_mKO07O8bhT_og?9g9BgoY?]C[#"
  1130.     A$ = A$ + "O^KgOF6g1>5Y_Pnk7[?GBOA:fWSh8b]jK#cjEBKgK:5`MD`Kl=n6Kka6=nCQ"
  1131.     A$ = A$ + "<6Qk3d[mJCVSUT[3AIjDRi;ZmmJA:kLO#m=T7JFVNE7bTVTJ7O`?7jQNXioH"
  1132.     A$ = A$ + "4^SO8G_BOODE0j1H?E__H3K8>jaN<i7KT2FCHNdo6dZNen`LmEPM_X7Sl5n2"
  1133.     A$ = A$ + "OQ^IXAVOhm8g7W#^N_UKAfNAZi;Bhomo=i>]D9iL7fmCnTcUngPFe[TfN;eH"
  1134.     A$ = A$ + "4OmC^?6ikmmBjOWBVg4cGT`?h747MGgUjfKZI<SIhmjaBSjEJc^KSAJ2OW_C"
  1135.     A$ = A$ + "bJ2Y^6Tjke=OA2TcMFCXfj7\e67C=_kcn=S:e[Tf>g:bah^C^fLXme?lNU[S"
  1136.     A$ = A$ + "An_o_Cf;MZ_JYnn5cGT`ocoCLdjG_ZfS#7\V#OVgMC_B?SAlm?i^N5gm<?nS"
  1137.     A$ = A$ + ";G>\<OA2<GG>?Q?kcZZLH1COjC__m:\\ZG9]me6Sd1jET3;9[m7cGDgG#>\X"
  1138.     A$ = A$ + "NhDH^DlIN\dTNeLGa:4gfJSAjPa8\>4jSOVNUln2YGKN;H:_VGCOWA7OLOjX"
  1139.     A$ = A$ + "9m:Y][fHT>L<bgmkVDcXBe?a=OAMOaUMI9e<ZF>G>=P_bSUYGISAj9mZkon="
  1140.     A$ = A$ + "m:=h;D^NU_ZOD]XG]h3o`5gV:mH4b=Y_nQg[LO<2[7L[K]D^N`PcGLiG^JG?"
  1141.     A$ = A$ + "8<eJjD^nlNI#_JDgmM;^=Eja8P_n9_oL^3mZ7jQ:UjE1W_PlGYdl]33OCKZ_"
  1142.     A$ = A$ + "l^g[eRU6d[V3WIC5HCe`HT]_m]gAS5Jf?lND8SAX>5iNOGZjDdl59XQJg]=H"
  1143.     A$ = A$ + "b_Qg#?gK\dPNe`n=o6a]UJI<b86a8jTQ3=m7N?:4m:>3QL?]D2[oZPbG#N4i"
  1144.     A$ = A$ + "<4bMlURe[6B]H5joXQ^NUdfa>Re\VL?n;8jW<lMjGiE67mD?EY\nfCSjm5^c"
  1145.     A$ = A$ + "b9mID9l3M0mJ_lCJmZUn2OQRK3k88VX0R3I]nMj?lJ:Ta8Gh5FokdO^WC^_C"
  1146.     A$ = A$ + "_8VkB8h;hL6#OAFbNUAKB_FkXB[G9]m[[X8R3okXbnQ\;gEJh<fZ8OAL1oiI"
  1147.     A$ = A$ + "7n2=d;bJCfkU_lnZ[Q^=_kVNU^7STVcol?oh]^e]6_]]]]h=^a=6?^a=^Roc"
  1148.     A$ = A$ + "aojoJmm?oF_Ei[g71l3HganSO0o1n5AR9LnROl?>Y>hDL^[L<T7kaj;7FMkL"
  1149.     A$ = A$ + "\TD_:4\_=UZlmi5S?0=d?TQ2JmiZ4W_#Qm3iFA_DkXRZGY0KGGAA\7eJ5gJ1"
  1150.     A$ = A$ + "e`m=Ag4gFV`i;Dfm=a01e?;W?W^9_kVNEGbh7_la[5=SNde[SQ]\UTnGRdnQ"
  1151.     A$ = A$ + "ZZNEJO1md7YcSH7`n_okOOejNg\V#C_Z;Y:>7;G?Tij^>MMFe^ckDNKSTn2>"
  1152.     A$ = A$ + "oVB_^l>PA_^eegL\jVNfPDjEcQkUG5Hkj9T>V]8id?mjWkSKkfdE]9bWSZVV"
  1153.     A$ = A$ + "EJOA0D73=2jEMC_B^[7oUjeEiVKUS7mAU?^]87O#=RnCn9aAojO]nfklZdlM"
  1154.     A$ = A$ + "?Wc9[_#;O_A7`N^ZEegJ2Gh2GH7]V`<_?VNEW1SIckcN_6H_f[jW_iOi_DUm"
  1155.     A$ = A$ + "MgnXZj;Tf^g5<lkj^jZm9<ckSYGeiPVUda`i9[NeecE2e`0ec^fVKEEaG0Y["
  1156.     A$ = A$ + "W4=k;J3LkCXYGEP`l<:ceSUKl1WE`kh>BbER6WKEE`G<VaD_?9ZMOAKPKO2k"
  1157.     A$ = A$ + "TkDe<_75TNE#dWfk4HObXF_U>NfgLVWImiFm;n59W]IY]eV_8>jJ^V``G<0l"
  1158.     A$ = A$ + "?lJN=Mli9<ckA1YG=A>OV:`Ni=hkh:KeImANTeo^LVK5ie=0>ooUBO1TNN^\"
  1159.     A$ = A$ + "WPQP_H0H<eNNH=QMBOM?ckA1YG9]M:ghYOjTjhCjHkNUA>bjS?hNhTljZUJ]"
  1160.     A$ = A$ + "Z:k;hkiaG`cVdfG?1[9\C>ocINm5PNed?YCBLKD^Qkkf;bnUP_I`3^nn?aM`"
  1161.     A$ = A$ + "9mS_#lkb;3nRgkk]^F5n2Za<NV2hLFe8DG3LOZbJ2eXNehi\T[0kD^>>QN4l"
  1162.     A$ = A$ + "^\;b7_gY<lQGOlajFGbj>2\JW^dh;nHO\jn2n^3l5l\4ZnRnQAMEGEOkA8eQ"
  1163.     A$ = A$ + "U6e[TfnD8`N<CmOC<Vdam];;MYIeZNT79iI#JKY_l57bQ8_=^MiKn=[GO^h;"
  1164.     A$ = A$ + "nYodTWQ0^f5J5MBMHUieJjEnML2Wa^A=:iSo78nPO`jJE\oC\oJUYa7lLPnK"
  1165.     A$ = A$ + "1d;[kILn1dZh>54O1Of;;nRV0kAHkfGgclJ=m:o2cMWmMVNYVdS3J6;NaI7O"
  1166.     A$ = A$ + "`JeY?all?_lf>O3SgiiRW_G`;#NKOSLFWEfeoAo=Vh6n<GReZP>Y^AclJ=m:"
  1167.     A$ = A$ + "o3ed7WI2nNbGj;Ena5Ya=nPJFPc>;g1TLG5EF7O`c5?OlL:]]?=oSoSem5d?"
  1168.     A$ = A$ + "[X_hC?]RhVbZ_85Y[KDC_B9#oDSe7N;gBLdGm[:gHSGl;>kgSCO=ViLlH?F`"
  1169.     A$ = A$ + "G_d]5llac9?_lLOX7ZLn2G=PjdYH?0_gk=9>Y2XCi0m:gMYj0=7[<_FC_:o7"
  1170.     A$ = A$ + "W#?MPa9[M]aA3MX5gH3ngb=f`=W:nNl=^ahX]]]4mdb^FEJO1?_lLccoQOh5"
  1171.     A$ = A$ + "[>5n2bUFjL6BO\Rh2VCE0fOHj5LjE]CM^WieVcjEUjJ_ZMaYKAM=A]omSnA9"
  1172.     A$ = A$ + "ca9?b;?_W=ZAA=7N3g#bH3b]F9[NNjHO1?o\f;\7L?cDDn2bG8oKQoWh0fOS"
  1173.     A$ = A$ + ":V>U3Z1;bQEkdKIblJcImZY`gYX0kSh`h4>KmL6GX76A<k5OanmkiimRkV^d"
  1174.     A$ = A$ + "S?XgibHB6Kn#?DbL<Z#[kXY`co_kgUH?^aK\hl5<W:ngbe3[Z2[5_OHRWbYd"
  1175.     A$ = A$ + "gL\#_JPbQEVGK>[G=HZm#5HOD34OBOg6][7l1SSfdVBfS>f7KRW9^n[meRSN"
  1176.     A$ = A$ + "[_eTLeC_7P_WVjjL\S=IO^No_oTOWdOg]K^DlN#mk`k9_gD_Q<W:>K=Eda6]"
  1177.     A$ = A$ + "dGPnMSn2\OH7aNRMnOjO:a^Sm7o0n3l;hO`?eXOXol5l_1oKQo_Rk;6dcolk"
  1178.     A$ = A$ + "hLiX9m:Y];Z4RE1dbMen0iDQlIl3n1ee^8ghXO1=K<1oi<^Plfb[QLCak1S="
  1179.     A$ = A$ + "hmd]f_ZnlYjDO1f?\SH?a^RO0kL[l3]S_`M^1ZhJE>#_ZMj?bINMVNUlhb_5"
  1180.     A$ = A$ + "OG?gGF?iCVD_PLGoA?MQebam=7e>?e81m1Ykj^BfSnkknBfg;N=lMg^ekIS9"
  1181.     A$ = A$ + "jNO1f?gl^`^blR`>_i=WHgMn1n_hG`oPObl5M4XGe>WS`<_^LD_Ja7fQ9^=9"
  1182.     A$ = A$ + "ha=n1H=MPko_mMebh7<OQGHZedYXVAYgbX1mZI]ZE9^=a``#W\g;OikhnW#3"
  1183.     A$ = A$ + "jEk>[WG1f5333maHnFO[n>gcLW4fZJJ8c[;7e[6=[eG1f5333ma8^eK]]jC3"
  1184.     A$ = A$ + "INMiXNUdf3333M3eh>kAXYGIHHXMJWn:CVGSYGIHH84LVLXV6<m:333]SYGI"
  1185.     A$ = A$ + "HH4:d>m]_<_6C_b``#8LjE]j<4VieHjE6662AkdWAclJ<m:333Q`d[<<<25<"
  1186.     A$ = A$ + "mZ^Pgck9QCl4CHe[>>jMm^RS>QC8>jh?nhXSkhRSN7_Sh8>?T_mgNLdaN\aA"
  1187.     A$ = A$ + "_]gFLd:GILdaL<boiG[#?a[EaClg;mWA=2WKj>ILi0<FEcPN5eh^YGe1d[a6"
  1188.     A$ = A$ + "Lo;IW?o^gVJf]\#ObZGS9Mm>2UKK=mZ^PN=fPnO4mVM^g0DNlQZ]UF?#=1^["
  1189.     A$ = A$ + "LjeHBjAPL?Wld?]l??]0C_Z;XGS=^X;:Y7jA_7^:g;?kekTdU\TZeMfCo1mm"
  1190.     A$ = A$ + "_N=VlJ^VTkdNjOPBold2<mZ^PN=fhSlARSnQo`TkA>VSPd??QX=<=Uik_ef1"
  1191.     A$ = A$ + "j9fmZ=Tnd<g]5dSJUniY5HjEM1mJ\1iR7m:^SVZRjE3KHnE_RkZ?^[[ZRfBP"
  1192.     A$ = A$ + "kYBOXGamLaFgZl??]0Ko1k2jeHSU]\TkYGjWjE]kC>OZCUV_dG:i>2\:>?[S"
  1193.     A$ = A$ + "jXlSNejGObMFVd??]0C_Z;XGS=fkm>i>nSkL0^[VTni9T\M]2boRk>UAjWcR"
  1194.     A$ = A$ + "TJSOkIK7gG?GoeWXi;mcC;`d[j2laH;bi0mCEbG\d??QTMKPhN^7e_7GZd^R"
  1195.     A$ = A$ + "Ne6f#bN09mcC;`d[4:nPkIL^KWZBg?\5QNe=Oc9k;OEJ>FnB_2K7gSdBold2"
  1196.     A$ = A$ + "ddiMNXQBm;kShS;iBRS^UK9iNWCjWW#b^e>fEVW0gk[E5=;OHgh^NQk8a]]="
  1197.     A$ = A$ + "iONj76L]?KJZOb4<g?>n8nPkSI^?Oin>EjWWRPCmD;6mZoioiTi^B=>DEf_`"
  1198.     A$ = A$ + "NeV=lQW4?BM<cm:]d??m3LohXYnegnlIo\RKC:Th3Pk\LfoHZ=IYON:2NY_d"
  1199.     A$ = A$ + "RA_JNc;i>NWkkJVSUd?gQ#lhRGLR=SmoiIN6iONj7VhonoNOjEJYo]7<g_cn"
  1200.     A$ = A$ + "HL5i;HM[CmeC\gH83YHd[6lPC\]olO^Z7ki=nLO^NgVM6WAbLBi<iXhlYbmk"
  1201.     A$ = A$ + "\V^OL2VL^__kK_7S#m^L5GALd3nPbolD4<bAF<jE\f6\]\g[EQeJGK^6N9FT"
  1202.     A$ = A$ + "m[VJ_BakG=k=XYGe5LSgH_7SLh7NbL`IN0EQl2CodY8d[HMW<nSL7G5F[]?\"
  1203.     A$ = A$ + "IH_hlF`I`Gae_\k\hXUkgiPA_2VlTk]HT1=XTLHA==D5b;lUMI5SNe7n3W<n"
  1204.     A$ = A$ + "kf^]b_N5[g]G]GSOl9f[[mJC\G:>FdEkEXGefJ8i\NeHI_XEP]I0Qi5iS_GS"
  1205.     A$ = A$ + "J:fb;\o0K:i_JCKZlGgXCLRm^mRLGQ=cEK=:M^nSLm[_?m:ZUQ5]X5Y6mZY\"
  1206.     A$ = A$ + "Ve8^]Y]YGSEXoSBOl`eonTniAkf[fE_RjRI;KYlGKKnbN1^JGFYaQClD>Und"
  1207.     A$ = A$ + "[XF6dTNE#]V#O4_`nb#=jYhiQk=6eXbG]ZA<RTaNGjU67mh?Nio\IjCmMjE8"
  1208.     A$ = A$ + ":?gE0eb`RGlR=m:YRGXN\YV6:kS]0>W<iYNeIMF9[5l:_bTm6\\g[6lUN5e:"
  1209.     A$ = A$ + ":kC]R]G>m:fK`U\TUHjEB5_`H\ZB]2i;KFo=^cES8\gP:N^2N1OYmS=c=7OU"
  1210.     A$ = A$ + "^F#`YGA^fKeI7dd[J1CI:mNl2e;4ijDiWcD_1eg3mG?OZEA]XjbcNEil>kSe"
  1211.     A$ = A$ + "FCnjI]Pd;fh^4#jWYF0JEDKk;LQ;\UebPYGe2>kcf?SgX?YAOM\\?63H=7\_"
  1212.     A$ = A$ + "MiaL[HM=EUn9S?\KL_cA=e#]<XhjJ7LjET[MC_Bhh6V?NEH=<>#GVLfe[eVM"
  1213.     A$ = A$ + "]HhMXEA>[Z:m[?OD73>MNFoL0D3P^JKWLGIjEm0_XGD_7g#M^CMHEU^[GXO["
  1214.     A$ = A$ + "C_\d7c[Ri8lCn9EWnQ\?dZVi<C\M\F#>Wc:?^;mm<Qfd[Va9MBRKO:dh7>S^"
  1215.     A$ = A$ + "E]NP2S?hIUiIMWgILd7mS>`ieRon?d7Z^>5iNQjVWGOEjnV`Gc]28OODk7Bo"
  1216.     A$ = A$ + "<e2f[E]ZfZ_G9UNE`=7;O4o`L\Hn1:nlVV;`jg#WVa=lMmTC#jQESM\9k51W"
  1217.     A$ = A$ + "k9nooEn:e7SidZhgWGGEknlbGjE\o4Xe[lnTY;gE3DO_BDm:U?oD_7o0To5>"
  1218.     A$ = A$ + "cYBolDdP_6MJZI:Z;MbU7em?m<0Vg9cQRo;gA7lWcO?oNlkGUF3]?Se#_:4n"
  1219.     A$ = A$ + ">bJnFgJ1WolW_Je[V8eAYdfZR>6Z:]?Q=9^\_ecanZclUh>;VN23i26m9n_D"
  1220.     A$ = A$ + "WJlWcO?oNE]kSNbaY?e[LiP#akccHZmi<miLF[jE1eJ2I<S?RQ^h;>>jV^YZ"
  1221.     A$ = A$ + "E_7_EfDFS7P^4oGncZbf5OZEij7g:OoDMe9:[5LP>7>VNE70iJYGSSXnCY?4"
  1222.     A$ = A$ + "aL7ZBiSaXm`7JE\W5XGaJ\9o3:N^E#WL>L<mZ>0O=7;N^Y_dbnM9mcTQNheo"
  1223.     A$ = A$ + "jmgL[0VK5WI#5?g:`YGAM]?#W37C_Z3aGcG?#RU<:#lE\UK_E_kkFmWIemLE"
  1224.     A$ = A$ + "[J7e9:[5\MbMUTjEk:m8B5Hg:lH:ZEKbeLEYNR<6HlYNUkn3Bck;HLmiFaN3"
  1225.     A$ = A$ + "f>ee^djE1gL\leJ21^kLX^H<=;3OZEaI1h7mSBbgPRWonX[5okZkZf]>A=mZ"
  1226.     A$ = A$ + "^P3i#lC\5iNWk[4UO>D=bIVcLlCl4g;S^l\_a=Znn]fnLH7f>F;h0MO3JjEm"
  1227.     A$ = A$ + "0nL>FD_=Eejab81O>g:h6^QTJ4EiaD^e2BMGe>m#6C_B1aHOZ?ELdML79ki\"
  1228.     A$ = A$ + "bS_<b1XnnmYNUklg40gK#Y[kZ1ZO][9mZiLd7]hf^>6OLo4j0k?mb_ZbMXSA"
  1229.     A$ = A$ + "2_jG]oRQ>eC=A[RN7cCnTZ_V[0G^[JWn9ZVd[2biHice42\gcEQN#WAMlIlC"
  1230.     A$ = A$ + "jl\[hk\;7SmL?gM\_P]CoiCKjEk>fK5H75;NSe5`mGREckE3#CaWJE0kgLPD"
  1231.     A$ = A$ + "S<YgG`>Y>6dRNe1L#7Thf`>VGl;f_JFdSg[JmRPZ:LgOkKm:fkV0Y6TC__P]"
  1232.     A$ = A$ + "CoiCKjE1kJ2Ga:l[V5WCWbnM0JE7O6_#]ehZ?DdZhNiEjW_f0gmhLW^_PJB_"
  1233.     A$ = A$ + "JXTW#5H;k8H^gn<nSNnk_jG54O7YAGR?SGLk98[5Tm4<0F;h#NRW8cmRJXZG"
  1234.     A$ = A$ + "aWKY]UR7o1oKoKZoLOId5LNWWoSE#_RNLh?kW54JE#jk][>MO1eTN5\XGf;C"
  1235.     A$ = A$ + "LkI73a9SKLn=>TJbbjAFU;lIl1g=Q^ce<mh`WjYToi[=HZeVCBgLN1eZNE#>"
  1236.     A$ = A$ + "7;dDh\JichaMMGC>KQ1#MdHd6\KkVOS?^X;ZnI_Qkc3UO^VMhZADbMEgTWM]"
  1237.     A$ = A$ + "YG]COF25lMmH1_ggKein[Z<S_S;0GN[XoV`i4<#V7NjkLn^E[BKjE3>DgO<>"
  1238.     A$ = A$ + "74n>^l[oe]JL8TQcM\_S9>cc\nN2n0?#`4K<XWmIcL7>k]id8\NE#^V#`M7`"
  1239.     A$ = A$ + "hkhc=]YTmnaVWEH1gAIialZL[3dE_NBoLfVTnl=g]iIGSjE`Tn6O3a]_M5XY"
  1240.     A$ = A$ + "hkHDPkf:jk<VVEH0g7`iALPC_j7oS3Zc3ah>kc^[kM<QPNE`>7;0MUl8FmT?"
  1241.     A$ = A$ + "iTcbJP<oo:;iAM;hdZ8WE<g:b[I0egdBWWm^il2ZMmZMjcD81eg`_hGT?a\["
  1242.     A$ = A$ + "I=FM>XInfOkla_oUobe_S^H^ELfh3Tj]2jVk0W#C_JV[JERKWkJ#?IGfUl9f"
  1243.     A$ = A$ + "mh?nhX]]=CcBKlaohiSon<>Sjc]jV_iTnbN0ikgkE\R^j>U8dd[2je42DSji"
  1244.     A$ = A$ + "Al;LD7U=?;=aaMLiSOn`>\ji\Rm3lN_gPk\?dHNf;[jE1_VEN]OQ>Vh4]lIY"
  1245.     A$ = A$ + "1VdTb?O\C[Rn=d]N[1G]]Tnn_IncOnNA[BcjEkdW]#TlDc2^_k[nMi^d?[E9"
  1246.     A$ = A$ + "h>j>_lY_WgCmcK3gmK\GP1HoLdgi]:4d[f];ob5g^gCPF2W;blDcRJ\=PboJ"
  1247.     A$ = A$ + "`3WahldOjVG5angd=UDoM1fIcJGoNO?_LfV3=m:V3i^Aob#1nP^6Rehl0VWa"
  1248.     A$ = A$ + "hSH41eIc8HITS\HdZ8OE\?c4g48eIUSAOYGJVN8Z_bKEXXG=ggdKBLO#?1aK"
  1249.     A$ = A$ + "nn<AKccB6bCogKi]DO_0I^ELoDZlkmdVaDN5_RMXGamO3SQ[:jE>=;Ym1m<4"
  1250.     A$ = A$ + "cAOoXVO<ge]8WI1fg9[NbKOfTWLmiFM]GKLdmL?1kmlFSgEGnD[:4d[P178m"
  1251.     A$ = A$ + "jeF2[GSLATgankkn6TO_\JYfl4bMOFje1B?]RhT0do=XJaM>m:fC#OVWm#B_"
  1252.     A$ = A$ + "ZD<7;PH#^_17lPcoa0\GkXc7PamZPmJ_bOO4a1>]Z[nZCjES1FM;h`e[SmA?"
  1253.     A$ = A$ + "icd[D4Lf_X?]WgS5LHiQ_cYXl=>]:^o0YOFALAP^FnY=SI\SJI??bKE8YGEj"
  1254.     A$ = A$ + "d\8VTcFQ?_KW682PkBCAI][]hl5hgMJEDWELGS`Jh3D]:`=g:j13mJ?^Z\XG"
  1255.     A$ = A$ + "]g4CY0OSGPhC>[m5eH4Pk0HK?4gI:BO0TF[RJ2=`kU\kfYOjmdM<OID_Zd=7"
  1256.     A$ = A$ + ";V[3J74[VWW[Snkkg_mK_J?O;j5R5AN4Cc4V#fe0blZ`o7`O7bDNe_jL]N[2"
  1257.     A$ = A$ + "Im:HX\g9:`?i5#_PeYEdccb1k7E0omjM=GaE8Sm>]F5e1=nm0OMjYca>WmVl"
  1258.     A$ = A$ + "D[:4e[`N<Ali:`Gi=#cPkjT?kWEVaA`LWK#?^I0IncG>K;gO8>]:jSE<gFlg"
  1259.     A$ = A$ + "1ngE<V;h2bmjG8de[LJFBk[l>4kbN7NGgULS[L`MLGX[MAO=HdSFNKYkngRj"
  1260.     A$ = A$ + "FWn]7[3]TdO[M[3dWm;VbXN5\;d?PDP?c[P6a_igDlicZoPk2f#CgjB_dhXa"
  1261.     A$ = A$ + "?Ni]M#jlZC_<n^_k4oKXICK23K;KY#G7HX[GQmIjW`98^Ock#\<m?T]^Ei7_"
  1262.     A$ = A$ + "e<nROAm<NKcK>>Ji;GNKBS`I<8mjoh^m2oIPN6KJTmjH>V2OMPU1mZBij21f"
  1263.     A$ = A$ + "_8b3;iiHh3GnaOm7TCXRn\BaoN;LQbo\gO`gQVnlel3oQ9eJGPWGmdhdZlIO"
  1264.     A$ = A$ + ">^\[GiHJT;C5h3c5X_7cnQbidXFLQhS5kDHmT7bQ47mYodaAO[_EB^K8?cTo"
  1265.     A$ = A$ + "6V[1SQOl7?i?o2_`TO_Gb;9ie9mWm>U5\PjjDT[:bO6mJ_Bfm7YC[b=gZRD["
  1266.     A$ = A$ + "Z<XGQmJHlmG:`GjMhkSILmCl4igm^SQO8M^ZXN9X76cjj3\N]G[HoZ=_fdc]"
  1267.     A$ = A$ + ":?jo2UMm:WVUdnb2AgRiVXQm?dXijDTCMl?hW2XkOifRJ??iE?I_:ZG=J^S^"
  1268.     A$ = A$ + "UfWVgJF\>:fO9jC^J>7>E1Vglb^n?ZoCl;hO`?EBbEUSY=mY_SjG`M61=mZN"
  1269.     A$ = A$ + "CcRJ0AJoJQXKA>WinaQa7B?^]ZaaN\=GW2oA9DW2B_6#jm2iE_RYZYGEjGGX"
  1270.     A$ = A$ + "3G^ZYg^m:OUb?6^:AJ]:ZEQKh6Bl3h?:AiZZIjE^J]ZXZ=db\NU3\U3Z<d?B"
  1271.     A$ = A$ + "K7X^78GlKI;9SQ6b#TOlLI4\[Oe_JMM:ZC1^_Ua^COf8P?_b]267idZBOGg8"
  1272.     A$ = A$ + "UFEID_ZB=?;PeO`nUcMY2eT8mokCmDUO<NIP?aW8klYHOoXVh`>G1jCn=k\<"
  1273.     A$ = A$ + ";YFEID_bYI]7Wci8^o^#Q_SWiEbMXj?mW:kIW^<`WlCV]O:`MF3fEbWN5X?C"
  1274.     A$ = A$ + "?ne^fLo^S`d[bZIEfSYJ:lMnd3TY><Im:GceTLVKUNlO8PCOb=O:Z?1\OH7a"
  1275.     A$ = A$ + "NFAj]dYG38WUI9c_NEB_JADCh:`oGh`H:Z=nWiIB6[aiGSi7XicfSTLJWFF]"
  1276.     A$ = A$ + ":bS>f;\KHo`>Rm\2XEUF_BC[3\\[Gid\Z4eh#[`=O;b;?kS5eY6S5GcJTGW#"
  1277.     A$ = A$ + ";JD^mjSiBMMGGbJZaNQM[TWSZnC[RJG`ggUlVNEkYI=6>cY:8F#<HN1<fSc7"
  1278.     A$ = A$ + "2g1;LFAFojSS^T;9>jMm^TGkX89miAfEGjD3EH?hN:m1O`Tml[R\f_d<Z[jZ"
  1279.     A$ = A$ + "bdKSedj0[:jE>=[5GEGKHSh>K?TcH>g8<6mj_nTko>VSa7l3:_VR?QWW6c;5"
  1280.     A$ = A$ + "?Wllbc=?oonOORmPiBEadXLT>WE\6`R^_;HjEIe[Zl[;\ALihjIOfhX7jQB>"
  1281.     A$ = A$ + "?e\FXJO7KOSWO5_2ieJj5njOmMNNDlLac7?Wllbc=?o\gZEDM:7YcI5JEJKM"
  1282.     A$ = A$ + "PE9m:7h3V;m[454OX:Le`5WW4b]<SSY>S^aK<inVRm9SakGl577=SI8_FT3f"
  1283.     A$ = A$ + "o0Z_odjBYW35O^i><SW3j]WlLaJRMmSh:^65<eJS;J<WEJLNEEAm:KNF30>M"
  1284.     A$ = A$ + ";Z5b]]]hX7mACj=EL_CA>0AkRJkVjA2=QcmLSSFdR:>m9^7bhLNONWg>[AiZ"
  1285.     A$ = A$ + "C:dXhc9[eS?gTkLN>HND^JlddYf1=Nf0ejlZZRjE>=;bShDn8O4aSE22Hl=i"
  1286.     A$ = A$ + "kRL#oD?EbHokonCda8_m\f:fG=j?MToNVG3c53m\VYYd=`k5PNTKNCl_WKol"
  1287.     A$ = A$ + "hc1md#nLai>V?WX=EBjo`i1kakkmU9WEL?WZal[Gee[LJFmE3lUYk;jR4gl`"
  1288.     A$ = A$ + "8_?X;#^Z9WeDCUdk4i^0QjFj>_chXKkfBZQ2jQ1<W7dGhNRQeY1Xi`oUo<Po"
  1289.     A$ = A$ + "NnmhgWG7_NjCklnaiPQgOZaLG>biOOnLHcKZ]IlWiI^3]:Z7DG_\BkJEEEm:"
  1290.     A$ = A$ + "WV5iEL2\V65435dhd_Hn<T3OdAHmGXY#o0VJIbYUA>T#gi1NPTi3iPoolWcO"
  1291.     A$ = A$ + "?oNlkc[SG?iLRg?bk4_oVnDGch>Wc9Hf;#C_JWe\HmjVVUAEPdJEJXg`HjEM"
  1292.     A$ = A$ + "WVUEKF6UM6oWoc7dc[bd[bZIai?ObOh?\haE66nVdgY=QjlZ<mZ\PocVWUAI"
  1293.     A$ = A$ + "S1m\?KYHNEVNEFLk?2e;g<>RS#lh<3SNUmi#>4Eeke=m:o[IQodVWUAIPdc["
  1294.     A$ = A$ + "2]:G][KjEboLhKM;d\X^DT>Vc`XC9MnZ#[Rhh#=OEVNEk[IaL]61eZX2R1=<"
  1295.     A$ = A$ + "J76nVfDVe0Zen2SYGUOJF<?JYS3=<68JLO09^]<YEIjE]WV5cUNF=J[<<D4k"
  1296.     A$ = A$ + "G=]YdJEL7<GFF3XYGeihZgQAaiKC1aW66`8GojgYk72=goZ<mZR3gj3WU]n#"
  1297.     A$ = A$ + "35#EHmOVNE_[IA]`cl]U>NeXjBSJEUeeoIjEnAc2XW1=KK^F658CKfcNWZ1d"
  1298.     A$ = A$ + "#^Ne=mZRCcb]gQSTNeT2RU=:g\;KH3IbE5cYZ<D3XVNEaZKag_aL]6j3o`R7"
  1299.     A$ = A$ + "CKDnPhZdjD<_:RgZ2[ocd[b7=;V[5OOgTinlC1ah6U3fcSkhbT[:fo?Rc:ki"
  1300.     A$ = A$ + "Egd[:HM[E^BaSe=2GB[AU>WjEEM:C_:Od[LkO8WI[Y\lU;NL_AhaTOc_i<JE"
  1301.     A$ = A$ + "\n?RW8^Z:U[:C_ZHe]LceJo[moFja06:W]_mhY^h5W9?E<W:CW:;I\IVNUG9"
  1302.     A$ = A$ + "mL]VTMoQId2J\W:`iDVhVZnjoJT<f=C_bkhnNAgN8>mJ<XWki4OlQQl#L`na"
  1303.     A$ = A$ + "l_KX?EEEgk_fQ<f#C_:g8mJ4YVIHONfS?f7Cla<65?kn7mS^CiWbE;EV>E[9"
  1304.     A$ = A$ + "S]dd[bELmj1V[5aWXI9mH7SRW6gk?R3H>E^jDgd[jObH;=mZ23gL]875T[RA"
  1305.     A$ = A$ + "OiG^hSS<b?`oJiXZgad[TQ6GO8a^\^0Y7GIhOJLnD^nnIEXO:hK<m:i9mj4i"
  1306.     A$ = A$ + "nFRhiMk<>3a7WIdmPo[IcWbMOJIiYZk`d[d1Yg7ARY9fNB__gWhSk<j<6nVg"
  1307.     A$ = A$ + "LldVi<kgiCIiXZg`d[d7^iKAl=JGT?fnF[hfg^hS7=J2el;=^V?KnDi3VNU>"
  1308.     A$ = A$ + "aYIAn=H_SHo4AcJo]n4XZHJcI>kT>U[_DU>oDVFUO`d[d?YG[8S1H\0ciJo["
  1309.     A$ = A$ + "]^3Y7_FeHdGiE6?=nNS6dX`OhdX\elUOHjEQ3^iLaIlY_NKJ]eK`HUYL47Qh"
  1310.     A$ = A$ + "SS[2PM^Im=1l3h?`_hFgWYEU?HjEQ9=CkRa>XO]G_egZhS];3PM\IeRP[g^P"
  1311.     A$ = A$ + "MWekIiVZh`d[2GLO?^;gl^J?eYKm?ljNMR?V?41kFcbO^CW2kLjLXKJE57VN"
  1312.     A$ = A$ + "EiPdJG^J#]Am;bkb^MjW^hj1J2\7=Z=UFObE3jF^ce1VNEiT6e_Lme6giFTe"
  1313.     A$ = A$ + "e`HB6Kbi_MHobOYhJ7i9llehi<^amd3]9GoA0kEjejIJDj0C_ZLSK\Vk\ohj"
  1314.     A$ = A$ + "[=^JBe=g;WfenN`7Ll#OT7ALm5O0?7lldOJD^i#Q65f3dXJ<WiV>U^`d[ZNT"
  1315.     A$ = A$ + "N^G^c1T[fDKfl_Bc4?UCY_k0MYeRPan=oVakiZFECeSJV^Tk^JPWCGM7HcO:"
  1316.     A$ = A$ + "\`d[Zfdhj6KVf5Sek?m;7CJe[>NDGmE7?d7h1lkLTZmn=n?oW__goFY;e<m9"
  1317.     A$ = A$ + "gLWLi8gYAI[c;Lad[<J6=>7\dJI\NB6oSV6j1\^BW^FJ]]6YMdKJDg9=^J9`"
  1318.     A$ = A$ + "=G9GnVhc1hbkDcdT<MYb1VNUa0AjalYe_LJHXAhf?BG>m1dBLjI>==7>MWdT"
  1319.     A$ = A$ + "n_gmJL_7^eaak?jBl_GJ]YVY?IJDU?<m:3OASJ5=CW[CXoN_Tnid#><m:33S"
  1320.     A$ = A$ + "#1C_b``8D`d[<<<25<m:33S#1C_b``8D`7jE66665>VNUQQAXPYGIHH4:d9j"
  1321.     A$ = A$ + "E6666666666666666666666666666666666666m;oo`>%%L2"
  1322.     btemp$ = ""
  1323.     FOR i& = 1 TO LEN(A$) STEP 4: B$ = MID$(A$, i&, 4)
  1324.         IF INSTR(1, B$, "%") THEN
  1325.             FOR C% = 1 TO LEN(B$): F$ = MID$(B$, C%, 1)
  1326.                 IF F$ <> "%" THEN C$ = C$ + F$
  1327.             NEXT: B$ = C$: END IF: FOR j = 1 TO LEN(B$)
  1328.             IF MID$(B$, j, 1) = "#" THEN
  1329.         MID$(B$, j) = "@": END IF: NEXT
  1330.         FOR t% = LEN(B$) TO 1 STEP -1
  1331.             B& = B& * 64 + ASC(MID$(B$, t%)) - 48
  1332.             NEXT: X$ = "": FOR t% = 1 TO LEN(B$) - 1
  1333.             X$ = X$ + CHR$(B& AND 255): B& = B& \ 256
  1334.     NEXT: btemp$ = btemp$ + X$: NEXT
  1335.     btemp$ = _INFLATE$(btemp$)
  1336.     _MEMPUT m, m.OFFSET, btemp$: _MEMFREE m
  1337.     BASIMAGE6& = _COPYIMAGE(v&): _FREEIMAGE v&
  1338.  
  1339.  
  1340. SUB RotoZoom (X AS LONG, Y AS LONG, Image AS LONG, Scale AS SINGLE, Rotation AS SINGLE)
  1341.     DIM px(3) AS SINGLE: DIM py(3) AS SINGLE
  1342.     W& = _WIDTH(Image&): H& = _HEIGHT(Image&)
  1343.     px(0) = -W& / 2: py(0) = -H& / 2: px(1) = -W& / 2: py(1) = H& / 2
  1344.     px(2) = W& / 2: py(2) = H& / 2: px(3) = W& / 2: py(3) = -H& / 2
  1345.     sinr! = SIN(-Rotation / 57.2957795131): cosr! = COS(-Rotation / 57.2957795131)
  1346.     FOR i& = 0 TO 3
  1347.         x2& = (px(i&) * cosr! + sinr! * py(i&)) * Scale + X: y2& = (py(i&) * cosr! - px(i&) * sinr!) * Scale + Y
  1348.         px(i&) = x2&: py(i&) = y2&
  1349.     NEXT
  1350.     _MAPTRIANGLE (0, 0)-(0, H& - 1)-(W& - 1, H& - 1), Image& TO(px(0), py(0))-(px(1), py(1))-(px(2), py(2))
  1351.     _MAPTRIANGLE (0, 0)-(W& - 1, 0)-(W& - 1, H& - 1), Image& TO(px(0), py(0))-(px(3), py(3))-(px(2), py(2))
  1352.  
« Last Edit: August 23, 2020, 07:53:04 pm by Dav »

Offline Dav

  • Forum Resident
  • Posts: 792
    • View Profile
Re: MAZEBALL: Tilt Maze puzzle clone
« Reply #14 on: August 23, 2020, 07:56:35 pm »
I just fixed the last post up there of the maze game.  It had a bug where the ball got messed up.  I also added the RotoZoom method from the wiki to get the star some animation when reaching it.  I'm adding more levels and a save progress for the next update.

- Dav