Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Mini-Robo-Mixer
#11
I Robot as in IR-RM2
Reply
#12
(11-21-2022, 07:55 AM)James D Jarvis Wrote: sample output from mini-robot-mixer


[Image: image.png]

Man, that is wickedly cool.  Should be on coffee mugs, t-shirts, posters, etc.
Reply
#13
I bought 2 sex robots once. Big mistake. Now I'm supporting their whole family. Big Grin

Kidding aside, nice! I've got to show this one off to TheBOB.

Pete
Shoot first and shoot people who ask questions, later.
Reply
#14
Minor update to account for changes in QB64.
Code: (Select All)
'Mini-Robo-Mixer v0.1.5
'By James D. Jarvis July 2023
'This program uses BASIMAGE coded by Dav
'the is update accounts for changes in qb64
'
'generate a sprite sheet of monsters
'each is 64 by 64 pixels but code here can be modified to change that
'
'press c or s to save a sprite sheet to the clipboard so you can paste it into a paint program
'and save is whatever format you desire
'pres <esc> to quit
'
'License: Share sprite sheets as long as they include generated credit bar in image
'any programs using original code or graphics from source or generated by program
' please include the following (or equivalent) line somwhere in comments and documentation:
'Includes Art and/or Code from Mini-Robo-Mixer v0.1.5 created by James D. Jarvis
'
Randomize Timer
Dim Shared ms&
ms& = _NewImage(512, 360, 32)
Screen ms&
_Title "Mini-Robo-Mixer V0.1.5"
Dim Shared part&
Dim Shared kk1 As _Unsigned Long
Dim Shared kk2 As _Unsigned Long
Dim Shared kk3 As _Unsigned Long
Dim Shared kk4 As _Unsigned Long
Dim Shared kk5 As _Unsigned Long
Dim Shared kk6 As _Unsigned Long

Dim Shared clr~&
part& = BASIMAGE1&

Type robobody_type
    head As Integer
    larm As Integer
    rarm As Integer
    torso As Integer
    leg As Integer
    k1 As _Unsigned Long
    k2 As _Unsigned Long
    k3 As _Unsigned Long
    k4 As _Unsigned Long
    k5 As _Unsigned Long
    k6 As _Unsigned Long
    xsiz As Integer
    ysiz As Integer
End Type
robot_limit = 40
Dim klrset(12, 3) As Integer
Dim Shared rlook(robot_limit) As robobody_type
_Source part&
'read the colors from the color reference bar whichever color is in the top left corner will be transparent
clr~& = Point(0, 0) 'find background color of image
kk1 = Point(0, 1): kk2 = Point(0, 2): kk3 = Point(0, 3): kk4 = Point(0, 4): kk5 = Point(0, 5): kk6 = Point(0, 6)
_Dest part&
Line (0, 0)-(0, 8), clr~& 'erase the color reference bar from the bit map
_ClearColor clr~&, ms& 'set background color as transparent
_ClearColor clr~&, part&
_Source ms&
_Dest ms&
Do
    Cls
    'build a color set for the sprite sheet
    For k = 1 To 12
        klrset(k, 1) = Int(Rnd * 100 + 150)
        If Rnd * 7 < 3 Then klrset(k, 2) = klrset(k, 1) Else klrset(k, 2) = Int(Rnd * 100 + 150)
        If Rnd * 7 < 3 Then klrset(k, 3) = klrset(k, 1) Else klrset(k, 3) = Int(Rnd * 100 + 150)
    Next k
    mmx = 0: mmy = 0
    For m = 1 To robot_limit
        'create a new set of monster sprites
        'included image source has 16 options for head,arms,torso, and legs
        rlook(m).head = Int(1 + Rnd * 20)
        rlook(m).larm = Int(1 + Rnd * 20)
        If Rnd * 10 < 3 Then rlook(m).rarm = rlook(m).larm Else rlook(m).rarm = Int(1 + Rnd * 20)
        rlook(m).torso = Int(1 + Rnd * 20)
        rlook(m).leg = Int(1 + Rnd * 20)
        'determing colors for this specific monster sprite
        kp = 1 + Int(Rnd * 12)
        kr = klrset(kp, 1): kg = klrset(kp, 2): kb = klrset(kp, 3)
        kr2 = Int(kr / 2): kg2 = Int(kg / 2): kb2 = Int(kb / 2)
        kp = 1 + Int(Rnd * 6)
        kr3 = klrset(kp, 1) - 5: kg3 = klrset(kp, 2) - 10: kb3 = klrset(kp, 3) - 15
        kr4 = Int(kr3 / 2): kg4 = Int(kg3 / 2): kb4 = Int(kb3 / 2)
        kp = 1 + Int(Rnd * 6)
        kr5 = klrset(kp, 1) - 20: kg5 = klrset(kp, 2) - 15: kb5 = klrset(kp, 3) - 7
        kr6 = Int(kr5 / 2): kg6 = Int(kg5 / 2): kb6 = Int(kb5 / 2)


        rlook(m).k1 = _RGB32(kr, kg, kb)
        rlook(m).k2 = _RGB32(kr2, kg2, kb2)
        rlook(m).k3 = _RGB32(kr3, kg3, kb3)
        rlook(m).k4 = _RGB32(kr4, kg4, kb4)
        rlook(m).k5 = _RGB32(kr5, kg5, kb5)
        rlook(m).k6 = _RGB32(kr6, kg6, kb6)




        draw_robot mmx, mmy, m, 6
        mmx = mmx + 64
        If mmx >= _Width Then
            mmx = 0
            mmy = mmy + 64
        End If
    Next m
    md$ = "Robot Sprite Sheet generated " + Date$ + " at " + Time$
    md2$ = "Mini-Robot-Mixer V0.1.5 by James D. Jarvis"
    _PrintString (0, 321), md$
    _PrintString (0, 337), md2$
    Do
        _Limit 60
        kk$ = InKey$
    Loop Until kk$ <> ""
    If kk$ = "C" Or kk$ = "c" Or kk$ = "S" Or kk$ = "s" Then
        _ClipboardImage = ms&
        _Delay 0.3
        Locate 1, 1: Print "Sprite Sheet Saved to Clipboard"
        Sleep 3
    End If
Loop Until kk$ = Chr$(27)
_FreeImage part&
System




Sub draw_robot (Mx, my, mid, scale)
    'generate a monster image from source sprite sheet part& and render to the programs main screen ms&
    tempi& = _NewImage(64, 64, 32)
    'tempi& creates a temporary one sprite image for rendering
    _ClearColor clr~&, tempi&
    _Dest tempi&
    Cls

    _PutImage (0 + 16, 12 + 16)-(31 + 16, 43 + 16), part&, tempi&, ((rlook(mid).leg - 1) * 32, 64)-((rlook(mid).leg - 1) * 32 + 31, 64 + 31)
    _PutImage (0 + 4, 0 + 8)-(31 + 4, 31 + 8), part&, tempi&, ((rlook(mid).larm - 1) * 32, 96)-((rlook(mid).larm - 1) * 32 + 31, 96 + 31)
    _PutImage (0 + 28, 0 + 8)-(31 + 28, 31 + 8), part&, tempi&, ((rlook(mid).rarm - 1) * 32, 128)-((rlook(mid).rarm - 1) * 32 + 31, 128 + 31)


    _PutImage (0 + 16, 0 + 16)-(31 + 16, 31 + 16), part&, tempi&, ((rlook(mid).torso - 1) * 32, 32)-((rlook(mid).torso - 1) * 32 + 31, 32 + 31)


    _PutImage (0 + 16, 0)-(31 + 16, 31), part&, tempi&, ((rlook(mid).head - 1) * 32, 0)-((rlook(mid).head - 1) * 32 + 31, 0 + 31)

    _Source tempi&
    'repaint source image with generate color values for new monster sprite
    For y = 0 To 63
        For x = 0 To 63
            Select Case Point(x, y)
                Case kk1
                    PSet (x, y), rlook(mid).k1
                Case kk2
                    PSet (x, y), rlook(mid).k2
                Case kk3
                    PSet (x, y), rlook(mid).k3
                Case kk4
                    PSet (x, y), rlook(mid).k4
                Case kk5
                    PSet (x, y), rlook(mid).k5
                Case kk6
                    PSet (x, y), rlook(mid).k6
            End Select
        Next x
    Next y
    'generated image in tempi& is rendered to ms& as a 64 by 64 sprite

    _PutImage (Mx, my)-(Mx + 63, my + 63), tempi&, ms&
    _Source ms&
    _Dest ms&
    _FreeImage tempi&
End Sub

'================================
'PNG file saved using BASIMAGE1&
'================================
'EXAMPLE USAGE OF BASIMAGE1&
'===========================
'SCREEN _NEWIMAGE(600, 600, 32)
'pic& = BASIMAGE1&: _PUTIMAGE (0, 0), pic&

Function BASIMAGE1& 'robo01.png
    v& = _NewImage(640, 160, 32)
    Dim m As _MEM: m = _MemImage(v&)
    A$ = ""
    A$ = A$ + "haIkM^P]SScZ5^W4o3]<9k9Y_gDM9K46dC#XH_mJ]G9Wh78Q#`WUCZjOnWoi"
    A$ = A$ + "hOPPPPPPPPPN=jkFd]1XadW?OnSR^M01]JURmaL088XE9NNWEW7bJko_oko6"
    A$ = A$ + "^?]mn^>[jgmaEd]G_7oCKX>8d:EDinh]Q_i^BaoAkCPF[NbloooAdcMnTRPA"
    A$ = A$ + "gGN:SolJ^JKNfNncen?A75DWfNfH]e=NOTmj]mogeaTojCBlH`[a#oSmPPnZ"
    A$ = A$ + "D<fGf;ZFM\GdlO?InSMFWnLQjN?YaQIZ;Cm<Ag?l:6PCnhiH_D=GMOoQ;iT>"
    A$ = A$ + "SiY[aeI\?kcj`fo2gS0Wi[E6#cmoM8?S3;5kmTb12]?:KMWo;kE:WcOh`2hn"
    A$ = A$ + "aSPoCKM0nEOn?cHkJO^?fVEkk1c1>:7gCNmoTHolT1\F=gokH^_O;c;9bnYa"
    A$ = A$ + "oe93h8\B[>gC;lON_nOJ[m[5[1k8aRBm?`oi_6Yn;M^YW]1_kcd>R4oGB[Q3"
    A$ = A$ + "86n7]e1`[kkWKOjj]B[kAoLgjk<95GLh`h#6gG9f_5T3NERbl=bjhm4Gk_B\"
    A$ = A$ + "ON`0B[gVHYUHZo`P`^63\9>dEn_>[9aOn?[jnOC]C]f[#J87RmTbc<gj_>B\"
    A$ = A$ + "hGUnNKbonK26#oRc^Fk7mL?UH0]86Xfj?iC]gkC^:aoI53XdmbAGg?9O0mL]"
    A$ = A$ + "lN0KIM0n:_VoAciFRoc;6`?WS[7WekXa6l?gbH_^Io8<PNi;llN?h\K_In_k"
    A$ = A$ + "YNZUoe660YikB\Oef_5i3lUo[mfV6kgZI0WmHV9NhFOF9_SefFRoS>>`SglZ"
    A$ = A$ + "=hALe<]5?bo>2kG96`Ic7AkSJ\?liPFF3VoMm[EIbmnNLaSCi=iao7llP7fm"
    A$ = A$ + "L0h[3#BYmco<;biGKLh]`o=J\WGnR<63WckO6OM`cWD?o7ho\Wok?nek=8aL"
    A$ = A$ + "2GS3Fboa6c9aMgnLWb1XanA[ohI\P57c<a3gWc?>kMGSo2QKGihT25]_=djh"
    A$ = A$ + "K?7kX]3?Smha#I\ODWlQlWYa0>fhnmjk]\I57HbfJeLXSelfkdfn#Nmo:9ji"
    A$ = A$ + "j9kWH\0Y6P]aSgikTTG\gWn1VXlOl?GjJ<Jo^fmLY9[io:bnMF?`jen\lhL;"
    A$ = A$ + "a5NFCNE:?OC9n?Kj_BlO7\[KJN_fnocWI#<a5CW0[aRH#B]3]kmfjJ`BSkS8"
    A$ = A$ + ";K7ReIM<7#^?P<FO8`oafGDlO[PmC:^cbO;0OnLWg8SeSnZbWMS7I#n_JcgZ"
    A$ = A$ + "]i=o7gFFboeBkb[H=N<g=>?:oWhWi;oWdh\7lOdLJB<7JaLdcMnahkLMb]U5"
    A$ = A$ + "bo9977cCm5jgeRcn=i_e>??VG\:nBAV?^cGP5d6kBNfJ5hoX=UcmKDl`>`o]"
    A$ = A$ + "J^[TODSkZU]DkHTJ_Ja29fZcb2\?cEn_^Teim^ZYEBdSaJO`g=YJ?l?KNV7f"
    A$ = A$ + "jNXUgYdWab1eK<hYoTXVi09Wc\S5ehodR;N2lOdloWS]BSk2g7`O>W9KKdib"
    A$ = A$ + "Uh^eWGVG?ZKkOLokMI[lOBGSA7S5G[[lIU^olOUV?:9kZoMWWWbjAc7`o<?^"
    A$ = A$ + "GPKn1Uh?oV7FPm[B^gi]]L<LbVRkc`lBlkWjRkkCamIoH#KKfe_?4[k[]n?B"
    A$ = A$ + "L0cTo[UnoZlmIin[TkajiR]TgCZ]HNo^Sh_Il3iM5aAhV4WKOHONYLNUb5J`"
    A$ = A$ + "HAYJ`edSToCZ>T`WmWcIRf6?6\genMVH_FR3:=gdJV;a#lFV1JHN8BWkJLFL"
    A$ = A$ + "mo]a7<cl>?IPK9^cniPgWOUV?L>_H1<POgXO^4oW7nQC6?]i0BO^;S3\B<TY"
    A$ = A$ + "4d?c;n_T=dhohkoY`oEM>QQajZf[CI7oGoX?lJWS4gEbGO;o_dOK`joU^VoG"
    A$ = A$ + "X7kJCRnX_obf7W][IiohSodiJIciHSooblOlkk?[n2mE5NPccK`f7?6VVcSc"
    A$ = A$ + "LYaPA_6Fi_kMmo\`^gZgeZlPkYF27Sl1B[g7GB[oWdah23LQofleN#lN^>bI"
    A$ = A$ + "0Yc5MXVH[[1Q7imbFS?j`Ka?cAn_3QQObWIClFncoMdeoSN]<;nW5gkEN7=Y"
    A$ = A$ + "=Gg3KM[nOJLVIkCgSQeo?cmcRa:ZK7kllORiP:mjamnO_aPS`L[9;67^GCi:"
    A$ = A$ + "Gggg;aoiiLPEaoIaVelOY[YdkYO6mJHUoNU[oGnL#Fm]JbhJoT>gAJ^NZ^Ln"
    A$ = A$ + "lOKl1Dn__Gedcl>mjaWLn_B7S9coYmo?imEY?c^koG8gkWfGo?OR5mkkmFAK"
    A$ = A$ + "bLeGajljOnmm_ZUQOgVkeiV[]3N=FJTg2ZmachiE=`KL87YYIL6SknUIS3_U"
    A$ = A$ + "gWnZT4?Vihobl3]\^O:mkN[1W^6SllNhc1lSokB[ToK5iN[UW_G=B<8=6>bW"
    A$ = A$ + "oK:WF?[oggcana3QJOBbYJOTTOIccYO6e7<[=CcYhLMd?_USa<n?QJ1d?>_6"
    A$ = A$ + "QE[iX<ogaAmeoc[jRIS?>4_Y6oO6OOUGWN?hNbO8aQYU3`J^;A6#UHa\L#Nf"
    A$ = A$ + ">HfWjkm>NhFOo_bUal9U9lO9g]``n=MkHWWo;Ol_\:aneKMhJlO]\IFNHRRN"
    A$ = A$ + "moThQLO=WH\Hda6jWYM>Se6b]I?KdfRUnl8Fo?nL`KcgM>gKYlnJeQ\ToSce"
    A$ = A$ + "mi_]SE\nOeFoU\aP?lmI1gI16`KnNilaN5;^Ln_4WAF^G6og:V3DIc[k5W7h"
    A$ = A$ + "UOoGifO9nPD]>J4gRR5FALnf`o9:QhOUS[?KNM^jaQ]cnIAL?_fK[c1]ZmXc"
    A$ = A$ + "oMY#ho8cmSPoS>Wg3n?No]4o_GOWoUR7mL]VkMNQUaiEW3TbicGgo<64KR5_"
    A$ = A$ + "5S;XElmo;[O;lncHmCGSMnQRiKime5T?FLlIAel?m7dl:4onE>7__g[;F<ng"
    A$ = A$ + "e>?W;NS1lfh_oiP4_GGZFDn?]ijNdO;UKY5i3oGNMXb<Pf\nOJc3FA=XNh0m"
    A$ = A$ + "X]Xco5ljoIH]VRaNK0o7GJ\G[P7R67B]_GfC<ND8^gKKfBn#;_W[An^O8YAK"
    A$ = A$ + "?ReKi_WoW2eS]:fGT3\0gWWL8AM?8I<PWiOF;oA4co^7;hOM_B]QCkN\FOoU"
    A$ = A$ + "ooN<_WnkKlo:im\L>A9V>YLLJ7KOfljL;e^Faj]DJl#Zn[WilX>VMImohgoY"
    A$ = A$ + "mnjblONolOg]h?9koFho:IK?J3K5o7MR>m__jhggg7K__\KeO:`liM^7U2=["
    A$ = A$ + "]60g3\HnSEcn2kon\O9VBIn_ee^R^nk:7o[ike63nUkoURW6AoJmoNK3AJkW"
    A$ = A$ + "Hn_JcejQmKTff9kgTlOnM_Ia<n7=oGdmO8XXEdaoAKoMdgoVl1##[#]N__e^"
    A$ = A$ + "7hA]]EK?Yl2k3ogL?W;888888XO7]ZkoJWGokgPoOTf#dn68888888888888"
    A$ = A$ + "888888888888888888888888888888888888888888888888888888888888"
    A$ = A$ + "8888888888888888888888888888888888888888888888888Xheokomo2_="
    A$ = A$ + "0111mTdW?O<AoZfOff1looff_gfe^=?<Rfb>d_OJaOA?no[e_OJcoKY=\ZnH"
    A$ = A$ + "4S1A?^oF]og[a\Kcd>nN^okon_C9[l3e\SUmkMboo]5<UVdnAfo;??l#imnT"
    A$ = A$ + ";nPZ6llFg>Bm]S:]5;m1A>oG\_>X\XnG[iMl:^OeiModHLnZW;L=Oo_bXLMS"
    A$ = A$ + ">Nhah]HoL:I1o7cOGm_o]So5kom4eo#h?fMn??jgkToO;ho>[5dok]JL8We["
    A$ = A$ + "L^>?^o_JLGNGcC\cj\mSJn?]o>[m]P1<i7>4JGWakIS;nDokkEnd_Fimc?_g"
    A$ = A$ + "FIGN0Uim6T_KTi4FU[G]_V6?EN]dn^hbN6lOdn\Jn63Roejo]^i2oWhLbjkc"
    A$ = A$ + "TlNT=NNEalQTSmY`oeMM7SlogVOeZ<8><SoK`g?Mo_I^?^<NMh3RoK4f?[J3"
    A$ = A$ + "WiMo8K1J>G]mgKKPgOCiJ6iENNZIF;bMPoK5ggmMnVfRedTE[5#Ci0<8WG[n"
    A$ = A$ + "VlLCfD_E\oN0n_MImoJMcZno>aoAO=U;Tn<YXi3Y_2n?3iohSbliLB7[5lOC"
    A$ = A$ + "\=jjoDWkkSbkU>^iGoWj5OXeoMTk\Af_T\HnO:Njh_aSYGYeOhkk\6DWfGRo"
    A$ = A$ + "K4AI1MWocXhnJf?2n_IH0]\=edD_\LPfolHK]nSU[eiXaoGnliK?R[3A]ofQ"
    A$ = A$ + "hOJ>7enkPiMJI\8]E]V_Qa0TP:QiHeg7Fo?KloK3ogW6O_1aQaboe7bEM=;7"
    A$ = A$ + "J^T6WedDnO`oMnJ[SeL>`TneGo?^?_dk]ToK46#[IBKJ\Wf2<doGf_HC>?]n"
    A$ = A$ + "<MnG6CGSomXin^eF>m[lj;:o]3ao[hnO:=FTfNSlOdGCi2ajo50ogAQiNB7k"
    A$ = A$ + "\l7IaGmoniho\P3ljJ=DoO2f[33h_4kD_<n_\jJ=8:c8M7^boUjeO6?^_VmG"
    A$ = A$ + "Am?Yki[GK[UKfEn_Ki5meoc_7?[j[ln<=^W??XUof:OaI]8^oFl_mignF_bF"
    A$ = A$ + "kOOnPfO?KMGaiRRim[_?\nOfhog2n_NT1aQIlO3nNoFo_?ImaF>nQjoBjUbo"
    A$ = A$ + "A5=7#R1DjHVe_CIiJ=f?KNhOo#;l3ZccYS9C4g?Rm]VoCdo?hVUnoRihhJ`i"
    A$ = A$ + "k3?n;\iMM_E478>6TiSEnK3mmmhClb^Po3[ogXKVao=Z\PoKamo]Wo[3F<Gh"
    A$ = A$ + "ojP3d<n?B^N]koSKM[ho6ADfA[hohmgEcoUlY]lN;SkVI<HilOC<O_Vo7lO2"
    A$ = A$ + "nIYoNAlONhc;egCKeR5\b7\ClOln^DnOYS5lOPoK\iKBon>bo<J>^J7[KlOE"
    A$ = A$ + "hcV=>L66#;\m>`o=j[;Uo;K<IMl7NDgG:VK6f_ImoGi4JMZWOnNJ\MFm7bH_"
    A$ = A$ + "5in_=okPmlMKl_]fG8bkMhS__fhQ5eJj9f;]m6ioX_VVO_3[oWTM]:Fh3Y?n"
    A$ = A$ + "QeOUTfa?KLGJNEc[;6klV>nk39VZcg?Zm;gG5hR[LlF>n;U3ZdaJBNPFUA\O"
    A$ = A$ + "diMgbeOhkcoUfWWMm?><H<8Zko\5kk1oWD<g<lOV_6D;RmSkkUR_?cgU=7dV"
    A$ = A$ + "H0nl_<n^6oKciodhn8iQ]doGJl`ciLBmkFgLSoC9>[dnNj[oWF>I?b3L_2W\"
    A$ = A$ + "\=OWD>?Ye7CohV>nS6Ceik1oW]a2e:0j1gQViheKTfo\lOF8[Z3Ol9OM0Ub3"
    A$ = A$ + "JCL_OjGdogSoa:k`7kSToK61n?kjg]^IUOhC?6E[]<AkHGRoXc_K9GS7i2JY"
    A$ = A$ + "=hQ]_Vc9ahEkc<H=02:n[5f;YH=;[;8>FgiCPOUenl8f;Ziok4oAEn?jHnWi"
    A$ = A$ + "ioVeWKaHa>ioUl?WS9oeG?K]^F7?X\OI<8O^6k]XfKdcodJ?WeFBAlDn?7Zk"
    A$ = A$ + "FbWH9[CmnM_QmPokYao5K=oB<OBO^=em>>don>DCF4oe?a5CCJOah\0hoZ6o"
    A$ = A$ + "C\WUf<bioF`PHEnWRlOg6;6?^SK;;DjJeKKZekgHEg?2eoXao]jkoacj_img"
    A$ = A$ + ";^Cjk;]?_hQ_amMngnbna7C\fGKml0;\;Yc9DOYnn\PoKd=;iojQi`jH1nhJ"
    A$ = A$ + "YJ=N]><mM?8f6o59ogfcO\0n_Z]37]KTeog=n_NZoK5ogA1Kg:gGjeIJCmkj"
    A$ = A$ + "MnIaZDKjAcomYnoN0VoNWhoLH^nXS9N=f;gOk[n[5SmT>W#Nnjkc:n?]G;]_"
    A$ = A$ + "Eaoial>eaQ6g<WoCH4^X\Rkh8heoKTn>a74:oQ1LH5K3;LMX;=WdckkNWhod"
    A$ = A$ + "77>^mgFcoUNM4^_d[C?GLQiN:iKX_Vle76<O_D<NdlO[nNOkJnhRbiXi?lXV"
    A$ = A$ + "kI<O;YILJ^`>ao=bf:holJNWjh#SK?9n_If\8oGgmMSl1U^?GYL?;Mm_Jd;h"
    A$ = A$ + "M]H?ioXS1Yn=WcAkc\RmSfG[boMh?oG9>`JWcCImoRTo;=cjFm7J\Paiof1n"
    A$ = A$ + "?aLA1OOWF^F3M7c_Pj#k4oWf[UfgCToCbfNO_8I<#BaPROf_ococRfPES1Ja"
    A$ = A$ + "SN<NO6cYbKdWl:FPFWa;o>hoJkOS3mTokLLXe8>7VgaSgdho\L^8_^3_ON>o"
    A$ = A$ + "G:N``l2gJ7ObI#iomBHoZT7J^ke`?eNK`0^_9WC\ClOS\1n?k\O4lOLoO?_^"
    A$ = A$ + "Zk1dcJ>]HO?6_?Si68_[7lOGi?cScdZ;Jih_4ogggbiohOVe]QVho8omCRo["
    A$ = A$ + "Hm#Eic_k3`oEoOooneio:]VVcXFJCESek>kkheTg9n?]G;]?`oIWm1oWNl0h"
    A$ = A$ + "olSoCSm[8ogOm7FF7VbjAiNdn<?RoGAnWMTok<>Xe8>7V;Z=6hE^O=kaSm96"
    A$ = A$ + "m6kWE]WAHRF2oGQLBF4ocSa?VLOPoK`aR1g0oWMfo=coY]FneTWfW?VK]m[V"
    A$ = A$ + "cMYlObio:boIH<hX[og:RoCSmdGWIno>bo]3coFUoWKcJZU=_[1j9k7OnG[i"
    A$ = A$ + "T0ogcRoCkeBk3lOfIoG?oWcceZ>ng9kUEammTceSfAFn#fE?:n?YLkl?kGUo"
    A$ = A$ + "HGiojQgaSlOk6o7WeeKO1]mTV;ZogonlONXFKCEI07Q3L0oa=n_Knkjkc:n_"
    A$ = A$ + "AfF1oWFN9`o1n?C7oG<gEAKgH^H[Vk=L>#7l1Po3lOk0oG]j?Nh;^jgoGHN6"
    A$ = A$ + "og7ongl?nL`BiLV=_3_6REZGOCC<P>W7\fmEhml#;HaG5o7O>XGlO[`_;6;F"
    A$ = A$ + ":nBB;:o;holUoCenETUeLJ>G8co793l_:oa^co]blnAhoWY?_ZJ1[`Wgml#3"
    A$ = A$ + "ON3daH;d8lOYfBgYN<\>4ho6[MhaL^Ejg5S3iaEe4ho\Ml_7I<ogY?XA^7_\"
    A$ = A$ + "McioLHl_g4a[ZV[eco1oG\noIjcJ]7?V?^Jf?eiR6O?_FbmIQ?:OM4K=mSMO"
    A$ = A$ + "7`]#oZfOffQUal`n`nAIoNJ;NHcAl1AJkOiaoA]e>fVn5moN=>hmlA[_nShK"
    A$ = A$ + "RL\NWR9FiH14444444444444444444444444444444444444444444444dkB"
    A$ = A$ + "NoK_0on8PPPPPPPPf;mU=k`IYaommOOFR^o31111m^5Fg3XgXfMn?<732222"
    A$ = A$ + "b;iI=#DOJnaVXogI_8HnGU]STo;]E^__^o]G62222jM9`o]GRcdDcoj3keX3"
    A$ = A$ + "ifnok_[ho[;RRo;moM:bSmSkoacK62222ZThl5Uh>TF[UFg?FKR>7?nkFRYY"
    A$ = A$ + "6Ka\oo^VlJY=7oA?<YJ[Ug8lOmJoXhoXSain1[<kMK2n?8888X_BRQkPmo]Y"
    A$ = A$ + "75nohDjn?>4>g:e0QhnbS\ood]7n?jie;_mO>NjXg\lO\[E?aPdne8lO]bOE"
    A$ = A$ + "cnNcoUJcIS1VKj;kZm\VQPPPPNOZ6ogAUo?^Gkh1oGoS3L^_IhoB__EONRIk"
    A$ = A$ + "8a^I0o7mJeJlWGlOURoZmm9d:a];W7cKn?YWe<4444dkDPoK?4WQK6n?Ye?\"
    A$ = A$ + "5kW=jI0o7mJE;nCkk<`<lOl[IC[3IUhmf7;[OMRHmo`co5222jM;Yj][Po[g"
    A$ = A$ + "W;iK#9n=Yen[Gn?niVfJQmicRGo?JlW6of\lOWnQ6RmF=oWo[oG^maJo1111"
    A$ = A$ + "1Ua]Y`oe:_6oiLYaoa[9^ZWkVfcQ[WWGWG7KjhilJlO;3U:dc_nl[C;[1HDl"
    A$ = A$ + "OYCJ5lOY?[Ui4a]nO9=?g7ggc]74444dkCJLNcF3\e[[m[eAoe7?iO;\nUIm"
    A$ = A$ + "[2lGBmoF^^GWS>_F;lOl[7W3\En_CI0o7mJY6[#j3LFG;hoT^V]6kJeL;]SC"
    A$ = A$ + "Lmoblom<?QLl:nN^mPPPPPf?IeJLEjjg;WB[]kF^^Wee>>^NUnn?:_GBJ7[j"
    A$ = A$ + "eU`oAOUmICaoeaeU_fOLN]A6_Y<U]`0:_nOC8feZD<N9oj8Zfe[UHgEaoAo="
    A$ = A$ + "ILSMCT5DgO[M^9kQeo32ZOIE=G8XFUDmkFgJUo[6[V7lOgFG3ejFEHn6mlTh"
    A$ = A$ + "oTT5lO]NMok6OM\V=nAJ]a:6?X`=<R]kiJYa^=LlW23I?a^[PoCkg[MgalZa"
    A$ = A$ + "jif?]=ehJPemPmQmS`nBiBk9gZ7miEj;RVom]HOne[gWm5=F\Uf5_>U5m9]["
    A$ = A$ + "3_NhomijHBnZj\_Ccoe1GmoM>iKc6?ekedbhiA_FN5o=jiJEo_dabiob>o9i"
    A$ = A$ + "nhokmb\[oWD>YEGogji9oJf?Jo_D^DO]7[>R#^G_i0JYF\[\GgVKCN?KO[KL"
    A$ = A$ + "O]a1mFCmGLlWVOIFn_F[i;aU=KN=ne#b>iaF[CmHkKm95=ceE;nb2n_N_VGc"
    A$ = A$ + "c]jNIjoJUJgc6oekeP?n>MlO7G[4o7ocjR3T5O9mK0:]]bHZiROd^GbSLoC3"
    A$ = A$ + "caN:f_fmjKUmeKCnGg?gGWGkP>gZdaHIkBb__fi1=`oi83VlhnkUo;IE[_?`"
    A$ = A$ + "Fc]dRfMn_fRYlBgcKD;VZEn_AREYSGF4?=jek]boY=f>BK`R[5WE[eikB<TL"
    A$ = A$ + ">`I7CGIM?Y=N^=]Si9JO=o_7fG?^k_Qd7g__3;IO;UkT>Wb:NPJc_jmI^IUO"
    A$ = A$ + "9SakdOCZSafWGc5KYVZ7f^FlPglOgHoHaoF_V=F<7nWRokPW?QlZdkUTfaZN"
    A$ = A$ + "M9i>X_bn\KeH;DK?_FLm[K]h\IRW6mJ1n_hioBKDF]d6mhh?;GncjEjJZ]O_"
    A$ = A$ + "S[VeFlg;EGVonWXmeloNHoDKh>WW2oWA<8Ii#5FC_BBjLja^JigYRkoKiL6="
    A$ = A$ + "Gb]a09NKWio^kW_cm=;SKOf_L<Q;foPn_;7iaoWLF65ko:ioZadeSZMNBlOB"
    A$ = A$ + ":M_V4oHJN<W9lfae`e]dHf<a0cLM0oGllOB?WF>[gGa?Vdf8[aG[iAkQoKfL"
    A$ = A$ + "cda`D<<gN]L<F43];fGcokQm?73?cK^>n_[LZ]7k`I3jMnkFcoalgbS?fcoa"
    A$ = A$ + "SidH^hkg;kcK3Jc5\enGnN>3HfOK#lo[To;4Mon5UT6oGfcNiS`a=hJEgCme"
    A$ = A$ + "BnnaGk?K^GZA_FFd6VaffU_Nl[U437Wek[TH2C\Sm`0:FCGIn_FnoI^VEmST"
    A$ = A$ + "=^mJiHV=6VOMU\_daiYmUTefo\=#6k::3ZoaW7fKOQ?g[gcmPVkFi_EioZLN"
    A$ = A$ + "CU?AI>DYmIMlgQbeOEcoT\_Wco_^nGiab6gc\99GgTe=;i[]nj#iPbIelQoC"
    A$ = A$ + "J\YJN5SE?fV7GUV7GRo[ULe]<^=JL`XG3;cU<jeRVkNdLVcL=JMLZ^oO\[Sd"
    A$ = A$ + "JoUnL=V#jaVfJUo;;of=F=mlmYfYfnkmJF;F^D>YF>VIRSK=?jXcGgMkgbLh"
    A$ = A$ + "F?^Vkc:cO[U?MfinBg[NVnX`oe`iIFnD^o`8on=kmANMgViHoE\?mJWFO_\["
    A$ = A$ + "oaMN`da<KofRiamLMXe[XW[5f?oJ:=Gn88MamFBJ\NI<RO4>^Oeeo;[FmkTo"
    A$ = A$ + "[fHTWGS4kfg=nWco\_BR;\daOK<R?_P7Y:`[ERoKd[YNkkjN[dZgGkHVAk0o"
    A$ = A$ + "EdfoL<\Rm]R3Q>o]6O7On==Wl<cm;aa]Jn?=VgJ\`F5gAWGE[=b?WOEkC_^g"
    A$ = A$ + "[UVWGS_iah\WG3;SYjiJUWKQEOh\>Q`kUTfaZNM9lOdGIOV6o7?OT8oGU[K;"
    A$ = A$ + "amS4?=je8U3o8U;Obi_SL]N[lOOgdFk__J4>?jcYPoJfl_B\JTi;dnW4oWhe"
    A$ = A$ + "KBn?Y]KcoZL<cXAh_\`^cHo`hoJhhJ^?Cb?c[O`SXTf_D^jF]K=YboEilVS;"
    A$ = A$ + "P?7jSjWKehn8[O`<[KANoe6k?K=<nH]4oWla<FM[I_FSL=Z5gKiL8En?ej>5"
    A$ = A$ + "foXWgW[i?5Wg:UKAX?LlA97EU[k^<nW=NHD^TA_F_=n?ngU4]WK[6KQ6G8ol"
    A$ = A$ + "\Po[=94b[Lmj9FVonN>VId>`O5]m?73[HoF>^f]InLXdH[Dm5jnT>_^le=8A"
    A$ = A$ + "n_6ddlOIBKnVMamLiaiD;F>5?gSmiWkX]1]Wc;U1T_U>nA\m[Uo;49O_TLYa"
    A$ = A$ + "jEmcjhjFJnc8a#SNMRfncf66af]ce8OmVmloZBLO9=cci]LO_2[6QGC:_bmk"
    A$ = A$ + "gFH^fTlOYLjdo^WSI6A[WD=7:ho<K=Xhi#c7WKKOSTkZ#1SC53ogHiF<IL_a"
    A$ = A$ + "adA>7]nZEl?SjCbbUY`0FKM1]X^U7eaj=^_GkgkLPA[QJA]gA?fBOF_GGjag"
    A$ = A$ + "Z?KTlG]=n9c:gmLV1^>Wn0Q]F>gBKJW_Z?CSMGHlOVc_5=bc5Nha[2lO]91g"
    A$ = A$ + "a4lOlaE]iOU>VI4mJGKnC[aZoJf_Ui_]NLmIgLF^FFo?jagKkhlJCV[:mgZl"
    A$ = A$ + "OE>_Il;oYoX<fFJOC?VW=_]aao6?WJaaS<GF;O#_]QJ?WgdWUKWlS_EKG[fE"
    A$ = A$ + "_cokmJDSKXUhgA^6ei5lDiiGdd8cYjmjfR_[9nW1_>]=>d2kFKnmASOWiLk>"
    A$ = A$ + "fO3hoTNV]LUf6Q1\jHFZEg`hOca0MOmb7KSPo[dm_EKoFJcjeO]Y]d2Wo87k"
    A$ = A$ + "\]SFFo_IkgebKO8do:>OORkkkV_X#><]m=^OGXGD=n[_cYdh<OmkZ=^JaePN"
    A$ = A$ + "]h[YG[Oooh7O[moA[OIaeH6fQI^6Ia<lj=7TCSoN9YM\ZGG2o7mEfW=ENT:G"
    A$ = A$ + "gAD;anc9YQ]N\_f#_LOAjceRKUJ3e>?ni:EoB\178o7Wk;mnF?nBlRRi\e4I"
    A$ = A$ + "^Bge>ZZfOn_UbQeba<ZRbnUV3HiiDM<D;:nSB>l:7k\S5WccIZejj]ig[8]i"
    A$ = A$ + "o>aoeB=PNiKJNnKSSWSL>glk=j7;E3Jf[1O>M[?WgBKmTW[U_O=NL=f2n?ah"
    A$ = A$ + "V2aDUD]ck_eObhdTT5lO5^^=U_YeHo>mBeieTD9n_N^>GG[FSKeROkmlUnnS"
    A$ = A$ + "Y=69:]lo3NnLMn<U>jK=mB7?oeJGSjSMCnMWIR[YfH[4oE?i:kYO4Qm7iJJI"
    A$ = A$ + "kXWa??ROdKC;Po[1edlo:WghS3]nlK6cG<bhi\a0Fh3]NLXE6`AiedR][9?^"
    A$ = A$ + "6AIoah6\B]aO=5oG3lGe>^FJ;Poc1n_2bbcO7TnhWA[S`PGcfcQdG^ZMgnFW"
    A$ = A$ + "oeBkgCogZaQFJKNN]W]o?Jk\e[QUnTAj3cf_]`7jah#_GC?SkOZJFOl\S=N="
    A$ = A$ + "6fbeeZHZ8lKFHO;l1N?nkmi_;bSfh_#o6222j][F[_5Mk42222222b3m6__e"
    A$ = A$ + "_maS?UOnF_1o0DN<Ad]1Xe?VoFbi][:jJ?B[?Odn48XEYo`ldi_QSOIUHkJQ"
    A$ = A$ + "okhQk;P8Sk3nmO4b^aPH6gS?WGdl?A>>leNFnkHYkaOFnNL_o#_9AWo5aL`E"
    A$ = A$ + ";`o1aeKRoK7onjm7k607f>`oAK3[^]TbmCGo[EG38:n_cLm7<n_6nM[31mD4"
    A$ = A$ + "ho0ogKF9f_Jo^SO2johk6ogn\K]Y\om:J=fNGN^7AaoU\W4ogZJ7ANo7Po32"
    A$ = A$ + "joD4ggGDjX#n6nW3n_W]h\O?M6#`oa7kg7n_Eg>f5n??ngb`Vko_#n_JLfhk"
    A$ = A$ + "4kkC_=n_TViHPN6j=]nOYnk>mlOSPoSbn#O=J6`Uol?9<WWgck2i#g9n_S?_"
    A$ = A$ + "7n?]ahE?n3Mig3mkN3Qok9?^gB]^X[725CLaKPm;eGgUenk\m0n_#\?O]7SH"
    A$ = A$ + "=8gRWoKWooFc_\X<gdaJjLRgbJ1];:beOSO?H?iaMaWg7_0h;iI12mnNn_Yn"
    A$ = A$ + "lKVoSGWSonXI`Rbnk#o?4K;\>P?iioYn=?V7\Oa=F4emoaS5N3SmgZioAim?"
    A$ = A$ + "L>08ihQg`H^>3HPofO1oGHfWFoi=aoMJoG`cmEZOC[ioFZo_C:igCiP`coMM"
    A$ = A$ + "miJlO_1o0DNl`ZonGAOf;aDg?Ff_cfa2ioXnK>gCTiOSRo:e62UoJSioNbO?"
    A$ = A$ + "PNSen7aohagC1YeL=bL`[PoLWR_>ckbhof]i1AmmSIgU5nUXNn_lj][^n[Gi"
    A$ = A$ + "d6^]\Hn?nh`ZkceR7NCfWcoeR<ef<A_nlm7im7hU]GE]oOAYoLBVkNeX[gJT"
    A$ = A$ + "ckGI<`U_lZVGdS_G][mT]R^f0lLTAiOf1OTnlbiI0G5kW4og:b5D>WfcokoW"
    A$ = A$ + "dHa:k_bS7b[og:Vk5UmeHkX[52og6\eeX^^ooc9Oic9Ii6F=3h:h?;Ek_ENL"
    A$ = A$ + "?ICSbnGGkbi:kenlhjBWkZjo[UokPlnhiNi3ZAgVhSmBKc>VgJLcIKPiORd7"
    A$ = A$ + "i1oBR1LU\OJlOl?gSlL]V7IIiIEhoF=oa87S7a4DEJOFd^RbnljPlW3FBUfg"
    A$ = A$ + "\mocLK<n_[?GVoKIa5lfPCSod[AYaodVdhf_ZmEKCWakUZeLYAV_eBmGngAI"
    A$ = A$ + "=IQoW7;ecnJc>gio6EV>7SX8K?Ja9BKJk_gn\fl^\lP:n8[kcm53=?3h7NnE"
    A$ = A$ + "fJ0Jmh\DmdNoL;[o:IcJ7S7aodl][bnkBo?ISBcg[U;hkf\f?EWAJ[dnVanY"
    A$ = A$ + "jKdO32ljSJkc:kO#_VllN:o^0Ud<aoUKK2_JTmYnO9o;OoFcO4]m;e^Xg?ZU"
    A$ = A$ + "eoUjce>^dL#_hohnl\jo=^_VlY\jdeVCiml==n_6Q<bT;co;\=2oG9N^Nm3J"
    A$ = A$ + "\CNVG\7n_dkKc?OWm[Ui6m>oODn??Zog3oSWl7WS[2]Qg#oOVl_FbO6Ym;]n"
    A$ = A$ + "NHmolcnBleLom:hoRbnUJGoamWllO^_N0cNm;mmo;=_KUlOUbaIAn?An_f:V"
    A$ = A$ + "k6_5hodIiN;lOGnjkc[mXn?mJ:E[eCncknblfB]H#?ZoCK;l[eKXoGjJ]:>S"
    A$ = A$ + "8]Ob>B[5BbVDf?[]k1M<>5CTn<N>>7m1b][kiLm`_[aK]:n_X\Oii4ieCLI<"
    A$ = A$ + "nhn_oG9f`Fd\]3]LL]^_nlYO8_>V<MN6K>FD]WLOeMO<OL`RnkI>_G>oWFm?"
    A$ = A$ + "?ZoGJ^UfaIMLF;GK?]O9OlZ\?mJ?Z?2b^a2]H`B?W\Y7oYaOloVnI>?nWUc?"
    A$ = A$ + "UKeaJ<BfUog[Po:JkG\MUZRiX_W_6OYGm:V_ToGZnG[k[=kLWocknG_moMXm"
    A$ = A$ + "`I2\Pm;kj;TCCS[A2`::OE?lOSh_G9oA9k:MLN`ndBOc;kgZO`Ckgbefkn?D"
    A$ = A$ + "^_^W?g\H0ZH\O[Xf`mf`jF[aJ][Fe<f#SeI5f_HofIn?JoWbmm4cg`InNJm?"
    A$ = A$ + "[lAB\NF7[gjeBR1<Nf_J<Pm_FLA`O4=oEdf_ef1hoPlBWifH?SG:kGD]QgBl"
    A$ = A$ + "F9n_XJ?cFCIXHPSWoookmDkGF63`Iola>GZE6#?h?knL>^olMWMNjKVo8Jkg"
    A$ = A$ + "R=N3mOXe;A^[0h_bJ7OF_mSFPoSJggch>DnHOYePbJKimjWgDKXSnIfJaWa0"
    A$ = A$ + "JgcPHel7]\nK]^6MoRf_5Kl6jo#aXKlOOf0n_GfjoUVCie__WaKC[Wo3jMZE"
    A$ = A$ + "cn9No^=\>PFg>XOg:Za`U=WdHODTl7laM9iE\Adf_efaC_o35SfUeo;[]lim"
    A$ = A$ + "`nUjglO__AgVB];JmYXK?#?C];\OQ`omAXEX]6<Wkgnk7;Jn3^=TflH=8Sfn"
    A$ = A$ + "md>NbmOXhdeLlHGk]<FD`o5^0o7T7Zdj;hMLFdlOJ[_B67Xdn?>^M<fkGRSo"
    A$ = A$ + "PJ3\nOHmoPF[fQeNk=coUH0o\9mkcJBhio2IXdZW\Zhn?Tl;B_^4n_SB4X74"
    A$ = A$ + "N?2Gh]GmQo;2n3^6iHnE]O;fh=doQRGA>nbi?O;lO9^?no>?7MOofJ>0n?83"
    A$ = A$ + "4M=TXL5[:fBSoklc3I=0__fNZlO>^nCA`O011m^Efjnm2o]O\SlOYf6hoP\D"
    A$ = A$ + "Ln?jO_>koAne5a0FM=0;^nOH>844dc#R\O_D6#j[AgVB];`o1IYFacD\Vmeh"
    A$ = A$ + "oFiJLEMmoDDdSO####FY<n?QGO;ilfeLlkJk2jgEB\O[<njRo<oeEk3:]nOA"
    A$ = A$ + "?61111]2UH0UN=jf644TmJ7FG;>7Hdn0LOF###_AUbkaO5222bC1^;8888XO"
    A$ = A$ + "EQeA02J?4Vo5WO?jf04dKFA?7l]b0Ao]3_Co6BPPNKRoK:9jfcK#AnLlQ^?F"
    A$ = A$ + "4MK0:VamXoNkUb3\Zo]lJ7DZ>3hoROL8jf0DlBkgFLd][W\f1n?<6Wo__C[f"
    A$ = A$ + "^A=?SKcgHL`e_SgS`H0O[\OD^?`o5gh#dgk3DLSmLYm_a<AgFORJ7bkOnkin"
    A$ = A$ + "5?6CoMm_jO?o9K6Q]YeKiomKAIlO1a0Fjn]ObS7dj>_aH_XmiWeOHaOHMON7"
    A$ = A$ + ":Soh5boYmkHN5c1h\OA`0Nbnmbog_Wg6oGbNBlOA\6XQ?fCio2P1D;?kC?o;"
    A$ = A$ + "]O2n_ei[YlNLn_gfonEnf5U3Q7?LlPcolOlM7=Xea06bcN4lOQMO_D^C`o5g"
    A$ = A$ + "HOdlOGS9Ob6?N3??HY_oOH=X^l=NL=cZa[lng^_o=9=^_WL\`>`oAmmQn\OO"
    A$ = A$ + "alOA]fOLk75gInc2:>o#XSo1aoEki`mFio`g7#oFCdKaKLQ_go_>Ym\8OjiO"
    A$ = A$ + "`co5lOGS5a`n41o7_?7aJ#^;::n_?2eMcN6<?lL_Do0hoDR?<Nnh]J>dHOFL"
    A$ = A$ + "hK8f3B9^hEao5oJoQWok>47laUL^e7oSSmRnLPOS\OWn0F=`UanaZ5_bkoLG"
    A$ = A$ + "4Nn_Um9Fi3^Mo6ThndlOYmoF73NCZ4ogCNl?Jn?Z_7?oghR1XlGAmLHSRoSb"
    A$ = A$ + "lnJ7o9lO;K>O:W;iegZo7[gW#lQ3i4TFo?jlO?Fo_g>;o_RFmcoLGT>3hJGk"
    A$ = A$ + "_glcoU6[5ALGD?ogMPo:ZWolZkSJng`ioHeRSfG5iHSEc1dZUm[DCcSeoSN]"
    A$ = A$ + "YggA6oWAOWoYnJYef=Jok:77S<f[Gk?jcS<jnY=nYe^^Och_=]O7<o7Wo82N"
    A$ = A$ + "4JLK4f>Bn[EIO][oB^?;RXfCjIR]\fcaJ]k>[4WP]\Oam<M<96aYk7UO_7gh"
    A$ = A$ + "o<hNAhLO]n_agdJ0dGo55]NB4?OYCkcbad23H?]cXFo<[mCAa`VVg55kETlO"
    A$ = A$ + "BiiFmJaa]W7iKeR[h<WNdOSfn9kXUggKkB[ea[]M]oc00g73X\OFV[YDN\ET"
    A$ = A$ + "GK6kK1oG^=dHoFkl\AloLfYnZ3[?7_TXco]8>I4n_[a]lGm8F]5oV5GCY]E`"
    A$ = A$ + "FTU[QYBaTlcYUHeJcelNlKNoT_]oRnj5llO[FogIn_bmoli5UnL?jodSIFkE"
    A$ = A$ + ";o:On_fn\\O^BkG[MYmlO\XfOYnoQdl\Kkg?n_KiQMjIm:EW]Dm7nLaI[;5]"
    A$ = A$ + "m;W7Waoi#\N9NWT_XUhlAWCfcLLYmK9GB=OQd_cW[Ja\Gok\fAWoGCl0TJnP"
    A$ = A$ + "FfhnLYm?Z_ERI#RQXdT09f3]cA[]N=>EOnVUccj?_#ijoUR=Ve>eZab77FEm"
    A$ = A$ + "oKWgTaTSHoNoL_jolcOdiWef:UCH6kfZmeZ7CgWGaOebkKegeYRi5oTon\lo"
    A$ = A$ + "G343e6ZFOI1O?oJYVKb7cSm\hgOAdf_iJnYA2S73JUo[fcoLDOAdcok=F#VK"
    A$ = A$ + "ILn_6QA^c19lIchWCnaJkODOKdlOGkJ_hoVYnoX<7m4GXES?=F<O]_a]_5i3"
    A$ = A$ + "kenFco=JoG:6bkh_NICo5\O9o>mOGgXfT_??ZoO8T[khfn?K#3>g_1^c?ifN"
    A$ = A$ + "ViJBZ7n;YoVnj_Xm;5?LngYA57Z;e3oWdL]dlRAW7dcLL?VogK\P<[1hoZ?>"
    A$ = A$ + "K4oG3OVTohJGk5oG[S9Nao=2o9ohVYoo[JodW9M>mdV6anU>G[R;;M]md^[f"
    A$ = A$ + "nUloUFo?=61[joo99d=N\SlLNG17f?gG`nN<>?;oe:Go??\OKSAnEGZD<0?G"
    A$ = A$ + "TdLQB\QSHoB][Ffg\nRJa0bJLn_FmoRc?9b2OPDM7Jm7_beOcn:m?]aMni8G"
    A$ = A$ + "[L?ioZ=W[Ujoda7c7;4^f]dfNbfGK^ReiRZ=f^2o`KDUhkBk[Dn8[J3I9Tb7"
    A$ = A$ + "X=Qo[7kkE\E?lGBimWe_7]mKILhT2?`igLF?nJ3n4bmd2oWhhS0oWg]C?ho^"
    A$ = A$ + "j?beeFAM696`FVSejLaMSo[UaQBeomRok<>CHlNEL7kZmGEk8JkoFEYk9Cjn"
    A$ = A$ + "cl<n;;OX43XSl7;S_YA9M^cbN<SmGF\8Qo;J6#:cGjm?Ul>daJ9foBWWd[[Z"
    A$ = A$ + "]jAMWBikF53X_m_b\Ok23H]joAaoiYMgMk7]oOen18maVEaMWa0nI=?KfMGF"
    A$ = A$ + "`o]kB^Fen\>P?EOOdLoeJGIi0FhmYmDF_1M6`oni3do\N<8jjoU\O]ffCgn["
    A$ = A$ + "XM4]mQZ?f\BOo]ln_L6#`o5IKjm5_5]n`HnTN_gS9??6#^HIFK\omWceHoAT"
    A$ = A$ + "eo;aF^ReMJW]o:J7AKOXjS?Qco9\60AkGFYoWbomDkkk8o7D<a1lkgClmP1L"
    A$ = A$ + "jnfoaaEN^f=^a>i5KZM4<o1O<V:_7ogMkkMk8Jk3EN\AB[`^lLm_In_Elk_M"
    A$ = A$ + "7T7eGPnMd=f_S?D05aL2P1LlneYK]`L^\iTW7W]lOk0o1g6Lki=oe>KO?K7A"
    A$ = A$ + "KOXbS=Nn_m;ES;4F;PgfH?hoPN;ZUke<\k7UD3JefgEom1QYCYoain\d74Mm"
    A$ = A$ + "oMOmgRfnHmoN_:Bn_cH3RNKSkdhOnof\4MKcWn:Nn__MA30ViH\FUZ5m[6WN"
    A$ = A$ + "bfmihn[WkCHmohb0n_8i?dHIG1[o>KoEd>Rfn#m=f\JOoKN<WbOcOOd]=O6W"
    A$ = A$ + "__F4Ag^PF[>:T_i6C#0iRhL:oj[7A6OG=n?bmUIENIDo72JOeCWkHWe[Vok1"
    A$ = A$ + "f7QZ[4oG2fPcoAolXhoh[;e_N\Zhj0:aoIlJo111]gjYcM\kRn\OObS1Po3j"
    A$ = A$ + "[n5hoTNFUAkg\X_YZ2[oGd]K888o4FgmhEb_odmo8>3JgioTH0SfWiNO6[m7"
    A$ = A$ + "444444TcZEn_XJK_]kCI7nNP3111111m\E[on?R^M211]7jo3#EK%%h1"
    btemp$ = ""
    For i& = 1 To Len(A$) Step 4: B$ = Mid$(A$, i&, 4)
        If InStr(1, B$, "%") Then
            For C% = 1 To Len(B$): F$ = Mid$(B$, C%, 1)
                If F$ <> "%" Then C$ = C$ + F$
            Next: B$ = C$: End If: For j = 1 To Len(B$)
            If Mid$(B$, j, 1) = "#" Then
        Mid$(B$, j) = "@": End If: Next
        For t% = Len(B$) To 1 Step -1
            B& = B& * 64 + Asc(Mid$(B$, t%)) - 48
            Next: X$ = "": For t% = 1 To Len(B$) - 1
            X$ = X$ + Chr$(B& And 255): B& = B& \ 256
    Next: btemp$ = btemp$ + X$: Next
    btemp$ = _Inflate$(btemp$, m.SIZE)
    _MemPut m, m.OFFSET, btemp$: _MemFree m
    BASIMAGE1& = _CopyImage(v&): _FreeImage v&
End Function
Reply
#15
Did a tweak on this today  to alter the size of the robots generated and widen the color range of the robots. 
Code: (Select All)
'Mini-Robo-Mixer v0.2.0
'By James D. Jarvis December 2024
'This program uses BASIMAGE coded by Dav
'created with QB64-PE V3.14
'
'generate a sprite sheet of robots for use in another program
' there will be 40 robots geenrated in a sheet that is 8 by 5  sprites in size
'each is 64 by 64 pixels but code here can be modified to change that
'
'press c or C to save the sprite sheet to the clipboard so you can paste it into a paint program
'press s or S to save the sprite sheet to a PNG file with a filename selectd by the user
'pres <esc> to quit
'
'License: Share sprite sheets as long as they include generated credit bar in image
'any programs using original code or graphics from source or generated by program
' please include the following (or equivalent) line somwhere in comments and documentation:
'Includes Art and/or Code from Mini-Robo-Mixer v0.2.0 created by James D. Jarvis
'
Randomize Timer
Dim Shared ms&, screen2&
ms& = _NewImage(512, 360, 32)
screen2& = _NewImage(512, 360, 32)
Screen ms&
_Title "Mini-Robo-Mixer V0.2.0"
Dim Shared part&
Dim Shared kk1 As _Unsigned Long
Dim Shared kk2 As _Unsigned Long
Dim Shared kk3 As _Unsigned Long
Dim Shared kk4 As _Unsigned Long
Dim Shared kk5 As _Unsigned Long
Dim Shared kk6 As _Unsigned Long

Dim Shared clr~&
part& = BASIMAGE1&

Type robobody_type
    head As Integer
    larm As Integer
    rarm As Integer
    torso As Integer
    leg As Integer
    k1 As _Unsigned Long
    k2 As _Unsigned Long
    k3 As _Unsigned Long
    k4 As _Unsigned Long
    k5 As _Unsigned Long
    k6 As _Unsigned Long
    xsiz As Integer
    ysiz As Integer
End Type
robot_limit = 40
Dim klrset(12, 3) As Integer
Dim Shared rlook(robot_limit) As robobody_type
_Source part&
'read the colors from the color reference bar whichever color is in the top left corner will be transparent
clr~& = Point(0, 0) 'find background color of image
kk1 = Point(0, 1): kk2 = Point(0, 2): kk3 = Point(0, 3): kk4 = Point(0, 4): kk5 = Point(0, 5): kk6 = Point(0, 6)
_Dest part&
Line (0, 0)-(0, 8), clr~& 'erase the color reference bar from the bit map
_ClearColor clr~&, ms& 'set background color as transparent
_ClearColor clr~&, part&
_Source ms&
_Dest ms&
Do
    _Limit 60
    wflag = 0
    Cls
    'build a color set for the sprite sheet
    For k = 1 To 12
        klrset(k, 1) = Int(Rnd * 150 + 50)
        If Rnd * 7 < 3 Then klrset(k, 2) = klrset(k, 1) + Int(Rnd * 50) - Int(Rnd * 50) Else klrset(k, 2) = Int(Rnd * 150 + 50)
        If Rnd * 7 < 3 Then klrset(k, 3) = klrset(k, 1) + Int(Rnd * 50) - Int(Rnd * 50) Else klrset(k, 3) = Int(Rnd * 150 + 50)
    Next k
    mmx = 0: mmy = 0
    For m = 1 To robot_limit
        'create a new set ofrobot sprites
        'included image source has 16 options for head,arms,torso, and legs
        CVar = (Int(10 + Rnd * 20)) / 10 'detrmibe colr variarion range
        rlook(m).head = Int(1 + Rnd * 20)
        rlook(m).larm = Int(1 + Rnd * 20)
        If Rnd * 10 < 3 Then rlook(m).rarm = rlook(m).larm Else rlook(m).rarm = Int(1 + Rnd * 20)
        rlook(m).torso = Int(1 + Rnd * 20)
        rlook(m).leg = Int(1 + Rnd * 20)
        'determing colors for this specific robot sprite
        kp = 1 + Int(Rnd * 12)
        kr = klrset(kp, 1): kg = klrset(kp, 2): kb = klrset(kp, 3)
        kr2 = Int(kr / (.5 + Rnd * CVar)): kg2 = Int(kg / (.5 + Rnd * CVar)): kb2 = Int(kb / (.5 + Rnd * CVar))
        kp = 1 + Int(Rnd * 6)
        kr3 = klrset(kp, 1) - 5: kg3 = klrset(kp, 2) - 10: kb3 = klrset(kp, 3) - 15
        kr4 = Int(kr3 / (.5 + Rnd * CVar)): kg4 = Int(kg3 / (.5 + Rnd * CVar)): kb4 = Int(kb3 / (.5 + Rnd * CVar))
        kp = 1 + Int(Rnd * 6)
        kr5 = klrset(kp, 1) - 20: kg5 = klrset(kp, 2) - 15: kb5 = klrset(kp, 3) - 7
        kr6 = Int(kr5 / (.5 + Rnd * CVar)): kg6 = Int(kg5 / (.5 + Rnd * CVar)): kb6 = Int(kb5 / (.5 + Rnd * CVar))

        rlook(m).k1 = _RGB32(kr, kg, kb)
        rlook(m).k2 = _RGB32(kr2, kg2, kb2)
        rlook(m).k3 = _RGB32(kr3, kg3, kb3)
        rlook(m).k4 = _RGB32(kr4, kg4, kb4)
        rlook(m).k5 = _RGB32(kr5, kg5, kb5)
        rlook(m).k6 = _RGB32(kr6, kg6, kb6)

        draw_robot mmx, mmy, m, 6
        mmx = mmx + 64
        If mmx >= _Width Then
            mmx = 0
            mmy = mmy + 64
        End If
    Next m
    md$ = "Robot Sprite Sheet generated " + Date$ + " at " + Time$
    md2$ = "Mini-Robot-Mixer V0.2.0 by James D. Jarvis"
    _PrintString (0, 321), md$
    _PrintString (0, 337), md2$
    Do
        _Limit 60
        kk$ = InKey$
    Loop Until kk$ <> ""
    If kk$ = "C" Or kk$ = "c" Then
        _ClipboardImage = ms&
        _Delay 0.3
        Locate 1, 1: Print "Sprite Sheet Saved to Clipboard"
        Sleep 3
    End If

    If kk$ = "S" Or kk$ = "s" Then
        filename$ = _SaveFileDialog$("Save File", "", "*.png", "PNG files")
        _SaveImage filename$, ms&
        _Delay 0.3
        Locate 1, 1: Print "Sprite Sheet Saved to Clipboard"
        Sleep 3
    End If
    If kk$ = "?" Or kk$ = "H" Or kk$ = "h" Then
        PCopy ms&, screen2&
        Locate 5, 5: Print "==================================================="
        Locate 6, 5: Print "                    H E L P                        "
        Locate 7, 5: Print "==================================================="
        Locate 8, 5: Print ""
        Locate 9, 5: Print "  Press C or c to save image to clipboard          "
        Locate 10, 5: Print "  Press S or s to save image to a PNG file        "
        Locate 11, 5: Print "  Press ESCAPE KEY to Quiit                        "
        Locate 12, 5: Print ""
        Locate 13, 5: Print "==================================================="
        Sleep
        _KeyClear
        PCopy screen2&, ms&
        wflag = 1
    End If

Loop Until kk$ = Chr$(27) And wflag = 0
_FreeImage part&
System

Sub draw_robot (Mx, my, mid, scale)
    'generate a robot image from source sprite sheet part& and render to the programs main screen ms&
    tempi& = _NewImage(64, 64, 32)
    'tempi& creates a temporary one sprite image for rendering
    _ClearColor clr~&, tempi&
    _Dest tempi&
    Cls
    hs = Int(Rnd * scale) \ Int(1 + Rnd * 2)
    ll = Int(Rnd * scale) \ Int(1 + Rnd * 2)
    _PutImage (0 + 16, 12 + 16 + ll)-(31 + 16, 43 + 16), part&, tempi&, ((rlook(mid).leg - 1) * 32, 64)-((rlook(mid).leg - 1) * 32 + 31, 64 + 31)
    _PutImage (0 + 4, 0 + 8)-(31 + 4, 31 + 8), part&, tempi&, ((rlook(mid).larm - 1) * 32, 96)-((rlook(mid).larm - 1) * 32 + 31, 96 + 31)
    al = Int(Rnd * hs)
    _PutImage (0 + 28, 0 + 8 + al)-(31 + 28, 31 + 8 + al), part&, tempi&, ((rlook(mid).rarm - 1) * 32, 128)-((rlook(mid).rarm - 1) * 32 + 31, 128 + 31)


    _PutImage (0 + 16, 0 + 16)-(31 + 16, 31 + 16 + ll), part&, tempi&, ((rlook(mid).torso - 1) * 32, 32)-((rlook(mid).torso - 1) * 32 + 31, 32 + 31)


    _PutImage (0 + 16, hs)-(31 + 16, 31 + hs), part&, tempi&, ((rlook(mid).head - 1) * 32, 0)-((rlook(mid).head - 1) * 32 + 31, 0 + 31)

    _Source tempi&
    'repaint source image with generate color values for new robot sprite
    For y = 0 To 63
        For x = 0 To 63
            Select Case Point(x, y)
                Case kk1
                    PSet (x, y), rlook(mid).k1
                Case kk2
                    PSet (x, y), rlook(mid).k2
                Case kk3
                    PSet (x, y), rlook(mid).k3
                Case kk4
                    PSet (x, y), rlook(mid).k4
                Case kk5
                    PSet (x, y), rlook(mid).k5
                Case kk6
                    PSet (x, y), rlook(mid).k6
            End Select
        Next x
    Next y
    'generated image in tempi& is rendered to ms& as a 64 by 64 sprite
    shh = Int((Int(Rnd * 10) + Int(Rnd * scale)) \ Int(1 + Rnd * 3))
    _PutImage (Mx, my + shh)-(Mx + 63, my + 63), tempi&, ms&
    _Source ms&
    _Dest ms&
    _FreeImage tempi&
End Sub

'========================================
'PNG file saved using BASIMAGE1& by DAV
'========================================
Function BASIMAGE1& 'robo01.png
    'load embeded image into memory
    v& = _NewImage(640, 160, 32)
    Dim m As _MEM: m = _MemImage(v&)
    A$ = ""
    A$ = A$ + "haIkM^P]SScZ5^W4o3]<9k9Y_gDM9K46dC#XH_mJ]G9Wh78Q#`WUCZjOnWoi"
    A$ = A$ + "hOPPPPPPPPPN=jkFd]1XadW?OnSR^M01]JURmaL088XE9NNWEW7bJko_oko6"
    A$ = A$ + "^?]mn^>[jgmaEd]G_7oCKX>8d:EDinh]Q_i^BaoAkCPF[NbloooAdcMnTRPA"
    A$ = A$ + "gGN:SolJ^JKNfNncen?A75DWfNfH]e=NOTmj]mogeaTojCBlH`[a#oSmPPnZ"
    A$ = A$ + "D<fGf;ZFM\GdlO?InSMFWnLQjN?YaQIZ;Cm<Ag?l:6PCnhiH_D=GMOoQ;iT>"
    A$ = A$ + "SiY[aeI\?kcj`fo2gS0Wi[E6#cmoM8?S3;5kmTb12]?:KMWo;kE:WcOh`2hn"
    A$ = A$ + "aSPoCKM0nEOn?cHkJO^?fVEkk1c1>:7gCNmoTHolT1\F=gokH^_O;c;9bnYa"
    A$ = A$ + "oe93h8\B[>gC;lON_nOJ[m[5[1k8aRBm?`oi_6Yn;M^YW]1_kcd>R4oGB[Q3"
    A$ = A$ + "86n7]e1`[kkWKOjj]B[kAoLgjk<95GLh`h#6gG9f_5T3NERbl=bjhm4Gk_B\"
    A$ = A$ + "ON`0B[gVHYUHZo`P`^63\9>dEn_>[9aOn?[jnOC]C]f[#J87RmTbc<gj_>B\"
    A$ = A$ + "hGUnNKbonK26#oRc^Fk7mL?UH0]86Xfj?iC]gkC^:aoI53XdmbAGg?9O0mL]"
    A$ = A$ + "lN0KIM0n:_VoAciFRoc;6`?WS[7WekXa6l?gbH_^Io8<PNi;llN?h\K_In_k"
    A$ = A$ + "YNZUoe660YikB\Oef_5i3lUo[mfV6kgZI0WmHV9NhFOF9_SefFRoS>>`SglZ"
    A$ = A$ + "=hALe<]5?bo>2kG96`Ic7AkSJ\?liPFF3VoMm[EIbmnNLaSCi=iao7llP7fm"
    A$ = A$ + "L0h[3#BYmco<;biGKLh]`o=J\WGnR<63WckO6OM`cWD?o7ho\Wok?nek=8aL"
    A$ = A$ + "2GS3Fboa6c9aMgnLWb1XanA[ohI\P57c<a3gWc?>kMGSo2QKGihT25]_=djh"
    A$ = A$ + "K?7kX]3?Smha#I\ODWlQlWYa0>fhnmjk]\I57HbfJeLXSelfkdfn#Nmo:9ji"
    A$ = A$ + "j9kWH\0Y6P]aSgikTTG\gWn1VXlOl?GjJ<Jo^fmLY9[io:bnMF?`jen\lhL;"
    A$ = A$ + "a5NFCNE:?OC9n?Kj_BlO7\[KJN_fnocWI#<a5CW0[aRH#B]3]kmfjJ`BSkS8"
    A$ = A$ + ";K7ReIM<7#^?P<FO8`oafGDlO[PmC:^cbO;0OnLWg8SeSnZbWMS7I#n_JcgZ"
    A$ = A$ + "]i=o7gFFboeBkb[H=N<g=>?:oWhWi;oWdh\7lOdLJB<7JaLdcMnahkLMb]U5"
    A$ = A$ + "bo9977cCm5jgeRcn=i_e>??VG\:nBAV?^cGP5d6kBNfJ5hoX=UcmKDl`>`o]"
    A$ = A$ + "J^[TODSkZU]DkHTJ_Ja29fZcb2\?cEn_^Teim^ZYEBdSaJO`g=YJ?l?KNV7f"
    A$ = A$ + "jNXUgYdWab1eK<hYoTXVi09Wc\S5ehodR;N2lOdloWS]BSk2g7`O>W9KKdib"
    A$ = A$ + "Uh^eWGVG?ZKkOLokMI[lOBGSA7S5G[[lIU^olOUV?:9kZoMWWWbjAc7`o<?^"
    A$ = A$ + "GPKn1Uh?oV7FPm[B^gi]]L<LbVRkc`lBlkWjRkkCamIoH#KKfe_?4[k[]n?B"
    A$ = A$ + "L0cTo[UnoZlmIin[TkajiR]TgCZ]HNo^Sh_Il3iM5aAhV4WKOHONYLNUb5J`"
    A$ = A$ + "HAYJ`edSToCZ>T`WmWcIRf6?6\genMVH_FR3:=gdJV;a#lFV1JHN8BWkJLFL"
    A$ = A$ + "mo]a7<cl>?IPK9^cniPgWOUV?L>_H1<POgXO^4oW7nQC6?]i0BO^;S3\B<TY"
    A$ = A$ + "4d?c;n_T=dhohkoY`oEM>QQajZf[CI7oGoX?lJWS4gEbGO;o_dOK`joU^VoG"
    A$ = A$ + "X7kJCRnX_obf7W][IiohSodiJIciHSooblOlkk?[n2mE5NPccK`f7?6VVcSc"
    A$ = A$ + "LYaPA_6Fi_kMmo\`^gZgeZlPkYF27Sl1B[g7GB[oWdah23LQofleN#lN^>bI"
    A$ = A$ + "0Yc5MXVH[[1Q7imbFS?j`Ka?cAn_3QQObWIClFncoMdeoSN]<;nW5gkEN7=Y"
    A$ = A$ + "=Gg3KM[nOJLVIkCgSQeo?cmcRa:ZK7kllORiP:mjamnO_aPS`L[9;67^GCi:"
    A$ = A$ + "Gggg;aoiiLPEaoIaVelOY[YdkYO6mJHUoNU[oGnL#Fm]JbhJoT>gAJ^NZ^Ln"
    A$ = A$ + "lOKl1Dn__Gedcl>mjaWLn_B7S9coYmo?imEY?c^koG8gkWfGo?OR5mkkmFAK"
    A$ = A$ + "bLeGajljOnmm_ZUQOgVkeiV[]3N=FJTg2ZmachiE=`KL87YYIL6SknUIS3_U"
    A$ = A$ + "gWnZT4?Vihobl3]\^O:mkN[1W^6SllNhc1lSokB[ToK5iN[UW_G=B<8=6>bW"
    A$ = A$ + "oK:WF?[oggcana3QJOBbYJOTTOIccYO6e7<[=CcYhLMd?_USa<n?QJ1d?>_6"
    A$ = A$ + "QE[iX<ogaAmeoc[jRIS?>4_Y6oO6OOUGWN?hNbO8aQYU3`J^;A6#UHa\L#Nf"
    A$ = A$ + ">HfWjkm>NhFOo_bUal9U9lO9g]``n=MkHWWo;Ol_\:aneKMhJlO]\IFNHRRN"
    A$ = A$ + "moThQLO=WH\Hda6jWYM>Se6b]I?KdfRUnl8Fo?nL`KcgM>gKYlnJeQ\ToSce"
    A$ = A$ + "mi_]SE\nOeFoU\aP?lmI1gI16`KnNilaN5;^Ln_4WAF^G6og:V3DIc[k5W7h"
    A$ = A$ + "UOoGifO9nPD]>J4gRR5FALnf`o9:QhOUS[?KNM^jaQ]cnIAL?_fK[c1]ZmXc"
    A$ = A$ + "oMY#ho8cmSPoS>Wg3n?No]4o_GOWoUR7mL]VkMNQUaiEW3TbicGgo<64KR5_"
    A$ = A$ + "5S;XElmo;[O;lncHmCGSMnQRiKime5T?FLlIAel?m7dl:4onE>7__g[;F<ng"
    A$ = A$ + "e>?W;NS1lfh_oiP4_GGZFDn?]ijNdO;UKY5i3oGNMXb<Pf\nOJc3FA=XNh0m"
    A$ = A$ + "X]Xco5ljoIH]VRaNK0o7GJ\G[P7R67B]_GfC<ND8^gKKfBn#;_W[An^O8YAK"
    A$ = A$ + "?ReKi_WoW2eS]:fGT3\0gWWL8AM?8I<PWiOF;oA4co^7;hOM_B]QCkN\FOoU"
    A$ = A$ + "ooN<_WnkKlo:im\L>A9V>YLLJ7KOfljL;e^Faj]DJl#Zn[WilX>VMImohgoY"
    A$ = A$ + "mnjblONolOg]h?9koFho:IK?J3K5o7MR>m__jhggg7K__\KeO:`liM^7U2=["
    A$ = A$ + "]60g3\HnSEcn2kon\O9VBIn_ee^R^nk:7o[ike63nUkoURW6AoJmoNK3AJkW"
    A$ = A$ + "Hn_JcejQmKTff9kgTlOnM_Ia<n7=oGdmO8XXEdaoAKoMdgoVl1##[#]N__e^"
    A$ = A$ + "7hA]]EK?Yl2k3ogL?W;888888XO7]ZkoJWGokgPoOTf#dn68888888888888"
    A$ = A$ + "888888888888888888888888888888888888888888888888888888888888"
    A$ = A$ + "8888888888888888888888888888888888888888888888888Xheokomo2_="
    A$ = A$ + "0111mTdW?O<AoZfOff1looff_gfe^=?<Rfb>d_OJaOA?no[e_OJcoKY=\ZnH"
    A$ = A$ + "4S1A?^oF]og[a\Kcd>nN^okon_C9[l3e\SUmkMboo]5<UVdnAfo;??l#imnT"
    A$ = A$ + ";nPZ6llFg>Bm]S:]5;m1A>oG\_>X\XnG[iMl:^OeiModHLnZW;L=Oo_bXLMS"
    A$ = A$ + ">Nhah]HoL:I1o7cOGm_o]So5kom4eo#h?fMn??jgkToO;ho>[5dok]JL8We["
    A$ = A$ + "L^>?^o_JLGNGcC\cj\mSJn?]o>[m]P1<i7>4JGWakIS;nDokkEnd_Fimc?_g"
    A$ = A$ + "FIGN0Uim6T_KTi4FU[G]_V6?EN]dn^hbN6lOdn\Jn63Roejo]^i2oWhLbjkc"
    A$ = A$ + "TlNT=NNEalQTSmY`oeMM7SlogVOeZ<8><SoK`g?Mo_I^?^<NMh3RoK4f?[J3"
    A$ = A$ + "WiMo8K1J>G]mgKKPgOCiJ6iENNZIF;bMPoK5ggmMnVfRedTE[5#Ci0<8WG[n"
    A$ = A$ + "VlLCfD_E\oN0n_MImoJMcZno>aoAO=U;Tn<YXi3Y_2n?3iohSbliLB7[5lOC"
    A$ = A$ + "\=jjoDWkkSbkU>^iGoWj5OXeoMTk\Af_T\HnO:Njh_aSYGYeOhkk\6DWfGRo"
    A$ = A$ + "K4AI1MWocXhnJf?2n_IH0]\=edD_\LPfolHK]nSU[eiXaoGnliK?R[3A]ofQ"
    A$ = A$ + "hOJ>7enkPiMJI\8]E]V_Qa0TP:QiHeg7Fo?KloK3ogW6O_1aQaboe7bEM=;7"
    A$ = A$ + "J^T6WedDnO`oMnJ[SeL>`TneGo?^?_dk]ToK46#[IBKJ\Wf2<doGf_HC>?]n"
    A$ = A$ + "<MnG6CGSomXin^eF>m[lj;:o]3ao[hnO:=FTfNSlOdGCi2ajo50ogAQiNB7k"
    A$ = A$ + "\l7IaGmoniho\P3ljJ=DoO2f[33h_4kD_<n_\jJ=8:c8M7^boUjeO6?^_VmG"
    A$ = A$ + "Am?Yki[GK[UKfEn_Ki5meoc_7?[j[ln<=^W??XUof:OaI]8^oFl_mignF_bF"
    A$ = A$ + "kOOnPfO?KMGaiRRim[_?\nOfhog2n_NT1aQIlO3nNoFo_?ImaF>nQjoBjUbo"
    A$ = A$ + "A5=7#R1DjHVe_CIiJ=f?KNhOo#;l3ZccYS9C4g?Rm]VoCdo?hVUnoRihhJ`i"
    A$ = A$ + "k3?n;\iMM_E478>6TiSEnK3mmmhClb^Po3[ogXKVao=Z\PoKamo]Wo[3F<Gh"
    A$ = A$ + "ojP3d<n?B^N]koSKM[ho6ADfA[hohmgEcoUlY]lN;SkVI<HilOC<O_Vo7lO2"
    A$ = A$ + "nIYoNAlONhc;egCKeR5\b7\ClOln^DnOYS5lOPoK\iKBon>bo<J>^J7[KlOE"
    A$ = A$ + "hcV=>L66#;\m>`o=j[;Uo;K<IMl7NDgG:VK6f_ImoGi4JMZWOnNJ\MFm7bH_"
    A$ = A$ + "5in_=okPmlMKl_]fG8bkMhS__fhQ5eJj9f;]m6ioX_VVO_3[oWTM]:Fh3Y?n"
    A$ = A$ + "QeOUTfa?KLGJNEc[;6klV>nk39VZcg?Zm;gG5hR[LlF>n;U3ZdaJBNPFUA\O"
    A$ = A$ + "diMgbeOhkcoUfWWMm?><H<8Zko\5kk1oWD<g<lOV_6D;RmSkkUR_?cgU=7dV"
    A$ = A$ + "H0nl_<n^6oKciodhn8iQ]doGJl`ciLBmkFgLSoC9>[dnNj[oWF>I?b3L_2W\"
    A$ = A$ + "\=OWD>?Ye7CohV>nS6Ceik1oW]a2e:0j1gQViheKTfo\lOF8[Z3Ol9OM0Ub3"
    A$ = A$ + "JCL_OjGdogSoa:k`7kSToK61n?kjg]^IUOhC?6E[]<AkHGRoXc_K9GS7i2JY"
    A$ = A$ + "=hQ]_Vc9ahEkc<H=02:n[5f;YH=;[;8>FgiCPOUenl8f;Ziok4oAEn?jHnWi"
    A$ = A$ + "ioVeWKaHa>ioUl?WS9oeG?K]^F7?X\OI<8O^6k]XfKdcodJ?WeFBAlDn?7Zk"
    A$ = A$ + "FbWH9[CmnM_QmPokYao5K=oB<OBO^=em>>don>DCF4oe?a5CCJOah\0hoZ6o"
    A$ = A$ + "C\WUf<bioF`PHEnWRlOg6;6?^SK;;DjJeKKZekgHEg?2eoXao]jkoacj_img"
    A$ = A$ + ";^Cjk;]?_hQ_amMngnbna7C\fGKml0;\;Yc9DOYnn\PoKd=;iojQi`jH1nhJ"
    A$ = A$ + "YJ=N]><mM?8f6o59ogfcO\0n_Z]37]KTeog=n_NZoK5ogA1Kg:gGjeIJCmkj"
    A$ = A$ + "MnIaZDKjAcomYnoN0VoNWhoLH^nXS9N=f;gOk[n[5SmT>W#Nnjkc:n?]G;]_"
    A$ = A$ + "Eaoial>eaQ6g<WoCH4^X\Rkh8heoKTn>a74:oQ1LH5K3;LMX;=WdckkNWhod"
    A$ = A$ + "77>^mgFcoUNM4^_d[C?GLQiN:iKX_Vle76<O_D<NdlO[nNOkJnhRbiXi?lXV"
    A$ = A$ + "kI<O;YILJ^`>ao=bf:holJNWjh#SK?9n_If\8oGgmMSl1U^?GYL?;Mm_Jd;h"
    A$ = A$ + "M]H?ioXS1Yn=WcAkc\RmSfG[boMh?oG9>`JWcCImoRTo;=cjFm7J\Paiof1n"
    A$ = A$ + "?aLA1OOWF^F3M7c_Pj#k4oWf[UfgCToCbfNO_8I<#BaPROf_ococRfPES1Ja"
    A$ = A$ + "SN<NO6cYbKdWl:FPFWa;o>hoJkOS3mTokLLXe8>7VgaSgdho\L^8_^3_ON>o"
    A$ = A$ + "G:N``l2gJ7ObI#iomBHoZT7J^ke`?eNK`0^_9WC\ClOS\1n?k\O4lOLoO?_^"
    A$ = A$ + "Zk1dcJ>]HO?6_?Si68_[7lOGi?cScdZ;Jih_4ogggbiohOVe]QVho8omCRo["
    A$ = A$ + "Hm#Eic_k3`oEoOooneio:]VVcXFJCESek>kkheTg9n?]G;]?`oIWm1oWNl0h"
    A$ = A$ + "olSoCSm[8ogOm7FF7VbjAiNdn<?RoGAnWMTok<>Xe8>7V;Z=6hE^O=kaSm96"
    A$ = A$ + "m6kWE]WAHRF2oGQLBF4ocSa?VLOPoK`aR1g0oWMfo=coY]FneTWfW?VK]m[V"
    A$ = A$ + "cMYlObio:boIH<hX[og:RoCSmdGWIno>bo]3coFUoWKcJZU=_[1j9k7OnG[i"
    A$ = A$ + "T0ogcRoCkeBk3lOfIoG?oWcceZ>ng9kUEammTceSfAFn#fE?:n?YLkl?kGUo"
    A$ = A$ + "HGiojQgaSlOk6o7WeeKO1]mTV;ZogonlONXFKCEI07Q3L0oa=n_Knkjkc:n_"
    A$ = A$ + "AfF1oWFN9`o1n?C7oG<gEAKgH^H[Vk=L>#7l1Po3lOk0oG]j?Nh;^jgoGHN6"
    A$ = A$ + "og7ongl?nL`BiLV=_3_6REZGOCC<P>W7\fmEhml#;HaG5o7O>XGlO[`_;6;F"
    A$ = A$ + ":nBB;:o;holUoCenETUeLJ>G8co793l_:oa^co]blnAhoWY?_ZJ1[`Wgml#3"
    A$ = A$ + "ON3daH;d8lOYfBgYN<\>4ho6[MhaL^Ejg5S3iaEe4ho\Ml_7I<ogY?XA^7_\"
    A$ = A$ + "McioLHl_g4a[ZV[eco1oG\noIjcJ]7?V?^Jf?eiR6O?_FbmIQ?:OM4K=mSMO"
    A$ = A$ + "7`]#oZfOffQUal`n`nAIoNJ;NHcAl1AJkOiaoA]e>fVn5moN=>hmlA[_nShK"
    A$ = A$ + "RL\NWR9FiH14444444444444444444444444444444444444444444444dkB"
    A$ = A$ + "NoK_0on8PPPPPPPPf;mU=k`IYaommOOFR^o31111m^5Fg3XgXfMn?<732222"
    A$ = A$ + "b;iI=#DOJnaVXogI_8HnGU]STo;]E^__^o]G62222jM9`o]GRcdDcoj3keX3"
    A$ = A$ + "ifnok_[ho[;RRo;moM:bSmSkoacK62222ZThl5Uh>TF[UFg?FKR>7?nkFRYY"
    A$ = A$ + "6Ka\oo^VlJY=7oA?<YJ[Ug8lOmJoXhoXSain1[<kMK2n?8888X_BRQkPmo]Y"
    A$ = A$ + "75nohDjn?>4>g:e0QhnbS\ood]7n?jie;_mO>NjXg\lO\[E?aPdne8lO]bOE"
    A$ = A$ + "cnNcoUJcIS1VKj;kZm\VQPPPPNOZ6ogAUo?^Gkh1oGoS3L^_IhoB__EONRIk"
    A$ = A$ + "8a^I0o7mJeJlWGlOURoZmm9d:a];W7cKn?YWe<4444dkDPoK?4WQK6n?Ye?\"
    A$ = A$ + "5kW=jI0o7mJE;nCkk<`<lOl[IC[3IUhmf7;[OMRHmo`co5222jM;Yj][Po[g"
    A$ = A$ + "W;iK#9n=Yen[Gn?niVfJQmicRGo?JlW6of\lOWnQ6RmF=oWo[oG^maJo1111"
    A$ = A$ + "1Ua]Y`oe:_6oiLYaoa[9^ZWkVfcQ[WWGWG7KjhilJlO;3U:dc_nl[C;[1HDl"
    A$ = A$ + "OYCJ5lOY?[Ui4a]nO9=?g7ggc]74444dkCJLNcF3\e[[m[eAoe7?iO;\nUIm"
    A$ = A$ + "[2lGBmoF^^GWS>_F;lOl[7W3\En_CI0o7mJY6[#j3LFG;hoT^V]6kJeL;]SC"
    A$ = A$ + "Lmoblom<?QLl:nN^mPPPPPf?IeJLEjjg;WB[]kF^^Wee>>^NUnn?:_GBJ7[j"
    A$ = A$ + "eU`oAOUmICaoeaeU_fOLN]A6_Y<U]`0:_nOC8feZD<N9oj8Zfe[UHgEaoAo="
    A$ = A$ + "ILSMCT5DgO[M^9kQeo32ZOIE=G8XFUDmkFgJUo[6[V7lOgFG3ejFEHn6mlTh"
    A$ = A$ + "oTT5lO]NMok6OM\V=nAJ]a:6?X`=<R]kiJYa^=LlW23I?a^[PoCkg[MgalZa"
    A$ = A$ + "jif?]=ehJPemPmQmS`nBiBk9gZ7miEj;RVom]HOne[gWm5=F\Uf5_>U5m9]["
    A$ = A$ + "3_NhomijHBnZj\_Ccoe1GmoM>iKc6?ekedbhiA_FN5o=jiJEo_dabiob>o9i"
    A$ = A$ + "nhokmb\[oWD>YEGogji9oJf?Jo_D^DO]7[>R#^G_i0JYF\[\GgVKCN?KO[KL"
    A$ = A$ + "O]a1mFCmGLlWVOIFn_F[i;aU=KN=ne#b>iaF[CmHkKm95=ceE;nb2n_N_VGc"
    A$ = A$ + "c]jNIjoJUJgc6oekeP?n>MlO7G[4o7ocjR3T5O9mK0:]]bHZiROd^GbSLoC3"
    A$ = A$ + "caN:f_fmjKUmeKCnGg?gGWGkP>gZdaHIkBb__fi1=`oi83VlhnkUo;IE[_?`"
    A$ = A$ + "Fc]dRfMn_fRYlBgcKD;VZEn_AREYSGF4?=jek]boY=f>BK`R[5WE[eikB<TL"
    A$ = A$ + ">`I7CGIM?Y=N^=]Si9JO=o_7fG?^k_Qd7g__3;IO;UkT>Wb:NPJc_jmI^IUO"
    A$ = A$ + "9SakdOCZSafWGc5KYVZ7f^FlPglOgHoHaoF_V=F<7nWRokPW?QlZdkUTfaZN"
    A$ = A$ + "M9i>X_bn\KeH;DK?_FLm[K]h\IRW6mJ1n_hioBKDF]d6mhh?;GncjEjJZ]O_"
    A$ = A$ + "S[VeFlg;EGVonWXmeloNHoDKh>WW2oWA<8Ii#5FC_BBjLja^JigYRkoKiL6="
    A$ = A$ + "Gb]a09NKWio^kW_cm=;SKOf_L<Q;foPn_;7iaoWLF65ko:ioZadeSZMNBlOB"
    A$ = A$ + ":M_V4oHJN<W9lfae`e]dHf<a0cLM0oGllOB?WF>[gGa?Vdf8[aG[iAkQoKfL"
    A$ = A$ + "cda`D<<gN]L<F43];fGcokQm?73?cK^>n_[LZ]7k`I3jMnkFcoalgbS?fcoa"
    A$ = A$ + "SidH^hkg;kcK3Jc5\enGnN>3HfOK#lo[To;4Mon5UT6oGfcNiS`a=hJEgCme"
    A$ = A$ + "BnnaGk?K^GZA_FFd6VaffU_Nl[U437Wek[TH2C\Sm`0:FCGIn_FnoI^VEmST"
    A$ = A$ + "=^mJiHV=6VOMU\_daiYmUTefo\=#6k::3ZoaW7fKOQ?g[gcmPVkFi_EioZLN"
    A$ = A$ + "CU?AI>DYmIMlgQbeOEcoT\_Wco_^nGiab6gc\99GgTe=;i[]nj#iPbIelQoC"
    A$ = A$ + "J\YJN5SE?fV7GUV7GRo[ULe]<^=JL`XG3;cU<jeRVkNdLVcL=JMLZ^oO\[Sd"
    A$ = A$ + "JoUnL=V#jaVfJUo;;of=F=mlmYfYfnkmJF;F^D>YF>VIRSK=?jXcGgMkgbLh"
    A$ = A$ + "F?^Vkc:cO[U?MfinBg[NVnX`oe`iIFnD^o`8on=kmANMgViHoE\?mJWFO_\["
    A$ = A$ + "oaMN`da<KofRiamLMXe[XW[5f?oJ:=Gn88MamFBJ\NI<RO4>^Oeeo;[FmkTo"
    A$ = A$ + "[fHTWGS4kfg=nWco\_BR;\daOK<R?_P7Y:`[ERoKd[YNkkjN[dZgGkHVAk0o"
    A$ = A$ + "EdfoL<\Rm]R3Q>o]6O7On==Wl<cm;aa]Jn?=VgJ\`F5gAWGE[=b?WOEkC_^g"
    A$ = A$ + "[UVWGS_iah\WG3;SYjiJUWKQEOh\>Q`kUTfaZNM9lOdGIOV6o7?OT8oGU[K;"
    A$ = A$ + "amS4?=je8U3o8U;Obi_SL]N[lOOgdFk__J4>?jcYPoJfl_B\JTi;dnW4oWhe"
    A$ = A$ + "KBn?Y]KcoZL<cXAh_\`^cHo`hoJhhJ^?Cb?c[O`SXTf_D^jF]K=YboEilVS;"
    A$ = A$ + "P?7jSjWKehn8[O`<[KANoe6k?K=<nH]4oWla<FM[I_FSL=Z5gKiL8En?ej>5"
    A$ = A$ + "foXWgW[i?5Wg:UKAX?LlA97EU[k^<nW=NHD^TA_F_=n?ngU4]WK[6KQ6G8ol"
    A$ = A$ + "\Po[=94b[Lmj9FVonN>VId>`O5]m?73[HoF>^f]InLXdH[Dm5jnT>_^le=8A"
    A$ = A$ + "n_6ddlOIBKnVMamLiaiD;F>5?gSmiWkX]1]Wc;U1T_U>nA\m[Uo;49O_TLYa"
    A$ = A$ + "jEmcjhjFJnc8a#SNMRfncf66af]ce8OmVmloZBLO9=cci]LO_2[6QGC:_bmk"
    A$ = A$ + "gFH^fTlOYLjdo^WSI6A[WD=7:ho<K=Xhi#c7WKKOSTkZ#1SC53ogHiF<IL_a"
    A$ = A$ + "adA>7]nZEl?SjCbbUY`0FKM1]X^U7eaj=^_GkgkLPA[QJA]gA?fBOF_GGjag"
    A$ = A$ + "Z?KTlG]=n9c:gmLV1^>Wn0Q]F>gBKJW_Z?CSMGHlOVc_5=bc5Nha[2lO]91g"
    A$ = A$ + "a4lOlaE]iOU>VI4mJGKnC[aZoJf_Ui_]NLmIgLF^FFo?jagKkhlJCV[:mgZl"
    A$ = A$ + "OE>_Il;oYoX<fFJOC?VW=_]aao6?WJaaS<GF;O#_]QJ?WgdWUKWlS_EKG[fE"
    A$ = A$ + "_cokmJDSKXUhgA^6ei5lDiiGdd8cYjmjfR_[9nW1_>]=>d2kFKnmASOWiLk>"
    A$ = A$ + "fO3hoTNV]LUf6Q1\jHFZEg`hOca0MOmb7KSPo[dm_EKoFJcjeO]Y]d2Wo87k"
    A$ = A$ + "\]SFFo_IkgebKO8do:>OORkkkV_X#><]m=^OGXGD=n[_cYdh<OmkZ=^JaePN"
    A$ = A$ + "]h[YG[Oooh7O[moA[OIaeH6fQI^6Ia<lj=7TCSoN9YM\ZGG2o7mEfW=ENT:G"
    A$ = A$ + "gAD;anc9YQ]N\_f#_LOAjceRKUJ3e>?ni:EoB\178o7Wk;mnF?nBlRRi\e4I"
    A$ = A$ + "^Bge>ZZfOn_UbQeba<ZRbnUV3HiiDM<D;:nSB>l:7k\S5WccIZejj]ig[8]i"
    A$ = A$ + "o>aoeB=PNiKJNnKSSWSL>glk=j7;E3Jf[1O>M[?WgBKmTW[U_O=NL=f2n?ah"
    A$ = A$ + "V2aDUD]ck_eObhdTT5lO5^^=U_YeHo>mBeieTD9n_N^>GG[FSKeROkmlUnnS"
    A$ = A$ + "Y=69:]lo3NnLMn<U>jK=mB7?oeJGSjSMCnMWIR[YfH[4oE?i:kYO4Qm7iJJI"
    A$ = A$ + "kXWa??ROdKC;Po[1edlo:WghS3]nlK6cG<bhi\a0Fh3]NLXE6`AiedR][9?^"
    A$ = A$ + "6AIoah6\B]aO=5oG3lGe>^FJ;Poc1n_2bbcO7TnhWA[S`PGcfcQdG^ZMgnFW"
    A$ = A$ + "oeBkgCogZaQFJKNN]W]o?Jk\e[QUnTAj3cf_]`7jah#_GC?SkOZJFOl\S=N="
    A$ = A$ + "6fbeeZHZ8lKFHO;l1N?nkmi_;bSfh_#o6222j][F[_5Mk42222222b3m6__e"
    A$ = A$ + "_maS?UOnF_1o0DN<Ad]1Xe?VoFbi][:jJ?B[?Odn48XEYo`ldi_QSOIUHkJQ"
    A$ = A$ + "okhQk;P8Sk3nmO4b^aPH6gS?WGdl?A>>leNFnkHYkaOFnNL_o#_9AWo5aL`E"
    A$ = A$ + ";`o1aeKRoK7onjm7k607f>`oAK3[^]TbmCGo[EG38:n_cLm7<n_6nM[31mD4"
    A$ = A$ + "ho0ogKF9f_Jo^SO2johk6ogn\K]Y\om:J=fNGN^7AaoU\W4ogZJ7ANo7Po32"
    A$ = A$ + "joD4ggGDjX#n6nW3n_W]h\O?M6#`oa7kg7n_Eg>f5n??ngb`Vko_#n_JLfhk"
    A$ = A$ + "4kkC_=n_TViHPN6j=]nOYnk>mlOSPoSbn#O=J6`Uol?9<WWgck2i#g9n_S?_"
    A$ = A$ + "7n?]ahE?n3Mig3mkN3Qok9?^gB]^X[725CLaKPm;eGgUenk\m0n_#\?O]7SH"
    A$ = A$ + "=8gRWoKWooFc_\X<gdaJjLRgbJ1];:beOSO?H?iaMaWg7_0h;iI12mnNn_Yn"
    A$ = A$ + "lKVoSGWSonXI`Rbnk#o?4K;\>P?iioYn=?V7\Oa=F4emoaS5N3SmgZioAim?"
    A$ = A$ + "L>08ihQg`H^>3HPofO1oGHfWFoi=aoMJoG`cmEZOC[ioFZo_C:igCiP`coMM"
    A$ = A$ + "miJlO_1o0DNl`ZonGAOf;aDg?Ff_cfa2ioXnK>gCTiOSRo:e62UoJSioNbO?"
    A$ = A$ + "PNSen7aohagC1YeL=bL`[PoLWR_>ckbhof]i1AmmSIgU5nUXNn_lj][^n[Gi"
    A$ = A$ + "d6^]\Hn?nh`ZkceR7NCfWcoeR<ef<A_nlm7im7hU]GE]oOAYoLBVkNeX[gJT"
    A$ = A$ + "ckGI<`U_lZVGdS_G][mT]R^f0lLTAiOf1OTnlbiI0G5kW4og:b5D>WfcokoW"
    A$ = A$ + "dHa:k_bS7b[og:Vk5UmeHkX[52og6\eeX^^ooc9Oic9Ii6F=3h:h?;Ek_ENL"
    A$ = A$ + "?ICSbnGGkbi:kenlhjBWkZjo[UokPlnhiNi3ZAgVhSmBKc>VgJLcIKPiORd7"
    A$ = A$ + "i1oBR1LU\OJlOl?gSlL]V7IIiIEhoF=oa87S7a4DEJOFd^RbnljPlW3FBUfg"
    A$ = A$ + "\mocLK<n_[?GVoKIa5lfPCSod[AYaodVdhf_ZmEKCWakUZeLYAV_eBmGngAI"
    A$ = A$ + "=IQoW7;ecnJc>gio6EV>7SX8K?Ja9BKJk_gn\fl^\lP:n8[kcm53=?3h7NnE"
    A$ = A$ + "fJ0Jmh\DmdNoL;[o:IcJ7S7aodl][bnkBo?ISBcg[U;hkf\f?EWAJ[dnVanY"
    A$ = A$ + "jKdO32ljSJkc:kO#_VllN:o^0Ud<aoUKK2_JTmYnO9o;OoFcO4]m;e^Xg?ZU"
    A$ = A$ + "eoUjce>^dL#_hohnl\jo=^_VlY\jdeVCiml==n_6Q<bT;co;\=2oG9N^Nm3J"
    A$ = A$ + "\CNVG\7n_dkKc?OWm[Ui6m>oODn??Zog3oSWl7WS[2]Qg#oOVl_FbO6Ym;]n"
    A$ = A$ + "NHmolcnBleLom:hoRbnUJGoamWllO^_N0cNm;mmo;=_KUlOUbaIAn?An_f:V"
    A$ = A$ + "k6_5hodIiN;lOGnjkc[mXn?mJ:E[eCncknblfB]H#?ZoCK;l[eKXoGjJ]:>S"
    A$ = A$ + "8]Ob>B[5BbVDf?[]k1M<>5CTn<N>>7m1b][kiLm`_[aK]:n_X\Oii4ieCLI<"
    A$ = A$ + "nhn_oG9f`Fd\]3]LL]^_nlYO8_>V<MN6K>FD]WLOeMO<OL`RnkI>_G>oWFm?"
    A$ = A$ + "?ZoGJ^UfaIMLF;GK?]O9OlZ\?mJ?Z?2b^a2]H`B?W\Y7oYaOloVnI>?nWUc?"
    A$ = A$ + "UKeaJ<BfUog[Po:JkG\MUZRiX_W_6OYGm:V_ToGZnG[k[=kLWocknG_moMXm"
    A$ = A$ + "`I2\Pm;kj;TCCS[A2`::OE?lOSh_G9oA9k:MLN`ndBOc;kgZO`Ckgbefkn?D"
    A$ = A$ + "^_^W?g\H0ZH\O[Xf`mf`jF[aJ][Fe<f#SeI5f_HofIn?JoWbmm4cg`InNJm?"
    A$ = A$ + "[lAB\NF7[gjeBR1<Nf_J<Pm_FLA`O4=oEdf_ef1hoPlBWifH?SG:kGD]QgBl"
    A$ = A$ + "F9n_XJ?cFCIXHPSWoookmDkGF63`Iola>GZE6#?h?knL>^olMWMNjKVo8Jkg"
    A$ = A$ + "R=N3mOXe;A^[0h_bJ7OF_mSFPoSJggch>DnHOYePbJKimjWgDKXSnIfJaWa0"
    A$ = A$ + "JgcPHel7]\nK]^6MoRf_5Kl6jo#aXKlOOf0n_GfjoUVCie__WaKC[Wo3jMZE"
    A$ = A$ + "cn9No^=\>PFg>XOg:Za`U=WdHODTl7laM9iE\Adf_efaC_o35SfUeo;[]lim"
    A$ = A$ + "`nUjglO__AgVB];JmYXK?#?C];\OQ`omAXEX]6<Wkgnk7;Jn3^=TflH=8Sfn"
    A$ = A$ + "md>NbmOXhdeLlHGk]<FD`o5^0o7T7Zdj;hMLFdlOJ[_B67Xdn?>^M<fkGRSo"
    A$ = A$ + "PJ3\nOHmoPF[fQeNk=coUH0o\9mkcJBhio2IXdZW\Zhn?Tl;B_^4n_SB4X74"
    A$ = A$ + "N?2Gh]GmQo;2n3^6iHnE]O;fh=doQRGA>nbi?O;lO9^?no>?7MOofJ>0n?83"
    A$ = A$ + "4M=TXL5[:fBSoklc3I=0__fNZlO>^nCA`O011m^Efjnm2o]O\SlOYf6hoP\D"
    A$ = A$ + "Ln?jO_>koAne5a0FM=0;^nOH>844dc#R\O_D6#j[AgVB];`o1IYFacD\Vmeh"
    A$ = A$ + "oFiJLEMmoDDdSO####FY<n?QGO;ilfeLlkJk2jgEB\O[<njRo<oeEk3:]nOA"
    A$ = A$ + "?61111]2UH0UN=jf644TmJ7FG;>7Hdn0LOF###_AUbkaO5222bC1^;8888XO"
    A$ = A$ + "EQeA02J?4Vo5WO?jf04dKFA?7l]b0Ao]3_Co6BPPNKRoK:9jfcK#AnLlQ^?F"
    A$ = A$ + "4MK0:VamXoNkUb3\Zo]lJ7DZ>3hoROL8jf0DlBkgFLd][W\f1n?<6Wo__C[f"
    A$ = A$ + "^A=?SKcgHL`e_SgS`H0O[\OD^?`o5gh#dgk3DLSmLYm_a<AgFORJ7bkOnkin"
    A$ = A$ + "5?6CoMm_jO?o9K6Q]YeKiomKAIlO1a0Fjn]ObS7dj>_aH_XmiWeOHaOHMON7"
    A$ = A$ + ":Soh5boYmkHN5c1h\OA`0Nbnmbog_Wg6oGbNBlOA\6XQ?fCio2P1D;?kC?o;"
    A$ = A$ + "]O2n_ei[YlNLn_gfonEnf5U3Q7?LlPcolOlM7=Xea06bcN4lOQMO_D^C`o5g"
    A$ = A$ + "HOdlOGS9Ob6?N3??HY_oOH=X^l=NL=cZa[lng^_o=9=^_WL\`>`oAmmQn\OO"
    A$ = A$ + "alOA]fOLk75gInc2:>o#XSo1aoEki`mFio`g7#oFCdKaKLQ_go_>Ym\8OjiO"
    A$ = A$ + "`co5lOGS5a`n41o7_?7aJ#^;::n_?2eMcN6<?lL_Do0hoDR?<Nnh]J>dHOFL"
    A$ = A$ + "hK8f3B9^hEao5oJoQWok>47laUL^e7oSSmRnLPOS\OWn0F=`UanaZ5_bkoLG"
    A$ = A$ + "4Nn_Um9Fi3^Mo6ThndlOYmoF73NCZ4ogCNl?Jn?Z_7?oghR1XlGAmLHSRoSb"
    A$ = A$ + "lnJ7o9lO;K>O:W;iegZo7[gW#lQ3i4TFo?jlO?Fo_g>;o_RFmcoLGT>3hJGk"
    A$ = A$ + "_glcoU6[5ALGD?ogMPo:ZWolZkSJng`ioHeRSfG5iHSEc1dZUm[DCcSeoSN]"
    A$ = A$ + "YggA6oWAOWoYnJYef=Jok:77S<f[Gk?jcS<jnY=nYe^^Och_=]O7<o7Wo82N"
    A$ = A$ + "4JLK4f>Bn[EIO][oB^?;RXfCjIR]\fcaJ]k>[4WP]\Oam<M<96aYk7UO_7gh"
    A$ = A$ + "o<hNAhLO]n_agdJ0dGo55]NB4?OYCkcbad23H?]cXFo<[mCAa`VVg55kETlO"
    A$ = A$ + "BiiFmJaa]W7iKeR[h<WNdOSfn9kXUggKkB[ea[]M]oc00g73X\OFV[YDN\ET"
    A$ = A$ + "GK6kK1oG^=dHoFkl\AloLfYnZ3[?7_TXco]8>I4n_[a]lGm8F]5oV5GCY]E`"
    A$ = A$ + "FTU[QYBaTlcYUHeJcelNlKNoT_]oRnj5llO[FogIn_bmoli5UnL?jodSIFkE"
    A$ = A$ + ";o:On_fn\\O^BkG[MYmlO\XfOYnoQdl\Kkg?n_KiQMjIm:EW]Dm7nLaI[;5]"
    A$ = A$ + "m;W7Waoi#\N9NWT_XUhlAWCfcLLYmK9GB=OQd_cW[Ja\Gok\fAWoGCl0TJnP"
    A$ = A$ + "FfhnLYm?Z_ERI#RQXdT09f3]cA[]N=>EOnVUccj?_#ijoUR=Ve>eZab77FEm"
    A$ = A$ + "oKWgTaTSHoNoL_jolcOdiWef:UCH6kfZmeZ7CgWGaOebkKegeYRi5oTon\lo"
    A$ = A$ + "G343e6ZFOI1O?oJYVKb7cSm\hgOAdf_iJnYA2S73JUo[fcoLDOAdcok=F#VK"
    A$ = A$ + "ILn_6QA^c19lIchWCnaJkODOKdlOGkJ_hoVYnoX<7m4GXES?=F<O]_a]_5i3"
    A$ = A$ + "kenFco=JoG:6bkh_NICo5\O9o>mOGgXfT_??ZoO8T[khfn?K#3>g_1^c?ifN"
    A$ = A$ + "ViJBZ7n;YoVnj_Xm;5?LngYA57Z;e3oWdL]dlRAW7dcLL?VogK\P<[1hoZ?>"
    A$ = A$ + "K4oG3OVTohJGk5oG[S9Nao=2o9ohVYoo[JodW9M>mdV6anU>G[R;;M]md^[f"
    A$ = A$ + "nUloUFo?=61[joo99d=N\SlLNG17f?gG`nN<>?;oe:Go??\OKSAnEGZD<0?G"
    A$ = A$ + "TdLQB\QSHoB][Ffg\nRJa0bJLn_FmoRc?9b2OPDM7Jm7_beOcn:m?]aMni8G"
    A$ = A$ + "[L?ioZ=W[Ujoda7c7;4^f]dfNbfGK^ReiRZ=f^2o`KDUhkBk[Dn8[J3I9Tb7"
    A$ = A$ + "X=Qo[7kkE\E?lGBimWe_7]mKILhT2?`igLF?nJ3n4bmd2oWhhS0oWg]C?ho^"
    A$ = A$ + "j?beeFAM696`FVSejLaMSo[UaQBeomRok<>CHlNEL7kZmGEk8JkoFEYk9Cjn"
    A$ = A$ + "cl<n;;OX43XSl7;S_YA9M^cbN<SmGF\8Qo;J6#:cGjm?Ul>daJ9foBWWd[[Z"
    A$ = A$ + "]jAMWBikF53X_m_b\Ok23H]joAaoiYMgMk7]oOen18maVEaMWa0nI=?KfMGF"
    A$ = A$ + "`o]kB^Fen\>P?EOOdLoeJGIi0FhmYmDF_1M6`oni3do\N<8jjoU\O]ffCgn["
    A$ = A$ + "XM4]mQZ?f\BOo]ln_L6#`o5IKjm5_5]n`HnTN_gS9??6#^HIFK\omWceHoAT"
    A$ = A$ + "eo;aF^ReMJW]o:J7AKOXjS?Qco9\60AkGFYoWbomDkkk8o7D<a1lkgClmP1L"
    A$ = A$ + "jnfoaaEN^f=^a>i5KZM4<o1O<V:_7ogMkkMk8Jk3EN\AB[`^lLm_In_Elk_M"
    A$ = A$ + "7T7eGPnMd=f_S?D05aL2P1LlneYK]`L^\iTW7W]lOk0o1g6Lki=oe>KO?K7A"
    A$ = A$ + "KOXbS=Nn_m;ES;4F;PgfH?hoPN;ZUke<\k7UD3JefgEom1QYCYoain\d74Mm"
    A$ = A$ + "oMOmgRfnHmoN_:Bn_cH3RNKSkdhOnof\4MKcWn:Nn__MA30ViH\FUZ5m[6WN"
    A$ = A$ + "bfmihn[WkCHmohb0n_8i?dHIG1[o>KoEd>Rfn#m=f\JOoKN<WbOcOOd]=O6W"
    A$ = A$ + "__F4Ag^PF[>:T_i6C#0iRhL:oj[7A6OG=n?bmUIENIDo72JOeCWkHWe[Vok1"
    A$ = A$ + "f7QZ[4oG2fPcoAolXhoh[;e_N\Zhj0:aoIlJo111]gjYcM\kRn\OObS1Po3j"
    A$ = A$ + "[n5hoTNFUAkg\X_YZ2[oGd]K888o4FgmhEb_odmo8>3JgioTH0SfWiNO6[m7"
    A$ = A$ + "444444TcZEn_XJK_]kCI7nNP3111111m\E[on?R^M211]7jo3#EK%%h1"
    btemp$ = ""
    For i& = 1 To Len(A$) Step 4: B$ = Mid$(A$, i&, 4)
        If InStr(1, B$, "%") Then
            For C% = 1 To Len(B$): F$ = Mid$(B$, C%, 1)
                If F$ <> "%" Then C$ = C$ + F$
            Next: B$ = C$: End If: For j = 1 To Len(B$)
            If Mid$(B$, j, 1) = "#" Then
        Mid$(B$, j) = "@": End If: Next
        For t% = Len(B$) To 1 Step -1
            B& = B& * 64 + Asc(Mid$(B$, t%)) - 48
            Next: X$ = "": For t% = 1 To Len(B$) - 1
            X$ = X$ + Chr$(B& And 255): B& = B& \ 256
    Next: btemp$ = btemp$ + X$: Next
    btemp$ = _Inflate$(btemp$, m.SIZE)
    _MemPut m, m.OFFSET, btemp$: _MemFree m
    BASIMAGE1& = _CopyImage(v&): _FreeImage v&
End Function
Reply
#16
(12-10-2022, 03:49 AM)Pete Wrote: I bought 2 sex robots once. Big mistake. Now I'm supporting their whole family. Big Grin

Kidding aside, nice! I've got to show this one off to TheBOB.

Pete

ROFL!!!
grymmjack (gj!)
GitHubYouTube | Soundcloud | 16colo.rs
Reply
#17
@James D Jarvis this is really neat. Thanks for sharing! Also huge ups for sharing screenshots!

Are you planning to add animation at all? Big Grin Maybe flashing lights or moving limbs? (j/k - this is great - and that's a PITA)
grymmjack (gj!)
GitHubYouTube | Soundcloud | 16colo.rs
Reply
#18
Well flashing lights and moving limbs would be neat and entirely possible. I might get to it sometime.
Reply
#19
(12-15-2024, 02:31 PM)James D Jarvis Wrote: Well flashing lights and moving limbs would be neat and entirely possible. I might get to it sometime.

It could be a really fun thing to use your program and make a simple memory matching game too. You could extend on the idea of simple matching by adding random elements (like a matching game rogue-like lol!)

Imagine matching game with your robots, but maybe when you match a certain kind it changes into a mini game with a robot battle like archon! Or even a turn based thing using a pseudo BASIC programming like turtle language?
grymmjack (gj!)
GitHubYouTube | Soundcloud | 16colo.rs
Reply




Users browsing this thread: 1 Guest(s)