[fa.info-mac] MacMelody music program

info-mac@uw-beaver (info-mac) (07/13/84)

From: winkler@harvard.ARPA (Dan Winkler)
MacMelody is a simple "Interactive Music Program with Graphic Display"
by Jeff Miller.  

MacMelody displays a picture of a four octave piano keyboard, a row of
8 boxes with pictures of musical ntoes, and various other boxes labeled
PLAYBACK, DELETE NOTE, CLEAR, QUIT, TEMPO, VOLUME, DISPLAY, and ERASE.
If you click the mouse while pointing to a given key on the piano
keyboard, you will hear a short tone of the pitch corresponding to that
key.  As you play notes in this way, they are stored in a buffer which
can hold up to 512 notes, and if you click in the PLAYBACK box, you
will hear a replay of all the notes you played.  If you click in the
CLEAR box, the entire stored tune is deleted, so that you can start
storing a new one; clicking in PLAYBACK immediately after clicking in
CLEAR will produce no sound.  Clicking in the DELETE NOTE box deletes
just the most recent note stored (and clicking in it again deletes the
note stored before that, and so on); this is how you can correct
mistakes as you are storing a melody.  Clicking in the QUIT box, of
course, terminates the program.

The TEMPO and VOLUME boxes are sliding controls.  The volume control
affects the volume both of the tones you hear as you click individual
notes on the piano keyboard, and of what you hear during playback.  The
tempo control affects only what you hear during playback.

The boxes with pictures of notes in them are for selecting the rhythm
values of notes stored in the melody buffer.  They do not affect the
length of the tone heard when the mouse is clicked in the keyboard
(which is always the same, regardless of control settings).  The
halfnote with the plus sign next to it in the 5th box is Jeff's own
invention to represent a tone of five times the duration of an eighth
note with only one note symbol, just to keep things simpler.  When a
note is entered by clicking on the piano keyboard, it will be stored
with the rhythm value currently selected.  So the absolute duration of
a given note during playback is the the product of its rhythm value and
the current tempo setting.

Clicking in the DISPLAY box enables the visual display of notes as they
are played, both when clicked on the piano keyboard and during
playback.  As a given note is sounded, a picture of the note in musical
notation properly positioned on a musical staff appears in the lower
right corner of the sreen; as each next note is sounded, the preceding
pictures scroll across the screen to the left.  Clicking in the ERASE
box erases the visual display of the melody,

As this program stands, it cannot save tunes to disk, play more than
one note at a time (no chords), or edit anywhere but at the end of a
tune.  So it is only a toy right now.  But if you like it, let me know
and maybe we can convince Jeff to extend its abilities.

As he did with QuickPrint, Jeff agreed to let me post only the
executable form of MacMelody, not the source.  So it is appended to
this letter in Sumacc tohex form.  You will need fromhex to turn it
back to binary.  It's a 6K program in binary which takes about 12K in
tohex form.

-----------------------------------------------

[Ed. Hex form is also stored on SUMEX as <INFO-MAC>MACMELODY.HEX]


@@@@@A@@@@@@AE@@@@@@AD@@@@@@@@CN@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AH@@@@@@BH
@@@@@LD@@@@@@@@H@@@@@@B@@@@@COCL@@@AJIO@@@@@ABJJ@@@@@@@ADHNGOOONDA
OJ@BOLB@HNBADO@@@DB@@MEIH@BO@@JHFNJHONJIABJHE@JILLFA@@@DBHDAOJ@BMN
BLE@BNFH@@@DDLMOGOOOJIODDHNGN@L@DBJGDBJGDHGJ@BMNBO@HE@NGCOCL@@A@BO
CLOOOOOOOOEANGDBJGJIACBKEGOMGLJHGCDBJGJHMHDAOJ@BLLB@IGDHGJ@BKNJHMO
COCL@@@DJHHGDHGJ@BKNJHHKDBD@M@GJ@BKFM@GJ@BKDM@GJ@BKDDAOJ@BKBC@H@BO
@@B@CL@@@@OOOOJ@CBB@AOCOCL@@@FCOCL@@@OJHICDLMO@C@GDNGEDHNGN@L@DHGJ
@BGHJHJCCOCL@@@FCOCL@@@OJHICDLMO@C@GDNGEDAOJ@BHHDHN@F@D@COCL@@BHDH
GJ@BCNJIG@DAOJ@BCHDJE@FGNFDBH@A@BH@@@EDNKJ@@@LDAOJ@BEHDLMH@B@FDNGE
DHNGFGL@BJ@@DHGJ@BDDJHIJCNCJ@BD@CLCJ@BCJ@L@E@@@HFF@@@@D@@LDG@@@FFG
@@@@HHDAOJ@BALC@BH@@@DDDD@CO@@COCL@@@@JHIDCO@GC@@FM@GJ@B@HCO@@ILGJ
@B@@INGJ@B@@CO@GCO@FB@DOBO@HJHJCMNOL@@@HF@@@@@EB@L@E@@@MFG@@@@@J@L
DG@ANBFM@@@@CNEMDGDDDGCO@GDAOJ@AMHCOA@JHID@LDF@A@IFM@@@@BHDHGJ@AKD
COCL@@@@DAOJ@AL@COA@DDEGDAOJ@AJLBOA@JHNOCOCL@@@@DAOJ@AJLCOA@DDEGJH
IDCO@EJHHCB@@EDLMO@CNFDNGEDHNGN@L@DJD@FL@@@@A@DDD@CO@@A@CL@@BMDNKJ
OOCJC@AODHD@DBD@DHD@FA@@@@@HDLMO@C@GDNGEHAOL@@@JDJD@FG@@@@@NBO@@DH
D@DBD@DHD@FANLB@AODHD@@F@@@@C@DNKJOO@HDNGEDHNGGLL@DAOJ@AEJDNKJ@@DF
DBD@DBDCDB@DCJCL@@@AAFAHFG@@@@BN@L@C@@BMFF@@@@@JDJ@DFFNNDDDEF@NJ@L
@C@@C@FMND@L@C@@CIFNMNAHCL@@@ALAOL@@@J@DDC@@C@M@DCF@LNLALEDLMO@CCN
DNGEDHNGO@N@DBDCBDDHDNKJONGL@L@@@@@MFG@@@@C@@L@@@@@HFF@@@@@LDJDCFG
NHDBBBECDCF@NB@LDC@@OOFF@@@@A@DNKJONEF@L@@@@@MFFOFF@@@@@@HEBDCADL@
F@LFDBABDLMO@G@ODNGEDHNGH@H@A@AHFG@@@@@HDNKJONENF@ODDLMO@A@ADNGEDH
NGO@O@BDDHBFDHDJAJDB@CDNKJONAH@L@@@@@MFG@@@@C@@L@@@@@HFF@@@@@LDJ@C
FGNHDBBBEC@CF@NB@L@C@@OOFF@@@@A@DNKJOMOB@L@@@@@MFFOFF@@@@@@HEB@CAD
L@F@LFAFHCDLMO@O@ODNGEDHNGI@H@AFAHDJ@CFG@@@@@LA@AHDNKJOMOFEC@CF@O@
DLMO@A@IDNGE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@@
@H@ADH@AOD@@@@@@@@@AAH@ANL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@DNKJ@AFNDHFMOM@HJHFODHFMOMAHDHFMOONDJHJEDBJGJHMHBKEGOLDDDHGJ@D
MLJHMODNKJ@EMJDNKJ@AHJDNKJ@GKLDNKJ@ANDFA@@@BGJFA@@@BILFA@@@BNDFA@@
@BKJFA@@@CDNFA@@@CHBFA@@@BOJFA@@@CALCKGL@@@AOKLHCKGL@@A@OKLFCKGL@@
GOOKLJCKGLOOOOOKLDDANMOCL@DBI@BKDHOL@LC@CLOOOOJ@CBCOCL@@@BDHFMOLCD
JIG@DJFMOLCDFGO@DHFMOLC@JIGBDBFGBOBMOLC@DHGJ@CFJJHJMDJEOFG@@@@@FDN
KJ@JDNDBFGBOBMOLC@DHGJ@CMLJHJMDJEOFG@@@@@FDNKJ@JIFDBFGBOBMOLC@DHGJ
@CLNJHJMDJEOFG@@@@@FDNKJ@JO@DBFGBOBMOLC@DHGJ@CF@JHJMDJEOFG@@@@@FDN
KJ@KCFDBFGBOBMOLC@DHGJ@CKJJHJMDJEOFG@@@@@FDNKJ@KEHDBFGBOBMOLC@DHGJ
@CLDJHJMDJEOFG@@@@@FDNKJ@KH@DBFGBOBMOLC@DHGJ@CLFJHJMDJEOFG@@@@@FDN
KJ@KJLDBFGBOBMOLC@DHGJ@CKHJHJMDJEOFG@@@@@FDNKJ@KLJDBFGBOBMOLC@DHGJ
@CJJJHJMDJEOFG@@@@@FDNKJ@KLHDBFGBOBMOLC@DHGJ@CCLJHJMDJEOFG@@OOADDH
GJ@CC@JHJDDNGEDHNGN@L@B@CL@@@@@@CBJABBBKDHOMGDB@E@CAGLOOOL@@AHBAGL
@@@@@@@N@@BDDBJH@@@LB@CL@@@@@@@NJABBBKDHOMGHB@E@CAGLOOOO@@@@DBFH@@
@HDLMO@C@GDNGEDHNGO@N@DHGJ@BDJJHJCDHGJ@BDDJHJACFCL@@AECO@CCOCL@@EK
JHICCO@CCOCL@@KOJHIA@FDC@@AB@LDC@AOKFMNFDENMOLDHCFCL@@@DBOBJ@@@DJH
MCBOBJ@@@LJHMCBOBJ@@AHJHMCBOBJ@@B@JHMCBOBJ@@BHJHMCMDOL@@C@ECDCFNMJ
DLMO@G@ODNGEDHNGOHN@DHGJ@BB@JHJCDHGJ@BAJJHJACFCL@@@JCHCL@@@G@FDC@@
AJCO@CCOCL@@@KJHICCOCL@@@@COCL@@BAJHIBECDDFNNFDENMOKLLCHCL@@@HCFCL
OONJCO@CCOCLOOMLJHGHBOAJDHGJ@AMDJHOF@DDC@@AJECDDFNNHDBJGJHGHDHGJ@A
MBJHJDDENMOLA@DAOJ@ALHBDLHDAOJ@ALJBDLHDAOJ@ALLBDLHDAOJ@ALNBDLHDAOJ
@AM@BDLHDAOJ@AMBBDLHDAOJ@AMDBDLHDAOJ@AMFBDLHDLMO@GAODNGEDHNGN@L@DH
GJ@BBNJHJCDHGJ@BBHJHJACOCL@ACKCOCL@@AJJHICDHGJ@C@@JHHDDLMO@C@GDNGE
DHNGN@L@DHGJ@AKHJHJCDHGJ@AKBJHJACOCL@AIJCOCL@@AJJHICDHGJ@C@GJHHDDL
MO@C@GDNGEDHNGN@L@DHGJ@AIJJHJCDHGJ@AIDJHJACOCL@AMCCOCL@@AJJHICDHGJ
@BM@JHHDDLMO@C@GDNGEDHNGN@L@DHGJ@AFDJHJCDHGJ@AENJHJACOCL@@NHCOCL@@
AJJHICDHGJ@BIJJHHDDLMO@C@GDNGEDHNGN@L@DHGJ@AINJHJCDHGJ@AIHJHJACOCL
@@@OCOCL@@DKJHICDHGJ@BF@JHHDDLMO@C@GDNGEDHNGN@L@DHGJ@AH@JHJCDHGJ@A
GJJHJACOCL@@FACOCL@@DKJHICDHGJ@BFCJHHDDLMO@C@GDNGEDHNGN@L@DHGJ@A@J
JHJCDHGJ@A@DJHJACOCL@AIMCOCL@@CHJHICDHGJ@BCAJHHDDHGJ@@OFJHJCDHGJ@@
O@JHJADHGJ@@OJJHJBDLMO@C@GDNGEDHNGN@L@DHGJ@@OBJHJCDHGJ@@NLJHJACOCL
@A@OCOCL@@CHJHICDHGJ@B@KJHHDDHGJ@@MNJHJCDHGJ@@MHJHJADHGJ@@NBJHJBDL
MO@C@GDNGE@@EK@@@C@@KO@AOK@@EK@@@C@@KO@@AE@@EK@@@O@@IK@@AIOOOLOOOK
@@@D@@@EOOON@@@G@@@@@@@IOOON@@@K@@@@@@@MOONGOOOD@@AI@@@L@@@K@@@J@@
BL@@MJ@@@K@@@J@@BL@@BD@@@K@@BD@@BL@@CN@@@K@@CN@@BL@@EH@@@K@@EH@@BL
@@GB@@@K@@GB@@BL@@HL@@@K@@HL@@BL@@JF@@@K@@JF@@BL@@L@@@@K@@L@@@BL@@
MJ@@@K@@@J@@CM@@BB@@@K@@NC@@AO@ABM@@@K@AIE@@AO@ALE@@@K@ALN@@AO@AOF
@@BI@AIH@@CM@AMC@@CL@AGF@@E@@AOF@@CM@AGG@@DO@AOE@@CL@AGF@@E@@AKF@@
BI@A@J@@CM@ACM@@CL@@NC@@E@@AFC@@CM@@ND@@DO@AFB@@CL@@NC@@E@@ABC@@@K
@ACF@@AO@AHL@@CL@@@J@@E@@@DH@@CL@@EL@@E@@@HJ@@LJ@@@@@AEF@B@@AGFDAF
ADADMGACJLABIAAAHFA@HJ@OIM@NKL@MNI@MBA@LFD@KKB@K@J@JFL@IMF@IDH@HLC
@HDE@GLN@GEN@FOD@FI@@FCB@EMI@EHE@ECF@DNK@DJD@DFB@DBC@CNG@CJO@CGJ@C
DH@CAI@BNM@BLC@BIK@BGE@BEB@BCA@BAA@AOD@AMH@AKM@AJD@AHMG@@HG@HHFLA@
FLI@FHA@FD@@FDH@F@@@F@H@EL@@ELH@EH@@ED@@EDH@E@@@E@H@DL@@DH@@DHH@DD
@@DDH@D@@@D@H@CL@@CH@DCHHDCD@@CDH@C@@@BL@@BLH@BH@@BHH@BD@@BDH@B@@@
ALB@ALJ@AHB@AHJ@ADB@A@B@A@J@@LB@@LJ@@HBB@HJB@DBB@GDDDIECE@DLDAEI@K
DDDEDLDEEDDEB@DNDOEDDE@HE@DLDAEIDBDADCDK@FEFDODLEEDMDE@DEAEEDIED@E
DEEBDAECDE@EEDDEDME@DO@EDCDLDEDAEB@@DHNGO@N@DENMOLDHGFC@DBJGJHMHBD
MOECDCFNOFDENMOLDHJHMJDHGJOMO@JHJABOBJ@@@@JHMKDHGJOMNDCOCL@@ABDBFG
JHJHJHMJDHGJOMMFJHJABOBJ@@@HJHMKDHGJOMLJCOCL@@ABDBFGJHJHJHMJDHGJOM
KLJHJABOBJ@@A@JHMKDHGJOMK@COCL@@ABDBFGJHJHJHMJDHGJOMJBJHJABOBJ@@AD
JHMKDHGJOMIFCOCL@@ABDBFGJHJHJHMJDHGJOMHHJHJABOBJ@@ALJHMKDHGJOMGLCO
CL@@ABDBFGJHJHJHMJDHGJOMFNJHJABOBJ@@BDJHMKDHGJOMFBCOCL@@ABDBFGJHJH
JHMJDHGJOMEDJHJABOBJ@@BLJHMKJHMJDHGJOMDNJHJABOBJ@@@DJHMKDHGJOMDBCO
CL@@ADDBFGJHJHJHMJDHGJOMCDJHJABOBJ@@@LJHMKDHGJOMBHCOCL@@BADBFGJHJH
JHMJDHGJOMAJJHJABOBJ@@AHJHMKDHGJOM@NCOCL@@ADDBFGJHJHJHMJDHGJOM@@JH
JABOBJ@@B@JHMKDHGJOLODCOCL@@ADDBFGJHJHJHMJDHGJOLNFJHJABOBJ@@BHJHMK
BOBJ@@@@BOBJ@@@DBOBJ@@@@JHNFBOBJ@@@HBOBJ@@@DBOBJ@@@HJHNFBOBJ@@@HBO
BJ@@@LBOBJ@@@HJHNFBOBJ@@A@BOBJ@@@LBOBJ@@A@JHNFBOBJ@@ADBOBJ@@AHBOBJ
@@ADJHNFBOBJ@@ALBOBJ@@AHBOBJ@@ALJHNFBOBJ@@ALBOBJ@@B@BOBJ@@ALJHNFBO
BJ@@BDBOBJ@@B@BOBJ@@BDJHNFBOBJ@@BDBOBJ@@BHBOBJ@@BDJHNFBOBJ@@BLBOBJ
@@BHBOBJ@@BLJHNFCFCL@@BDBOABBOBJ@@C@JHMLBOBJ@@C@COCL@@GNDBFGJHN@MD
OL@@@DECDCFNNDDLMO@G@ODNGEDHNGN@N@DENMOKLLDBJGDHGJOLCNJHOCBEEG@@AL
BEEO@@CLDHGJOLAHJHKGJHODDBJGDHGJOLBFJHOCBEEO@@@LDHGJOL@DJHKGCOCL@@
@DCOCL@@@@JHICCOCL@@@DCOCLOONJJHIAJHODDBJGDHGJOKONJHOCBEEO@@BLDHGJ
OKMLJHKGCOCLOOOLCOCL@@@@JHICCOCLOOOLCOCL@@AFJHIAJHODDBJGDHGJOKMFJH
OCBEEO@@@DDHGJOKKDJHKHCOCL@@@DCOCL@@@@JHICCOCL@@@DCOCLOONJJHIAJHOD
DBJGDHGJOKJNJHOCBEEO@@BDDHGJOKHLJHKHCOCLOOOLCOCL@@@@JHICCOCLOOOLCO
CL@@AFJHIAJHODDBJGDHGJOKHFJHOCBEEO@@ADDHGJOKFDJHKGCOCL@@@DCOCL@@@@
JHICCOCL@@@DCOCLOONJJHIADHGJOKEBJHJBJHODDBJGDHGJOKEHJHOCBEEO@@CDDH
GJOKCFJHKGCOCLOOOLCOCL@@@@JHICCOCLOOOLCOCL@@AFJHIADHGJOKBDJHJBJHOD
DBJGDHGJOKBJJHOCBEEO@@@HDHGJOK@HJHKHCOCL@@@DCOCL@@@@JHICCOCL@@@DCO
CLOONJJHIADHGJOJOFJHJBJHODDBJGDHGJOJOLJHOCBEEO@@BHDHGJOJMJJHKHCOCL
OOOLCOCL@@@@JHICCOCLOOOLCOCL@@AFJHIADHGJOJLHJHJBJHODDBJGDHGJOJLNJH
OCBEEO@@AHDHGJOJJLJHKGCOCL@@@DCOCL@@@@JHICCOCL@@@DCOCLOONJJHIADHGJ
OJIJJHJBDHGJOJILJHJBJHODDBJGDHGJOJIJJHOCBEEO@@CHDHGJOJGHJHKGCOCLOO
OLCOCL@@@@JHICCOCLOOOLCOCL@@AFJHIADHGJOJFFJHJBDHGJOJFHJHJBJHODDBJG
DHGJOJFFJHOCBEEO@@A@DHGJOJDDJHKGCOCL@@@DCOCL@@@@JHICCOCL@@@DCOCLOO
NJJHIACOCL@@@FCOCL@@@CJHICCOCL@@BKJHHCJHODDBJGDHGJOJBNJHOCBEEO@@C@
DHGJOJ@LJHKGCOCLOOOLCOCL@@@@JHICCOCLOOOLCOCL@@AFJHIACOCL@@@FCOCL@@
@CJHICCOCL@@BKJHHCJHODDBJGDHGJOIOFJHOCBEEO@@@@DHGJOIMDJHKHCOCL@@@D
COCL@@@@JHICCOCL@@@DCOCLOONJJHIACOCL@@@DCOCLOONKJHICCOCL@@@ECOCL@@
@HJHIBCOCL@@@@COCL@@@FJHIBCOCLOOOOCOCL@@@BJHIBCOCLOOONCOCL@@@BJHIB
JHODDBJGDHGJOIILJHOCBEEO@@B@DHGJOIGJJHKHCOCLOOOLCOCL@@@@JHICCOCLOO
OLCOCL@@AFJHIACOCLOOOLCOCL@@AEJHICCOCL@@@ECOCLOOOHJHIBCOCL@@@@COCL
OOOJJHIBCOCLOOOOCOCLOOONJHIBCOCLOOONCOCLOOONJHIBJHODDLMO@G@GDNGEDH
NGO@O@DENMOLDHCFCLOOONEDDCDBFGBOBMOLC@BOAJJHNHDJEOFGO@DGOJOIOBC@CC
C@@@CBCL@@A@FA@@@@LLDJFMOKLDFM@@@@@LC@@CCBBMOKLHFA@@@BAFB@FMOL@LDC
NMOKL@KALIFL@@@@@NC@LCC@NMOKLHDBI@EHJMOL@LDLMO@O@ODNGEDHNGN@O@JHEB
DHGJOICBJHJDDENMOCL@DGOJOIJ@DIOJNLIJCOCL@@@BDHFMOLCDJIG@DJFMOLCDFF
@@@@BLDJIBFG@@@@BFDJFMOKLDFM@@@@@LC@ABCBBJ@@@BFA@@@AKDC@AJC@CC@@@@
CBAJLCNMOKLFFA@@@@DHF@LDC@CLOOOOJ@CBC@CLGOOOECD@FNOLDHGJOHMFJHJDJH
ECDLMO@O@GDNGEDHNGN@L@DHGJOHLLJHJDDANMOCL@BKDHOL@LDBI@C@CLGOOOECD@
FNOLDHGJOHKDJHJDDLMO@C@GDNGEDHNGN@L@BBFMOMGHBBEACCD@@@@BCCDA@@@FCC
FMOKLJ@@@DB@FMOMGDB@E@BADI@@B@BBGH@AALBBFI@@@LBBEAJ@@CDLMO@C@GDNGE
DHNGO@N@CFBMOKLHECDCLGOL@@@DDENMOLA@BOCBC@@@JHJDDBFMOKLHDBFGBOBMOL
C@BOAJJHJMEBFMOKLHDJEOFGNNBOBBJHJDDLMO@G@ODNGEDHNGN@L@C@BMOLCBDAOJ
OHELCAD@@@@F@DD@@AGFNCD@FL@@@@@DDBD@@LD@@@OOFO@@@@@FC@CL@@OOCKD@OK
LJDHGJOHC@JHJCDHGJOHCBJHJBDLMO@C@GDNGEDHNGN@L@C@BMOLCBDAOJOHCNCAD@
@@@FCBCL@AFCIBD@NDDAFN@@@@@FCBCL@@@A@LDA@@AOFO@@@@@FCBCL@@AOCKDAOK
LFDHGJOH@NJHJCDHGJOHA@JHJBDLMO@C@GDNGEDHNGN@L@DHGJOH@HJHJDDANMOCL@
KANMOL@LFG@@@@@LB@FMOL@LDBJ@BKDHOL@LC@CLGOOOECD@FNOLDHGJOGNDJHJDDL
MO@C@GDNGEDHNGN@L@DHGJOGMLJHJDDDFMOKLDDLMO@C@GDNGEDHNGN@L@DHGJOGM@
JHJDDHGJOGMBDHFMOONDJHJEC@CLGOOOECD@FNOLDHGJOGKHJHJDDLMO@C@GDNGEDH
NGONO@CF@@CH@ADHGJOGJLCOCLOONBCOCL@@@@BOBMOLDDJHNODEOJOH@B@HCB@@@A
C@@AFF@@@@BD@HCB@@@BC@@AFF@@@@BH@HCB@@@CC@@AFF@@@@BL@HCB@@@DC@@AFF
@@@@CFF@@@@@DJCOCL@ANICOCL@@N@JHICF@@@@@CBCOCL@ANICOCL@AA@JHICF@@@
@@BDCOCL@ANICOCL@ADHJHICCOCL@@A@COCL@@@@JHIBCOCL@ANICOCL@ADH@DEG@@
@HJHICCOCL@@A@COCL@@@@JHIBCJCL@@N@CLCL@@@E@FDE@@@HCOCL@B@@CO@EJHIC
COCLOONBCOCL@@@@JHIBECDFFNNF@LDE@AA@FN@@@@@H@FDE@@@HF@MDECDD@HCB@@
@EC@@AFG@@@@@F@FDD@@@HNEDDDGNMOKLLDBDEAJCBC@@@@FDE@@MHDDDECOCLON@O
CO@EJHGHBOCCD@@@DHGJOEOLJHOF@HCB@@@GC@@AFG@@@@ABCOCLOOOACOCL@@@FJH
ICCOCL@@BCJHHCDBJGJHGHDLMO@OGODNGEFDB@GAGEFIGD@M@I@MCKB@ECGEFBGBFO
GEGDFIFNFEB@FIFNFIGDGCFOGEFNFDFBGEFFGC@MCK@IDAFLFLFOFCFAGDFEGCB@FH
FEFAG@B@GC@@@@@A@@@@@@AE@@@@@@AD@@@@@@@@CN@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A
@@@@@@AE@@@@@@AD@@@@@@@@CN@@@@@@@@@@@@@@@@@@AL@@CN@@@@DCDODDDE@@@A
@@@J@@@@OOOOB@@@@@@@@@@@@@@@@@@AOOOOB@@@@@AL@@@@@@@@@I@I@ICKB@B@FA
GDB@G@FAGBFAFMFEGDFEGBB@FBFLFOFCFKB@GCGDFOGBFAFGFE@M@IFMFOGFFEBNGG
@IBCECDOEEDNDDEBDEDFBLB@DIDOEBDEDFDNEEDMBHDAC@BI@ICKB@FIFNFIGDFIFA
FLFIGJFEB@G@FAGBFAFMFEGDFEGBGC@M@IFMFOGFFEBNFL@IBCECEGDBEEDFECDIEJ
DEBLB@DIDOEBDEEADCDOEEDNEDBHDAC@BI@M@IFCFLGBBNFL@IDIDODCDODME@DLDE
EDDIDODNBHDAC@BI@M@IFMFOGFFEBNFL@IBCECEGDBEEDFECDIEJDEBLB@DDC@@I@I
CKB@FAFLFLFOFCFAGDFEB@GCGAGEFAGBFEBMGGFAGFFEB@GCGIFNGDFHFEGCFIGJFE
GB@M@I@I@I@I@ICKB@B@FBGEFFFFFEGB@M@IEODNDEEGDHDADNDDDLDE@M@IFMFOGF
FEBNFL@IDAC@BLB@GCGGFBGEFFFHFAFNFDFLFEBHDACEBI@ICKB@GCGDFOGBFEB@FH
FAFNFDFLFE@M@IFMFOGFFEFABNFL@IBHDAC@BIBLB@DAC@@I@ICKB@FDFEGBFEFFFE
GBFEFNFCFEB@FHFAFNFDFLFEB@GCFOB@DAC@B@G@FOFIFNGDGC@M@I@I@I@I@ICKB@
B@FAGDB@GCGAGEFAGBFEBMGGFAGFFEB@FBGEFFFFFEGB@M@I@I@I@I@ICKB@FIFNFI
GDFIFAFLFIGJFEB@FFFIFEFLFDGCB@FOFFB@FBGEFFFFFEGBCJ@M@IFMFOGFFEBNGG
@IBCBMCABLB@ECEGDFDLDADGBHDAC@BI@I@ICKB@FNFEFGFAGDFIGFFEB@FNGEFMFB
FEGBB@FMFAGBFKGCB@FBGEFFFFFE|@@@GBA@A