Page 1 of 1

DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 4:56 pm
by Dav
I've been having fun playing with the Speech synthesis in smart basic. This program is the result. It is one of the ELIZA type programs. It tries to fake an intelligent conversation with you. The speech synthesis makes it more fun. It's based off of an old Qbasic program, and it responds like the old Dr. Sbaitso chat program.

The program will create a docdata folder in the current directory. It's needed files are included in the code and will be created by the program when first run. I know this is a long program to post. I'll try to put up a direct download of it.

- Dav

Code: Select all

'DOC.TXT v1.0 - A speaking doctor
'An ELIZA or Dr. Sbaisto type of program.
'Tries to fake an intelligent conversation.
'Uses speech synthesis via sB SAY command.
'Very messy, ugly code by Dav, APRIL/2015

'NOTE: Creates docdata folder on first run.

'things to do:
'add log, time, date, battery level, ver,etc

option base 1

set output font color 1,1,1
set output back color 0,128/255,128/255
set output font size "36"

say pitch 1
say rate .1

gosub Init

'=========
EnterName:
'=========

call TopBar
_say ("Please tell me your name.",1)
input "Name?":name$
if name$="" or capstr$(name$) = "NO" then
  _say ("Come on, don't be shy...",1)
  goto entername
end if
if capstr$(name$) = "HELP" then
  call Help
  pause 1
  goto entername
end if

call TopBar
_say ("Hello "&name$&".",1)
_say ("I'm Doctor Pat, a friend.",1)
_say ("I am here to help you.",1)
_say ("You may talk freely, our conversation will remain private.",1)
pause 1

call TopBar
_say ("So, "&name$&", tell me about your problems.",1)

'=======
MainLoop:
'=======

do
    input ">": i$ ! you$=i$
    
    gosub CleanInput
    gosub CheckForCommand
  
    for k = 1 to kx - 1
        C = instr(i$, keys$(k))
        if C=len(i$) then break
        IF C <> -1 then break
    next k

    kd = k
    if kd <> kx then
        tag$ = mid$(i$, C - 1 + len(keys$(k)))
    end if

    do
        src = 1
        do
            s$ = sd$(src)! r$ = rd$(src)
            src = src + 1
            IF s$ =chr$(46) then goto DoneRead
            C = instr(tag$, s$)
            if C = len(tag$) then break
        until C <> -1
        j= C+ len(s$)
        if len(tag$) <j then j = len(tag$)
        temp$ = left$(tag$, C - 1) & r$
        tag$ = temp$ & mid$(tag$, j)
    until forever

    DoneRead:

    do
       C = instr(tag$, chr$(38))
       if C = len(tag$) then break
       if C = -1 then break
       tag$ = left$(tag$, C - 1) & mid$(tag$, C + 1)
    until C=-1

    if right$(tag$, 3) = " I " then
        tag$ = left$(tag$, len(tag$) - 2) & "ME "
    end if

    ans$ = talk$(top(kd) + num(kd))
    num(kd) = num(kd) + 1
    if num(kd) + top(kd) > btm(kd) then num(kd) = 0
    for tmp = 1 TO kx
        if top(tmp) = top(kd) then num(tmp) = num(kd)
    next tmp

    if right$(ans$, 1) = chr$(37) then
        ans$ = left$(ans$, len(ans$) - 1) & tag$
    end if

    if left$(ans$, 1) = chr$(36) then
        ans$ = name$ & right$(ans$, len(ans$) - 1)
    end if

    ans$ = lowstr$(ans$)
    p$ = capstr$(mid$(ans$, 1, 1))
    ans$ = p$ & right$(ans$, len(ans$) - 1)

    if you$<>"" then print "You: "&you$

    _say (ans$,1)

until forever

end


'============================================
'              GOSUBS / FUNCTIONS
'============================================

'===============
Init:
'====

call TopBar

doc$= "docdata/"&chr$(46)&"doc.dat"
if file_exists("docdata/") = 0 then 
   print "Creating docdata/ folder..."!print
   dir "docdata" create
   out$="This folder contains data for doc.txt"
   file "docdata/info.txt" writeline out$
   out$="Erase this folder to uninstall doc."
   file "docdata/info.txt" writeline out$
   out$="captaindunsel:199833akbejj6229-11j"
   file "docdata/doc.dat" writeline out$
end if

if file_exists(doc$)=0 then
   _say ("Hello there!",0) 
   _say ("Before using this program,",0)
   _say ("a data file needs to be created.",0)
   _say ("This only needs to be done once.",0)
   print
   _say ("Please wait a few seconds...",0)
   gosub makedata
   _say ("There, it's done!",0)
   print
end if

print "Loading data..."

file doc$ readline ver$
print "Doc Database: ";left$(ver$,18)

dim talk$(1300), keys$(1200),sd$(15),rd$(15)
dim top(1200), btm(1200), num(1200)

for r = 1 to 14
   file doc$ readline f$
   f$=de$(f$)!sd$(r) = " "&f$&" "
   file doc$ readline f$
   rd$(r) = " "&de$(f$)&" "
next r
sd$(15)=chr$(46)!rd$(15)=chr$(46)

kx = 0!rn = 1

while not file_end(doc$)
    km = 0
     do
        file doc$ readline f$
        f$=de$(f$)!if f$ = chr$(33) then break
        kx = kx + 1!km = km + 1
        keys$(kx) = " " & f$ & " "
    until f$=chr$(33)
    do
        file doc$ readline f$
        f$=de$(f$)
        if f$ =chr$(46) then break
        my = my + 1
        talk$(my) = f$
    until f$=chr$(46)
    for kd = kx - km + 1 TO kx
        top(kd) = rn
        btm(kd) = my
    next kd
    rn = my + 1
end while

return

'=================

CleanInput:

    i$ = capstr$(i$)
    
    itmp$ = ""
    for o = 1 TO len(i$)
        d$ = mid$(i$, o, 1)
        if d$ = chr$(33) then d$ = ""
        if d$ = chr$(46) then d$ = ""
        if d$ = chr$(63) then d$ = ""
        itmp$ = itmp$ & d$
    next o
    
    i$ = itmp$
    i$ = " " & i$ & " "
    if i$ = "  " then 
       i$ = " " & "###" & " "
    end if

return

'=================

CheckForCommand:

    if i$ = " HELP " then
        call Help ! goto MainLoop
    end if
    if i$ = " CLEAR " then
       call TopBar ! goto MainLoop
    end if
    if i$ = " BYE " OR i$ = " QUIT " then
        _say ("Talk to you later!  BYE!",1)
        pause 1
        end
    end if
    if i$ = " RESTART " then
        call TopBar ! goto EnterName
    end if
    if left$(i$, 5) = " SAY " then
        _say (RIGHT$(you$, len(you$) - 4),0)
        goto MainLoop
    end if

return

'==================

def de$(string$)
  f2$ = ""
  for y = 1 TO len(string$)
      f2$ = f2$ & chr$(asc(mid$(string$, y, 1)) - 1)
  next y! return f2$
end def

'=================

def _say (a$,pre)
  say text a$&","
  if pre=1 then print "Doc: ";
  for i = 1 to len(a$)
    b$=mid$(a$,i,1)
    print b$;
    if b$="," then pause .45
    pause .04
  next i
  print 
  do!until saying()<>1
end def

'=================

def TopBar ()
  text clear
  print "-----------------------------------"
  print " The DOC v1.0 | Type HELP for help "
  print "-----------------------------------"
  print
end def

'=================

def Help ()
  call TopBar
  _say ("Here's a tip when talking to me:",0)
  _say ("For best results, talk to me in complete sentances.",0)
  print
  _say ("Here are some special commands:",0)
  print
  _say ("Type RESTART to start over.",0)
  _say ("Type CLEAR to clear screen.",0)
  '_say ("MUSIC toggles music on & off.",0)
  _say ("Type SAY 'text' to say your text.",0)
  _say ("Type BYE to quit.",0)
  print
end def

'=====================
makedata:
'=======

hx$="" 'doc.z - created by Hexy v1.0
hx$=hx$&"1F8B0800000000000003C55DC992233972BD97"
hx$=hx$&"59FD4347CE28BB2EACD4CC49A61305922089CE"
hx$=hx$&"5838B1248BF31BFA7F93BFE7EE002232B36A24"
hx$=hx$&"8D4CD6DDC95810581C0E5F9E3BD07F3AF687E3"
hx$=hx$&"7F4CBB5377DE9D4FDDEE2FFFFAAF7FFAEDF7AE"
hx$=hx$&"9FAE87D3BFFF76EC7F93CBDF4EC7EBF4DB74B9"
hx$=hx$&"8EBFC5EBEBA9699AAF5FC218E54FF73BFEF04E"
hx$=hx$&"AEEE110FEF61FA9D7FF5815C3F86E5EB972417"
hx$=hx$&"89D7FA64FCFAA57BFC8E3F7A8BD76F91D76FF6"
hx$=hx$&"116E136F52A78570DD45AF6599FCEA9E9F9D97"
hx$=hx$&"E3EBD72F8730CD613C7DFD725CFAF9EB975BEC"
hx$=hx$&"93949DAE496E0E693E5EBF7E79FAFAE55F76CD"
hx$=hx$&"AD8D618ACD69E8BFCDCD2257D372BC366DE82F"
hx$=hx$&"4BB8C497AF5FE66B98BF4D4D3FCC4D68FA748C"
hx$=hx$&"CD3D3C9A7968E6D0BEBEB0D5668CA16D1FCD74"
hx$=hx$&"1D96F6C4A278D9E053949686E7E126B7A97F4D"
hx$=hx$&"FDA5493DAE277DF51AE34D1BBD0FE36942CD18"
hx$=hx$&"E814DBF3D72FDA2D56D6A6D7C81AA5B6BA8BBB"
hx$=hx$&"E63ADC9B41DA9539C0A7FBAF5FD0EDD8B60D28"
hx$=hx$&"25C34CDF3A6941DF36AFFD707F16825D1F8D74"
hx$=hx$&"21CDCD3434A9BB0DE31CFAD95ADFEBFB136FB4"
hx$=hx$&"DF4DF22FD337A9791E1F6CE67E95196E405B69"
hx$=hx$&"E71ADEB48D76185EA374484886B2D7D8DC8669"
hx$=hx$&"4A87562EDA708C933510A657E9A3DC4C318C32"
hx$=hx$&"A6136821D401019A2EF5A75D13FA13ABBC27A9"
hx$=hx$&"698C47A950FA300D5D64BF2E13872D2DA19556"
hx$=hx$&"665D5BC8DD40AFC613C67596FA38E52007E608"
hx$=hx$&"24D9F92031B8BDCDF67F36E741DA8FF80ACF73"
hx$=hx$&"27AC966658668E1E949F07A5717388330B8556"
hx$=hx$&"D8E1F4E097F2FCAC5F8E8F061DD9F1EE187A19"
hx$=hx$&"AB5495649A1E4E53924F9A18A39183FC33F4B1"
hx$=hx$&"A26C7C8BA354962286F4ECD30426F156A40261"
hx$=hx$&"E9B1D7F7A030A979966FA4E7D21DA113BA3635"
hx$=hx$&"DA7B2974F4598A3F6E719C2769F35929752EDD"
hx$=hx$&"954175C22ED500846FB09A84EF857F84FDEFC2"
hx$=hx$&"4060EF79C8859E33998C3947124BDA7AF08990"
hx$=hx$&"C018381C84A8CAF97BE77BE9FC8A11E57EAF1F"
hx$=hx$&"7FCBDF0A8D7A0E11CB427A6F4F264EA17C201D"
hx$=hx$&"02159ACB3008434EECF941477A9CE309F5737D"
hx$=hx$&"A78AF7D75D668F85EC3240ACA9A4EBC11EA113"
hx$=hx$&"220CEF69BE3664CA56C4CFAEB908B58436FDD0"
hx$=hx$&"DCC641D8BEB3B500412553AD3C788933E9258C"
hx$=hx$&"33CBACFA24CCA9235BE64945737B5DC5F99361"
hx$=hx$&"140E10D28FE9948E4B3B2C53F3B7254E731AFA"
hx$=hx$&"290FC0C876720E9509FC639115C2DE6DC8DE58"
hx$=hx$&"81D380FA590C63C353A9A67B482FA779D5C7D5"
hx$=hx$&"07A0626E2CB7AB8F5143A12A2620B1432A3B66"
hx$=hx$&"FC950908BAC4AB5B48475BAE597AE1EB8B0C54"
hx$=hx$&"05FFA8D71064D51477EC3785D3E0A269B8EE58"
hx$=hx$&"89B029AAE9303E9367BFA887458563A4E1F8E3"
hx$=hx$&"98487EE1B369E895777CAA4CE0DAC8F1C4EA07"
hx$=hx$&"5BC8226E26E1B8145AED969148D9B008408ACA"
hx$=hx$&"2B4A1F4476818775052591656FC68D72853E98"
hx$=hx$&"6C2751A8762823CEC3D00A67E0E57DB8EF6402"
hx$=hx$&"A2ACD4A4E20B6A2AFD5DC4355ACC73C19E1B7F"
hx$=hx$&"412C9A32C3CF2E8BC617AB4F2844A984D58512"
hx$=hx$&"7B4E5126A9D0E93886BF3FB2DA242D4D8CAE98"
hx$=hx$&"D2E4ED84474235FCF8FC72A85D7CAE872D750C"
hx$=hx$&"4D7E90B90D77E0B73881E0108E0F21DE9E6481"
hx$=hx$&"8CA02A169A0EBD8C889294525D7834F10B59F5"
hx$=hx$&"F7A13FC5F1BCB43A30AFF599360D6FC137FB72"
hx$=hx$&"7B0DB7DB43095B15F6E1532AC04C207F17DA9F"
hx$=hx$&"D338CD7906A0FEF74E8F48E9D38557ADFF1C23"
hx$=hx$&"C89A45BE4AFB539829CA2A361B9BD80D5CF1A5"
hx$=hx$&"37538CCA317CDF07E31259BFB8C6F48124EC64"
hx$=hx$&"51FAB69241A8D370DC69DDCAE3A115EEEAA7A5"
hx$=hx$&"4541E5915C8CB3A02C24930A8EC8E2134F5D74"
hx$=hx$&"1E02969D2E166894648AA1F09ACB7B0CE010DB"
hx$=hx$&"14DFD4D2C945A52F42F5490D0132BB5A430317"
hx$=hx$&"26CC0AEA31632DE821D3DEABD72412478AA60F"
hx$=hx$&"03450DA52825F794C0F6598A4A4908A4E73C1E"
hx$=hx$&"155A90E752256C3A9A0F97A10957D1F7EB4EEA"
hx$=hx$&"78EE6A513D7B59A832697AAFF7268AA4EA5D73"
hx$=hx$&"30216C5C148A3600F5A374AA17AB295B135671"
hx$=hx$&"E14929754EA788A7CEC44AB964926D1A6CFC64"
hx$=hx$&"923B2C609068389FABC235FDDE13CF67CF7473"
hx$=hx$&"DBDA92E5EB175F722A91E81C50E7A8F168CFE4"
hx$=hx$&"AB295706869F2A03D3663C74A057D0F993B74F"
hx$=hx$&"BABEB144CC56374B6CC329FCEEBD80F919EB3C"
hx$=hx$&"534C69F77679214224ED6D49141E7DCE0383FC"
hx$=hx$&"10412862E126566D7C379A49DC035AE8412DD4"
hx$=hx$&"B5317D4FD375D5E5E1FAF2F2D2A836E864AD8C"
hx$=hx$&"41A6AB8B7936C09B50B7937ECA3A846F9FC90C"
hx$=hx$&"AC63F679751904953E9C8B155DBA7E19D44093"
hx$=hx$&"418911A0F2CF5785CF0BD530849C3CAF5F6682"
hx$=hx$&"64E96B86D08B1A09C215A6D62B93F4B95EDB99"
hx$=hx$&"922B5ABC5BC4D174CC3C0E0B1EBB4312FB66CD"
hx$=hx$&"A1CF2BEF4C649C195BD625085235374D667603"
hx$=hx$&"5890160F270805E04228DFB48390264BDD736C"
hx$=hx$&"E7ECC0ED739787F32CDDC0872017F9894AC078"
hx$=hx$&"4AEC339864A0BEAA496DA17C1FFB3F86873F26"
hx$=hx$&"51215A709F55A055FEB2A164A62D6739152A9A"
hx$=hx$&"BEF6E5605351494D71A8540D276800976AEF84"
hx$=hx$&"656953BA04DD282D3610D387E1F450D388DE2B"
hx$=hx$&"BEA25E1D9E6BB787726CE3EDC87087E5725593"
hx$=hx$&"47D6C5E425BFCD8524454298FFBC913BDE1FE5"
hx$=hx$&"A683B8808B090170749B3A71A228C58BDBDC85"
hx$=hx$&"C7418BD090EDCD6BDA746A523FDE3FDBB969AF"
hx$=hx$&"6A07AB72FB8014AADD82BC2668A0FA8234E7D6"
hx$=hx$&"CD0731427B31F045AF483F131715544F2E9BB9"
hx$=hx$&"48FA7C69C349EBC12247D5EB89545F4EE62C4C"
hx$=hx$&"09E2CA9B73C9AE38C338DCB9CEAFE249561A2D"
hx$=hx$&"70A6950354FCBD1807DAD2FDD4CDDCC8D5328D"
hx$=hx$&"59334C6CFB660CB211BCE07135865F9466C6CC"
hx$=hx$&"B5DC7CDEAC9143D415E206D4715095207F373C"
hx$=hx$&"F0FCD1FA3DC458A9B4BC38663581C64E0C1BD7"
hx$=hx$&"011F366B562D2631CB3BDC58B7558A7471DFE4"
hx$=hx$&"79AEEDCC465D0FF3A24D9E81296AFDAA18D1A0"
hx$=hx$&"0848613558BAAA04530FB40973BB1D5682D063"
hx$=hx$&"63304CDA769964829BEFDF370B4A89E3E22FDB"
hx$=hx$&"6BE4128A9A71E8F2886BAAA28B9C7B79BBABAA"
hx$=hx$&"9AD4A5DB37D533AE812052091F54A4E22B993D"
hx$=hx$&"778556A689525E88233C6F06355CE89AD4C62C"
hx$=hx$&"D9D6792A468855A2AB232B482C60122AF7DE38"
hx$=hx$&"A358BA69EDE87321D8CAA34DDCA5298E143EDB"
hx$=hx$&"566A159EB54FBD2442FFF089978FF6AE4CB9B8"
hx$=hx$&"61DEC7D05BC355DDCFAB62E634F7F1473DCAE7"
hx$=hx$&"A6A244A561735FBC9257425367D18240299D2D"
hx$=hx$&"314653FA371178EA52AAEB6D563A31ADE77FA0"
hx$=hx$&"C39761FEB0C3EF5FDB13555EA214B7D3041ED7"
hx$=hx$&"59522EC813714AF1A38F397ECE6DF84CA34332"
hx$=hx$&"3E57537A49F422F373032ACB3D56F1E8FE3A31"
hx$=hx$&"0C70A0BD3646DF99C78786C9CFE838C8961FE5"
hx$=hx$&"9E15065DD106956271A54B73CA1E75FEBA7600"
hx$=hx$&"8F628A5ECCB16BD399C20E057D50A9528CFE62"
hx$=hx$&"F65109935E6D96A594D8410B58612DB801AE2E"
hx$=hx$&"37EF116FF36230C5F9029E3E72284A7E571EB0"
hx$=hx$&"AEA0C584972EF04564122182CE22BDC99AE860"
hx$=hx$&"98E7D8DD5863E827D15F3A96352E65DAC271B7"
hx$=hx$&"D56CAADFA936DCE4B88A62C43AC92E6D38ED6B"
hx$=hx$&"A54A131E9A38513EAE205EB6595B1B90B7B3D5"
hx$=hx$&"6FE613B19D686EA34AD0E1BCD67C0AD654B8F0"
hx$=hx$&"BE283F1512663FA98FE7ECB069186A42DA14DF"
hx$=hx$&"1ADF1DA2488D13A81BC6399D1310227B4D77DF"
hx$=hx$&"B4B33CEAC43B886326B641BD46688AD63C5768"
hx$=hx$&"824244613AED95073C54053A282E636A83908F"
hx$=hx$&"AF2A6EB23EE429ABC4AF8A5017D4463ED76999"
hx$=hx$&"2C3568ABD10EEF9E42462B8965A3D085537B79"
hx$=hx$&"572CF169D64F920C0AD816265FAC81DBA258DC"
hx$=hx$&"40027CCC7335EA9845A71B2E7D989751F18732"
hx$=hx$&"6B563EA953600C0AA14ECC7C9FA18D2C5F4223"
hx$=hx$&"133BBF1BF31E96B31825910C3345C0DC5DD735"
hx$=hx$&"DF9B32A54722C2056D369352F9F2184A74422A"
hx$=hx$&"3344592D5BE2E7E8084123A0F0AA7646465614"
hx$=hx$&"F9CC1D8FED14F72BD4715A267272455E771D1D"
hx$=hx$&"ACC447953D2803423C4755DCFB0A0B6FD31B93"
hx$=hx$&"F97B28A691A06F442F945891FD4CF6FB6D2AA2"
hx$=hx$&"993D4607F4C1401B14AB4518F440F8700D8929"
hx$=hx$&"666A162705982F48F49006630EA7D10F2E3099"
hx$=hx$&"4ED02546990FEBB478EB700B60BDEDDE4F6EE9"
hx$=hx$&"1682775C567ACBA664CD495FE66BE61F0E85A1"
hx$=hx$&"22592B39B061213D753E8B59AE3EA5DBB7B9B7"
hx$=hx$&"FBDA17CE6BDBD69B0BBFEC1C1741332D974BE4"
hx$=hx$&"A452C4ABD7B6CBB68046B040575B3098D253D0"
hx$=hx$&"705E060CB77247650ADFE2EF644C9ABBD1C535"
hx$=hx$&"E79A52665965055BD697A1C1B2E47276574281"
hx$=hx$&"4A8DF5F96C606510B20C8A5CBAC0F9F616557D"
hx$=hx$&"42BCE3CDC900BA050C6B362C8720DCDA10E333"
hx$=hx$&"5936AD086A22D8E59F1456059A993B5B316391"
hx$=hx$&"C7107EF771A043EF56FD346C5D594A3BF8CBEA"
hx$=hx$&"76B30991352AFA5EC04BE3F8F038D8A8965A87"
hx$=hx$&"DE421C821D1A9400134DB13FA1D9730B2137B9"
hx$=hx$&"E3A622F036C6B31AABE26CD551EC701BDAE102"
hx$=hx$&"9879A5BE08329415E0853817FA21D73F0293B1"
hx$=hx$&"9F188A674FA10D8E8BD9E30C03DACF6476829A"
hx$=hx$&"3A8C0F9E47629573FB304949B098AF4CB8CCBE"
hx$=hx$&"6065C8C0C90E00388F6958A616B848189DF88A"
hx$=hx$&"3F0B156F37E0A1EEFB6ACB151C7F4A9388F143"
hx$=hx$&"81004A11EB9A5A5B42DF2416982A9ED22D38AE"
hx$=hx$&"BA6014A7C99EA2F6BD0B9774CC609A0F1B8B5C"
hx$=hx$&"6C1695B1CC09A01B6748C8F7E62383C63E91B7"
hx$=hx$&"1671AC5FEE3701BB9C97E0D68FB1A7144B9FBF"
hx$=hx$&"43B714A5BE2655E6BBA646F6DF35E20A7DD315"
hx$=hx$&"6188EDA0761F8E695AF5677EDC629EA71A8AA3"
hx$=hx$&"D2CA88400E5B29D3896AECCC6C3D46F1D252AF"
hx$=hx$&"AA147D5E7A7B240518D6C948505E051E4637B6"
hx$=hx$&"79CA8EBA9B7FFB1A8134F3E4A50ECDD6D7932F"
hx$=hx$&"CBBEA9D479811EF6D90F916F88A721EC718B83"
hx$=hx$&"904041402243629442F00ABFB933E3DF14EB96"
hx$=hx$&"069A522EE3FA9B52B51E3A08EBBDA2757AFDAD"
hx$=hx$&"307DA47B563AFEE259354F6650ACDCA20A9092"
hx$=hx$&"152764EDA1D015C578647F287FD20CF75E21EF"
hx$=hx$&"6F270F50DF03A2062861B19E710DC0F23BAB7C"
hx$=hx$&"2392087554AD01466BEFE1A1F47693CACD6E19"
hx$=hx$&"2E83A5620E8BF40C9D546500B0AD13FD963296"
hx$=hx$&"577C9BD0B9E331100A29A08CE5DC0C300E5479"
hx$=hx$&"EECA57CCEF21888D40D552601E52397F8C413E"
hx$=hx$&"BF93F2D1D40BF28182785CA6B26BB3588BD62A"
hx$=hx$&"E2342C87D92B2419D2ABE92BF20FF1C18C3ADF"
hx$=hx$&"55554DA28345871C63D6F131BA4D485B61B296"
hx$=hx$&"AC363307A8EB10D8EA521BC6343F5CD4D5693E"
hx$=hx$&"4831E13064E67AB10A6992AC9AA1A683A2F234"
hx$=hx$&"272C87525AE74489F9886EC57D2A5C7C66C261"
hx$=hx$&"1ADA05F92F480E4AB3703A57D78270EC340724"
hx$=hx$&"FFF88C1C1D17EE84EFC5E4ED1D1CF3E912B5E5"
hx$=hx$&"95EC362B97FADD6C53337926F85B6E51692BF2"
hx$=hx$&"CD5AEB2BF267BA5E15BDA2D3D2EBB7AD64AF35"
hx$=hx$&"281002A2C19F24E718CC37AB7D1B2EDA3BA1DD"
hx$=hx$&"258DADA5E9E8CDF7FAC6DE287969ADB30BD5AB"
hx$=hx$&"0C62896130CF7938EE63D5258D3A70A72A1F16"
hx$=hx$&"4C008B6A6FD16382103439A65B185FDB58AC07"
hx$=hx$&"AA852BDD51D19FE0B1BB3C0197C7E938267551"
hx$=hx$&"0008C8B5CCF1648B1A859AD53865DC87E19147"
hx$=hx$&"7A4070E4DDF5CAD0C8E8E6D8941239F4751716"
hx$=hx$&"9D752E330A030B4344B1101BC58E8BAC85EA53"
hx$=hx$&"D577CE957FC8F7628B2809CCDE6A8749589E42"
hx$=hx$&"8FF9192359CF6D025029778E5E86E6584DDDF0"
hx$=hx$&"6A896ECA5478D60F63795691C73E6F2DE90352"
hx$=hx$&"20ACFB288472C2D444A978FD3042542D374DD0"
hx$=hx$&"196E6AB758E12C803C136C42BAE1F8A8C50013"
hx$=hx$&"B2ECA574626F7CBDFE4AAA7D85BFA3DFD52912"
hx$=hx$&"6B5B6BDBAECD9B57636958F3B800C0A9C20529"
hx$=hx$&"9B46CCF40031FC1B05D1A5D74923066AF81308"
hx$=hx$&"0027FA9512C67B261F5FAEA22BD53E841E0295"
hx$=hx$&"7259ED5FBEFDB602B956242A2A359C68940731"
hx$=hx$&"57EF6A8474F142161F43975D38AF734B812EC0"
hx$=hx$&"678D9392AA98C4F3E070E16712D33BEFB187C6"
hx$=hx$&"B470DD94974100723BD655AEA31A86F0FD18AB"
hx$=hx$&"8C96DF55D4D82AFDAC54A2E8676C6F66F5E4B2"
hx$=hx$&"A2A03ADA2A6E1C54B68EBE5BF5F5B361958690"
hx$=hx$&"BF97911E3C58177C78AE09A498FE9D2C31D4AE"
hx$=hx$&"9FA88F441F446653103CCAF456B1EF9647384B"
hx$=hx$&"AF4F8417C9CA8C4CDFA3291EF1289FADAE128D"
hx$=hx$&"4F4C66A8720AEA10B966B60DCD7969CF06488F"
hx$=hx$&"DA01C5DF0DCA0AE6C9C1BB4306D2F1B6544816"
hx$=hx$&"9611DEABD3187FF0CF43FF36E2F49CCF93837A"
hx$=hx$&"AB252FEF21CE8FE2C5314DD0D38D653E2E23BC"
hx$=hx$&"B79F4627E5EB77660C3BEB112B0BA0B3D836F5"
hx$=hx$&"5885A067CC1DB082FFFA6F9B2FD91771FCFE10"
hx$=hx$&"F3E1BD8F86CE17D6CF8824B3EFE63100251F2F"
hx$=hx$&"CA646B7EF02166AF43043912BECA5F007DFCC5"
hx$=hx$&"F2CBA43318E23B803984EFB5A426896D00A72E"
hx$=hx$&"B0BD5E967D116F9E92196441C0181369A3EB43"
hx$=hx$&"18F710AC3E6B312963A562D0A0A4CCFCDA96D3"
hx$=hx$&"4C199AB8DE6F77B172C8503987D091397975C7"
hx$=hx$&"A12D98FD50521CB832CAED3F9416514F8E1A89"
hx$=hx$&"EFDE69D45423CDF6B218F439AF6182D6489EDA"
hx$=hx$&"C6C7943918F4153C4B5B23D962545BE61CA663"
hx$=hx$&"EAC3BC092BC2C67DB335C1747EFC7DE80F7FB3"
hx$=hx$&"443DA571CEB0B73366F646B82A3C3FBF24E18B"
hx$=hx$&"B12046D4141448AF6323DDE076DF35284E7386"
hx$=hx$&"1DF91A1F87815B0DAA90B13385064EFA38BE45"
hx$=hx$&"F5D06CEF017F1EF6AB29CA7DEA02DC3A59C3E7"
hx$=hx$&"08643A4E2BD0DD013895D70936C3C5D6E89900"
hx$=hx$&"B8AB71DF18F0A469A5AD9B29A25CF386826161"
hx$=hx$&"FE9726E1152C5D16C1219C720D4D1CC76164BF"
hx$=hx$&"E186E9DFA450D65ACB96FC33378BEAA26B7403"
hx$=hx$&"685851129B72A761F5A4644582866A98F9A294"
hx$=hx$&"7988E164C521599161E97D8C79E22CF3F210CF"
hx$=hx$&"6473F16415535B8F05DC74BC0E43EBBF2B9B93"
hx$=hx$&"9E59CE9DD2029562569BA462538D1A03C29246"
hx$=hx$&"3BCB1BEFCB872B83C0DA23DF1C86D133C68247"
hx$=hx$&"0427F73CE8CB5961D0656BE1FBBBAAD386C2F9"
hx$=hx$&"1BACAAA57794FA7078E84FDAB09A1A7CE14D3A"
hx$=hx$&"332335570ADA1476E01BE21EEE21DE607D0F06"
hx$=hx$&"FA7851B125841BA6EAE13A088798B17D02D742"
hx$=hx$&"F3C91D9E2D1FA91CC5075E1A62624B3FCFFA75"
hx$=hx$&"32A92AC97D59753468EE3B43B1205927DF3D56"
hx$=hx$&"DD4FD1833C8CB7AE8685F51B832C154AEC2268"
hx$=hx$&"AA87066D5957C2A94B63CCB99C5A2E4E6666A9"
hx$=hx$&"0DBBD964835C0AF10BC2D11CE2E1FAA4A4CB8D"
hx$=hx$&"68C4FCA219B7E2475AD687D01B6226DB726BB0"
hx$=hx$&"2F72A302EBA81DDDDC2B26785D1464037340C2"
hx$=hx$&"0D1010A1F1EBE6B2A834A5304A742044780737"
hx$=hx$&"6F385887B92BE381EA55F79AD02AB8897F7A4C"
hx$=hx$&"61A614F7BACCA98276EF7405544E59D29CF00A"
hx$=hx$&"74B74635034C9C2682E4C3B85F795B1AC8A476"
hx$=hx$&"F331E8E85059BB5215FEC4A0B39C139E33CE11"
hx$=hx$&"72070CCDDAB4B4F40401A379FA10D3D0A416D5"
hx$=hx$&"AACCB7AF2D231B90256EDD832F394A2A6EC249"
hx$=hx$&"F03F72673DE95FEFF28562FF72A517455E7D06"
hx$=hx$&"621B1537746D1414CD3EA8428E66CD7A193A26"
hx$=hx$&"62AF425F1F07B1B38E62D10CE313D089B79889"
hx$=hx$&"442B61F20D53DF345C8197EAEB73BDA1A9569C"
hx$=hx$&"F0F75EBD2E47851C08B364E6725F626FB94FBE"
hx$=hx$&"AF808B9D9FA941AF35589A3B2583E3E62EBD72"
hx$=hx$&"89D4BFA18D938A36942DF98BEC4DB55FAB122C"
hx$=hx$&"B6961568F09597C6B8B696B41570FCF2F040E2"
hx$=hx$&"050694C821D11495C7C6D536C7ECCDCBF48FC8"
hx$=hx$&"D85633790602E579FE967481A171FCA6440BD3"
hx$=hx$&"1BF5519FF947496F0CA1B60C4E04A4E7E5964E"
hx$=hx$&"756E4646F9EA10705169A826F776C4743EF9A5"
hx$=hx$&"220FC40C8422A73405F1258498A240D289D169"
hx$=hx$&"CD19382D6491202D2CF8CCB8D137A2506E86F6"
hx$=hx$&"0D86871A38AC69C4DEA629CD8B8B166B14FD1D"
hx$=hx$&"7E085F1FAFB14BC7D06E360E26AEA476801E1A"
hx$=hx$&"72E2A42DAAD8BF3DB6D6957A6C78B35F25D664"
hx$=hx$&"BF8DEF76CD111A24D2752EC6E15A8AB34A158F"
hx$=hx$&"F846051AAE342C68B32A552291C6F27EE423A6"
hx$=hx$&"E3497FE771A1F8477FD89A1BBC864E410D7197"
hx$=hx$&"96DF3EE5570F45AE91C38E6163279508D6700B"
hx$=hx$&"47C0BFD81B4871921D1B9574F154A39EDC76C0"
hx$=hx$&"544083068A3F96548688681703B59F3C9B8474"
hx$=hx$&"A00B75E644EB7E1CBED5DC5B88B89CBA2212C1"
hx$=hx$&"7ABB4EF592A5115E55D074DCD2099F071B2045"
hx$=hx$&"31C480EDA116A5BE1372BBA7B7DA6EF9DB22E6"
hx$=hx$&"33B4EB2E338238C43D978D26996694E3BEB222"
hx$=hx$&"60174E51F95E4A8A29070EAC044E151A4115A9"
hx$=hx$&"FFDE06A68264BE81E34ABAB4F1CCBD55C1DF20"
hx$=hx$&"5F93AF23100602EFA993BA4D518FB1550BF49A"
hx$=hx$&"6EC8C2F0D6CDDEA7B1821ECB17709757A0E36E"
hx$=hx$&"835EA0EE3E5E5A944B9ECAB24C8700CCD02EE0"
hx$=hx$&"07DE84F035E1D6D94D046AAD74A191BD74297F"
hx$=hx$&"BACB12833C39232EE4BDDED70EB3EA46E7A0D7"
hx$=hx$&"F41E0AC4730D6CBB6A5AE3AD0E8DCB72B0B5A0"
hx$=hx$&"08E7211CF563859365CD60DFE911DC51DCD292"
hx$=hx$&"700AE4002C78B1A468E3DF4277AEC9A3C89756"
hx$=hx$&"4311DCA76CD6DE48899A2F72EC726CEC097173"
hx$=hx$&"A816CCF1432C8409788866646D41D2C3D2B6A9"
hx$=hx$&"8A537BA595EECD61BD6D818266BB4D9C5F6FE9"
hx$=hx$&"0AC124BD12A6BE01F846C220841724AA7D2142"
hx$=hx$&"812E09A588A3384C42F1B049D6BBA50D7848E8"
hx$=hx$&"DEE8BF53369738787BA8DEBB75BCA954E2BEA4"
hx$=hx$&"72CFB4C1D5FCE757F03A5BB54B3F0F5356E52B"
hx$=hx$&"B3FE8AE2940E3E34DD165ED15D1672BA288055"
hx$=hx$&"88972B2A2C0B54A0E0AFD633E193D89AF12FAE"
hx$=hx$&"7A7BB29F31F63FB3B8C4123E6281342CAC70F7"
hx$=hx$&"5892E3D789F69E820828259EB4795B319E168E"
hx$=hx$&"DB2C9C91B355ED5BBCA4F33C3988B232FB2B42"
hx$=hx$&"7BA77524521DFF4CFF2763F8678CC03C287EC5"
hx$=hx$&"400124A10542989C406550B01DF3FAFC95ED17"
hx$=hx$&"B5A744CF90A1C88F74ACB35E48B9A7922F8AAD"
hx$=hx$&"1348027BC4D982C301C161DD525EED16B3CBEF"
hx$=hx$&"0FDB07F2D0EDA6B2AA8EEA35210CD4E4E20ACA"
hx$=hx$&"A996EB624F6C0976117625D3A4739C7528991C"
hx$=hx$&"BA87B4B8287AAF7B4E442FC4CCAA54ACD7E166"
hx$=hx$&"2E0840E98A1839B4EF778834C2783C3C623E1C"
hx$=hx$&"A21E7AAED669703B323AE39B41EB204BAD3F68"
hx$=hx$&"25E5EC8FE34762C57617D86B8DD8DF8EEB6326"
hx$=hx$&"4C75AAA27620AC5ACC408F7A036296DB650CA7"
hx$=hx$&"BA4EA90D05B9EB4713BB1451A12D7FF74D059D"
hx$=hx$&"49F5AE12EA8E643BFCD1B9DCEBDCA571405655"
hx$=hx$&"7752067F59EF7F2EC1EB62AA231BD27DDFC69B"
hx$=hx$&"5EE3EB6D861673B35EF49B3529FD5A7A1189A7"
hx$=hx$&"04EE099A377A0E5A9BFE7E08E2504931BFDDC3"
hx$=hx$&"BAF6CC7DD159416DF20433F7D4C6D82815A034"
hx$=hx$&"FD9CA12831CD8FE90658BBA2859B4A6A6D59F6"
hx$=hx$&"9BB6568718D5EE31E594D46653B32397FD4C26"
hx$=hx$&"5BD76B997C1800ACE3AFD934EA6B581C559F1B"
hx$=hx$&"F571B38E0CDF1C3BE5AEC9BECAE960EE8E192F"
hx$=hx$&"735083409101FF7634274B1BD9627178D6BCDF"
hx$=hx$&"1F283EC1AB031579CBC350B20F737D70D56C73"
hx$=hx$&"ECA0C727AC5A46171D9D1AEEBD77C10DC2048F"
hx$=hx$&"BFB71D3F6EC93A3138F1F084F64E37831E9584"
hx$=hx$&"D8D09063A09AF70D18A00A8CCEA525E945621E"
hx$=hx$&"A1FA5F55E8B463B2D03AAFBD2EB07FAF760037"
hx$=hx$&"54E9ADA5B18257E4A7B6898FFE24D2E07C4380"
hx$=hx$&"BFCE8EED5EF3529174C3FEAEE3BB9ECF302E16"
hx$=hx$&"239B4460DD7593AF0153B2746613C862D07694"
hx$=hx$&"2100C92D13325F56ABEFA3D48349AD2DC50E06"
hx$=hx$&"E03CB93E632DCF9DAC8DA65288D3EB30301D8B"
hx$=hx$&"3A76EC5EFAD952254146074B2DEFE4CCC854A9"
hx$=hx$&"8FE1F0A87B83DC8FD58AF2E92C14A33EB8B4ED"
hx$=hx$&"10D8FC2D8D0BF615CE629357A71078FE9D90B5"
hx$=hx$&"F7B32A84826342EC439113FF7DB8339B6F4D18"
hx$=hx$&"A330ED58F9AD58FB8FE574A1208535F2A055AB"
hx$=hx$&"5F1686CA44CFC3B23AF0D37337FC1C70CC0DFD"
hx$=hx$&"6D7592759BB4CB4E03771420CD38C0D5DBF171"
hx$=hx$&"228AAC81ABA9D1ED6F8AF7E8E776F88628955D"
hx$=hx$&"AE705D4EAD1D1AD638B30A7F7364728DECDB1B"
hx$=hx$&"DF4AF8DE93F228E98396C0DEC5E04D54A01858"
hx$=hx$&"E692062481CE108B51130378B003ADAA952B7B"
hx$=hx$&"0B3CAAE2284E659DE3C1CC8FB367412256CA47"
hx$=hx$&"EAB4984A86D945986D739A82E5CC869358EAB1"
hx$=hx$&"5CE528EC3B5B81CC968BEDD7B6064F96315E73"
hx$=hx$&"B8DF8A2A726C3C0F37EF8703E459E121416B06"
hx$=hx$&"C6468037271DAE4D2D5945322C9CEBE0A44624"
hx$=hx$&"AA8B2711756517CB259A585987A23C43F8A679"
hx$=hx$&"098D5E3EE5306E7643143CE2D0F86C9D98C547"
hx$=hx$&"48936602AA4E609A2E4B5AEDCD20C480A2FC26"
hx$=hx$&"DB4EFC9820D9B6393888ABD35A6C23103C7C16"
hx$=hx$&"E5BAB0350B89A27F3DBE510724296FE89E953C"
hx$=hx$&"10C0026310570F78901897642BD7E1B67856C9"
hx$=hx$&"BD1A7C182302ACA7F52E24CA75ED82C5AFC368"
hx$=hx$&"1FC3C3EF770E79BA59E62F2C3832015D6BDBD8"
hx$=hx$&"5FA2A750311B484754AD347FA13AD736C56087"
hx$=hx$&"4B86F6754C4C23FD20B748F8E714462ED24A58"
hx$=hx$&"E56C38B3EDA6D29086201DE9AFED815B10FE5B"
hx$=hx$&"CB52B8E34C67D8574700E8DC579DF8B8672224"
hx$=hx$&"7132027016F3E261E5095FEB8832EEACC036CF"
hx$=hx$&"2C60127EAE4A83FA580FF1A8F9D496424FD037"
hx$=hx$&"6F2E9089A94E8EA82AC89453C9E1702FB52B3F"
hx$=hx$&"3B449F7CEBE0723E1366E02FFDA17CB90E3BCB"
hx$=hx$&"5268857BEAC56BD306586619E7E2AD9621E288"
hx$=hx$&"3FAB6D9F5D273D87618429A295E5307BDD74C1"
hx$=hx$&"2AFDAC36EFABAB011E4411CB012AFADEA31FBE"
hx$=hx$&"BBD82E1FF6CBF8AB5F1537F8E9A306993B5155"
hx$=hx$&"B4397C24BFA95DA631C27C570C3B7836B75907"
hx$=hx$&"59840A9364B8717A74B740659C83428A57E7CD"
hx$=hx$&"77003341D5F8D3EEE59CC93C388B7C2E16720F"
hx$=hx$&"A7ACEF35E42A125C15B73877FB2AB19699783B"
hx$=hx$&"673A321A642F22D885CFCE3CD22D1FE8B3F41A"
hx$=hx$&"8413E3525C17E75B0B569869CD9C0F2F2866C1"
hx$=hx$&"ACCA2DFE98A36ECBCC3481EF35B41A96330EDB"
hx$=hx$&"426C76AAD3D3CE86B1DC2A6946C79CA79AE5E3"
hx$=hx$&"03437FB18D40AB64791E36266F1A9ECC8713D6"
hx$=hx$&"EED8A0892881AD31EE6DD000595F9D7AC22C96"
hx$=hx$&"E330B4D84A85C2A029E3014CA370E20DCC9310"
hx$=hx$&"6352B9F4AF7FF1E4082EA93837D62FE9A151C6"
hx$=hx$&"2FD2DA3C312550C50AE8A5E6921B40CF25899F"
hx$=hx$&"7DB9323B888B04A2BFC7570D015956F26A197F"
hx$=hx$&"B602853EB45699416B9EDC814230BB72BAA8F2"
hx$=hx$&"7C885D0269258BDFA25A1CE7BB632934905BC9"
hx$=hx$&"F44FB69E379F8D9A708C56A1A7E928D1581C7C"
hx$=hx$&"05B0AA86F5AB85FBC9C10816AFAD77261375B3"
hx$=hx$&"AF6D3065AEA82D78A65C54AB5A4593F7AAAA67"
hx$=hx$&"24906A914706B9CEEB7165C74671D7F5C0B5A7"
hx$=hx$&"8EA9D09D93C1F344931CA9A4783F1ED935BB70"
hx$=hx$&"BBA2EA874850A6615A897D2E6B9B3A3DEE803C"
hx$=hx$&"E390DAC5F693562C790DAA55B3E16716E12157"
hx$=hx$&"0ADCB1D48BEC07CBD9CAA4C69EE65D353C726D"
hx$=hx$&"BF2E733190CC4EBDF3944219BA5A569941ACC8"
hx$=hx$&"B3D9FB6D956D50F21777C888B37FF205974762"
hx$=hx$&"DA16B721E0DB7DB5C51DF74F8DF4D3FF8DFAAF"
hx$=hx$&"FD37F0DFFC32184DC207FFF0AC9C01196470AD"
hx$=hx$&"83EDEA643B1FFD636DEB88184F5E018AFA48CF"
hx$=hx$&"6FA4103A2DDDA13037A197D1DC06374E69C0A6"
hx$=hx$&"299BA776ABB2F3766B9382397AD48A9FB29213"
hx$=hx$&"412D74080BB77D7888DB42DF3CDAD79E681EEC"
hx$=hx$&"94C52EE5A6DA2343F11AD9D59C052D4E431F2C"
hx$=hx$&"0EB53A08E0103F062DB05992037E8275F06A9B"
hx$=hx$&"B6A7F0F8E06099D5892DCA4F2D50753DBAF2F0"
hx$=hx$&"A6DB233DDADAC515126D2722C0B66C91DE466B"
hx$=hx$&"C3D53AFA0FB00E9B4D22159AF07D2BE6E00C18"
hx$=hx$&"1AC98160605661471178CBBE8BD50607ED5CE1"
hx$=hx$&"2B62B089B96B3BE964AEE5CECF082836733DC5"
hx$=hx$&"7BB84289C0553E40097C933F5C47D071E6275E"
hx$=hx$&"ED5D90E0A60AAB35B66DAB34852377DD42F93C"
hx$=hx$&"0129671F3197361AB4839D99D5A1170C68384E"
hx$=hx$&"8F771A8BC408DE348523BCE6AC6A91423DE8F5"
hx$=hx$&"D3739CC5709E94434D7BAB47F8710AFC993963"
hx$=hx$&"0CA3A56EC2CE47DBAAD60F2BEB77726BDCCF2E"
hx$=hx$&"78B75D8A0AF0C3AD308A7206F1FEC79EF9056B"
hx$=hx$&"F1EE78659DF09DDD632686987BBC5F6D41B1C4"
hx$=hx$&"DEEAD0B4B2ADB88F1736D47C767019BE5B9B04"
hx$=hx$&"B647DB4DAB528526C88328BA513D8B52DAA97E"
hx$=hx$&"A0CAECB9A3EF0E87E4033F92E5291F66B439EE"
hx$=hx$&"F09B9F43577666F0C0A7EA10C6FAA0633710EC"
hx$=hx$&"943BB737B707095D87610C8FA7EA43B0E7D149"
hx$=hx$&"6F47CA7CD323B27E7204D43BB961272E7C7432"
hx$=hx$&"54C9F5FEFEAB53A0FEC9273C19DCA981158A1E"
hx$=hx$&"1C50C4207BF2748D9F1D01F5FE8CB0FF9FE3C0"
hx$=hx$&"DE89EC8FCE022BF989F5515FD5D689EAB0AF21"
hx$=hx$&"EF04E471682F7EC84F16A29CA2F05012DA8E90"
hx$=hx$&"CEF755F150313195EFF93879402C8030937BE1"
hx$=hx$&"AAAA989C67E714B8D16AB919DBA39A9E57A778"
hx$=hx$&"FEB78EDDFCE498CFCF8EBCACD1B8ED5995D521"
hx$=hx$&"7A5EDBFFE6D0CA5F1EA2F9CBA3487F7180E88B"
hx$=hx$&"FDDF0D70DEC730D27B3276303BD03C66E632E4"
hx$=hx$&"D85AA5B6B84D78B3B3CBB59E9E67A4BB73B867"
hx$=hx$&"A93E0C6923910BF359A5A51A15077A4C7B34EB"
hx$=hx$&"C71D6BB3651CB7854B8F48366C86659ACCF1DA"
hx$=hx$&"19AE81883561BDE7D5FF9AA08CB88D949AE5E1"
hx$=hx$&"83F1E99732E7C52349CF2BDD210A254DB3939E"
hx$=hx$&"F2F0D913B199295744B9495A6391ED0996BEA7"
hx$=hx$&"DE53B10938DC069136F123FFF160BB87F5BD65"
hx$=hx$&"A231822BAA47262D76435F36E0E0702DABBF56"
hx$=hx$&"6EE02A1C82345DCD1CBE2E626BEA6FE317DF97"
hx$=hx$&"5B09A7F994CF869797E393F3CCAF9211D67B89"
hx$=hx$&"59AF6D7870798B8C3CDF94A2872221AC987497"
hx$=hx$&"876E73919EFDF9CF7F76370547CD49331A2C67"
hx$=hx$&"CE69EC99B85964D5FA24ADA6DE9DAD8CEC5662"
hx$=hx$&"7530BDEE002284D6EFA4270851BA935C52A65D"
hx$=hx$&"5BC6561885B154DDD0D4BB1DB01EB0317E0DF3"
hx$=hx$&"29AF19A396379B7D4D6638BDC6C7198C50A32D"
hx$=hx$&"7EB882050FB15523E8A151F5E1709ADAB24A40"
hx$=hx$&"D6E39CEC249B7AAF3DC4EC7687FDFF90805A63"
hx$=hx$&"C5241A35A8740C4F15F8259D375BD82C5ECA84"
hx$=hx$&"30ADEE9713A174B62C55854F6DEF9E13BA3E36"
hx$=hx$&"4293E24C664DFFC03466CB279FC5735E464D6B"
hx$=hx$&"F864864DDC0DAF3BF1EA346D6F1D9AE7EE0EFD"
hx$=hx$&"5F32D4FBD9F6AB4DBC25157A55EFDAA02D6ACD"
hx$=hx$&"4CDB8C5CA990DD5733AF078A67B81956567D10"
hx$=hx$&"A0C761469C9A707E385898364AC5CEE6CE1B3A"
hx$=hx$&"DFB1B3FA6AD8D859CE6429436021FFFF14D8C1"
hx$=hx$&"053C7B0D3B792A55521D38AA3E657DA21E596E"
hx$=hx$&"A59236C63F17D57F01652964BC39680000"
n$=""
for t =1 to 10
   n$=n$&"13:c3ghc4eqdchg(egc5)q(fa)(ac5)"
next t
notes set n$
notes play
for t = 1 to len(hx$) step 2
  d$=chr$(dec(mid$(hx$,t,2)))
  file "doc.z" write asc(d$)
next t
gunzip "doc.z" to doc$
file "doc.z" delete
notes stop
return

Re: DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 6:52 pm
by rbytes
A fun program! I'm not sure what the doctor charges per hour, but her advice is very good :lol:

Re: DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 7:46 pm
by Dav
Thanks. It's free advice (and worth every penny! :lol: )

- Dav

Re: DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 7:55 pm
by rbytes
You mentioned a concert schedule. Are you a musician?

Re: DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 8:53 pm
by Dav
Yes, I play piano, trumpet & sing. Play for shows, events, bands, pit orchestras, recording studios, etc. The basic freelance musician life. I also do music therapy kind of programs at senior care facilities.

I was looking at your new radio star app. That looks really professional. It could popular in the App Store!

- Dav

Re: DOC - A fake speaking doctor program.

Posted: Thu Apr 07, 2016 9:24 pm
by rbytes
That is great to hear. I was in a choral group for a while that performed on TV. Also was in the jingle business part-time for a while. I have a lot of music apps now, and spend a fair bit of time at home experimenting and multi-tracking. Just got a really good buy on eBay on a Behringer UCA222 interface that lets me feed stereo from my iPad to iPhone or vice-versa - for apps that don't allow a direct digital copy method.

Thanks for the nice comments re Radio Star. I haven't seen anything else quite like it on the App Store. Maybe I should get the smart BASIC SDK and study up?

Re: DOC - A fake speaking doctor program.

Posted: Sun Apr 10, 2016 5:43 pm
by Dutchman
Initially the doc spoke with an awful Dutch accent :D
I had to add the command

Code: Select all

SAY VOICE "EN"
It really is a funny program, he/she keeps going. :lol:

Re: DOC - A fake speaking doctor program.

Posted: Sun Apr 10, 2016 5:56 pm
by Mr. Kibernetik
Very soon we told each other who we are... :twisted: