document.write('<table id="vista-buttons_com_id22uc3" width="0" cellpadding="0" cellspacing="0" border="0"><tr><td style="padding-right:0px" title ="HOME"><a href="http://www.worldofmusic.ca" onmouseover=\'xpe("22uc3o");\' onmouseout=\'xpe("22uc3n");\'><img id="xpi_22uc3" src="'+vbImgPath+'/bt22uc3_0.gif" name="vb22uc3" width="100" height="44" border="0" alt="HOME" /></a></td><td style="padding-right:0px" title ="PRODUCTS"><a href="http://www.worldofmusic.ca/products/home.html" onmouseover=\'xpe("t2uc3o");xpshow("t2uc3",0,this);xpsmover(this);\' onmouseout=\'xpsmout(this);\'><img id="xpi_t2uc3" src="'+vbImgPath+'/btt2uc3_0.gif" name="vbt2uc3" width="128" height="44" border="0" alt="PRODUCTS" /></a><div><ul id="vbUL_t2uc3" class="vbUL22uc3"><li><img src="'+vbImgPath+'/smituc3.gif" alt="  ACOUSTIC PIANOS" /><a href="http://www.worldofmusic.ca/products/acousticpianos.html" title="  ACOUSTIC PIANOS">&nbsp;&nbsp;ACOUSTIC&nbsp;PIANOS</a><ul id="vbUL_y2uc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/acousticpianos.html" title="ACOUSTIC UPRIGHT PIANOS">ACOUSTIC&nbsp;UPRIGHT&nbsp;PIANOS</a><ul id="vbUL_x2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.yamaha.ca" title="CABLE-NELSON">CABLE-NELSON</a></li><li><a href="http://www.broadmann-pianos.com" title="BROADMANN">BROADMANN</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/acousticpianos.html" title="ACOUSTIC GRAND PIANOS">ACOUSTIC&nbsp;GRAND&nbsp;PIANOS</a><ul id="vbUL_l2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.yamaha.ca" title="CABLE-NELSON">CABLE-NELSON</a></li><li><a href="http://www.broadmann-pianos.com" title="BROADMANN">BROADMANN</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products.asp" title="USED PIANOS">USED&nbsp;PIANOS</a></li><li><a href="http://www.worldofmusic.ca/products/acousticpianos.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smg2uc3.gif" alt="  YAMAHA DISKLAVIER PIANOS" /><a href="http://www.worldofmusic.ca/products/yamahadisklavierpianos.html" title="  YAMAHA DISKLAVIER PIANOS">&nbsp;&nbsp;YAMAHA&nbsp;DISKLAVIER&nbsp;PIANOS</a><ul id="vbUL_b2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA DISKLAVIER PIANOS">YAMAHA&nbsp;DISKLAVIER&nbsp;PIANOS</a></li><li><a href="http://www.worldofmusic.ca/products/yamahadisklavierpianos.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/sm1tuc3.gif" alt="  DIGITAL PIANOS" /><a href="http://www.worldofmusic.ca/products/digitalpianos.html" title="  DIGITAL PIANOS">&nbsp;&nbsp;DIGITAL&nbsp;PIANOS</a><ul id="vbUL_f2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.roland.ca" title="ROLAND">ROLAND</a></li><li><a href="http://www.worldofmusic.ca/products/digitalpianos.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/sm7tuc3.gif" alt="  KEYBOARDS" /><a href="http://www.worldofmusic.ca/products/keyboards.html" title="  KEYBOARDS">&nbsp;&nbsp;KEYBOARDS</a><ul id="vbUL_n2uc3" class="vbUL22uc3"><li><a href="http://www.worlofmusic.ca/products/keyboards.html" title="HOME KEYBOARDS">HOME&nbsp;KEYBOARDS</a><ul id="vbUL_h2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.roland.ca" title="ROLAND">ROLAND</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/keyboards.html" title="PRO KEYBOARDS">PRO&nbsp;KEYBOARDS</a><ul id="vbUL_j2uc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.roland.ca" title="ROLAND">ROLAND</a></li><li><a href="http://www.nordkeyboards.com" title="NORD">NORD</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/keyboards.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smqtuc3.gif" alt="  ORCHESTRAL" /><a href="http://www.worldofmusic.ca/products/orchestral.html" title="  ORCHESTRAL">&nbsp;&nbsp;ORCHESTRAL</a><ul id="vbUL_k2uc3" class="vbUL22uc3"><li><a href="http://www.menzelviolins.com" title="MENZEL">MENZEL</a></li><li><a href="http://www.stentor-music.com" title="STENTOR">STENTOR</a></li><li><a href="http://www.knilling.com" title="KNILLING">KNILLING</a></li><li><a href="http://www.worldofmusic.ca/products/orchestral.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smttuc3.gif" alt="  GUITARS & BASSES" /><a href="http://www.worldofmusic.ca/products/guitars.html" title="  GUITARS & BASSES">&nbsp;&nbsp;GUITARS&nbsp;&&nbsp;BASSES</a><ul id="vbUL_g2uc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="ACOUSTIC GUITARS & BASSES">ACOUSTIC&nbsp;GUITARS&nbsp;&&nbsp;BASSES</a><ul id="vbUL_ituc3" class="vbUL22uc3"><li><a href="http://www.yamah.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.martinguitar.com" title="MARTIN">MARTIN</a></li><li><a href="http://www.larrivee.com" title="LARRIVEE">LARRIVEE</a></li><li><a href="http://www.tanglewoodguitars.com" title="TANGLEWOOD">TANGLEWOOD</a></li><li><a href="http://www.austingtr.com/" title="AUSTIN">AUSTIN</a></li><li><a href="http://www.beavercreekguitars.com/" title="BEAVER CREEK">BEAVER&nbsp;CREEK</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="ELECTRIC GUITARS & BASSES">ELECTRIC&nbsp;GUITARS&nbsp;&&nbsp;BASSES</a><ul id="vbUL_1tuc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.glguitars.com/" title="G & L">G&nbsp;&&nbsp;L</a></li><li><a href="http://www.bcrich.com/" title="BC RICH">BC&nbsp;RICH</a></li><li><a href="http://www.austingtr.com" title="AUSTIN">AUSTIN</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="YAMAHA SILENT GUITARS">YAMAHA&nbsp;SILENT&nbsp;GUITARS</a><ul id="vbUL_ctuc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA SILENT GUITARS">YAMAHA&nbsp;SILENT&nbsp;GUITARS</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="TRAVELER GUITARS">TRAVELER&nbsp;GUITARS</a><ul id="vbUL_dtuc3" class="vbUL22uc3"><li><a href="http://www.travelerguitar.com" title="TRAVELER GUITARS">TRAVELER&nbsp;GUITARS</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="ACCESSOIRES">ACCESSOIRES</a></li></ul></li><li><img src="'+vbImgPath+'/sm5tuc3.gif" alt="  AMPS & EFFECTS" /><a href="http://www.worldofmusic.ca/products/ampsandeffects.html" title="  AMPS & EFFECTS">&nbsp;&nbsp;AMPS&nbsp;&&nbsp;EFFECTS</a><ul id="vbUL_7tuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/ampsandeffects.html" title="AMPLIFIERS">AMPLIFIERS</a><ul id="vbUL_qtuc3" class="vbUL22uc3"><li><a href="http://www.roland.ca" title="ROLAND">ROLAND</a></li><li><a href="http://www.behringer.com" title="BEHRINGER">BEHRINGER</a></li><li><a href="http://www.genz-benz.com" title="GENZ-BENZ">GENZ-BENZ</a></li><li><a href="http://www.bugera-amps.com" title="BUGERA">BUGERA</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/ampsandeffects.html" title="EFFECTS PEDALS">EFFECTS&nbsp;PEDALS</a><ul id="vbUL_mtuc3" class="vbUL22uc3"><li><a title="ZOOM">ZOOM</a></li><li><a title="BBE">BBE</a></li><li><a title="BEHRINGER">BEHRINGER</a></li><li><a title="BOSS">BOSS</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/ampsandeffects.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smmtuc3.gif" alt="  PA & LIGHTING" /><a href="http://www.worldofmusic.ca/products/paandlighting.html" title="  PA & LIGHTING">&nbsp;&nbsp;PA&nbsp;&&nbsp;LIGHTING</a><ul id="vbUL_5tuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/paandlighting.htm" title="PRO AUDIO">PRO&nbsp;AUDIO</a><ul id="vbUL_atuc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.behringer.com" title="BEHRINGER">BEHRINGER</a></li><li><a href="http://www.soundcraft.com" title="SOUND CRAFT">SOUND&nbsp;CRAFT</a></li><li><a href="http://www.jblpro.com" title="JBL">JBL</a></li><li><a href="http://www.wharfedalepro.com" title="WHARFEDALE">WHARFEDALE</a></li><li><a href="http://www.galaxyaudio.com" title="GALAXY AUDIO">GALAXY&nbsp;AUDIO</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/paandlighting.html" title="LIGHTING">LIGHTING</a></li><li><a href="http://www.worldofmusic.ca/products/paandlighting.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smatuc3.gif" alt="  RECORDING & SOFTWARE" /><a href="hhttp://www.worldofmusic.ca/products/recordingandsoftware.html" title="  RECORDING & SOFTWARE">&nbsp;&nbsp;RECORDING&nbsp;&&nbsp;SOFTWARE</a><ul id="vbUL_stuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/recordingandsoftware.html" title="RECORDING HARDWARE">RECORDING&nbsp;HARDWARE</a><ul id="vbUL_3tuc3" class="vbUL22uc3"><li><a href="http://www.yamaha.ca" title="YAMAHA">YAMAHA</a></li><li><a href="http://www.cakewalk.com" title="CAKEWALK">CAKEWALK</a></li><li><a href="http://www.edirol.com" title="EDIROL">EDIROL</a></li><li><a href="http://www.samsontech.com/products/brandpage.cfm?brandid=4" title="ZOOM">ZOOM</a></li><li><a title="BOSS">BOSS</a></li><li><a title="FOSTEX">FOSTEX</a></li><li><a title="TASCAM">TASCAM</a></li><li><a title="ROLAND">ROLAND</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/recordingandsoftware.html" title="RECORDING SOFTWARE">RECORDING&nbsp;SOFTWARE</a><ul id="vbUL_rtuc3" class="vbUL22uc3"><li><a href="http://www.steinbergcanada.ca" title="STEINBERG">STEINBERG</a></li><li><a href="http://www3cakewalk.com" title="CAKEWALK">CAKEWALK</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/recordingandsoftware.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smptuc3.gif" alt="  DRUMS & PERCUSSION" /><a href="http://www.worldofmusic.ca/products/drumsandpercussion.html" title="  DRUMS & PERCUSSION">&nbsp;&nbsp;DRUMS&nbsp;&&nbsp;PERCUSSION</a><ul id="vbUL_6tuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/drumsandpercussion.html" title="ELECTRONIC DRUM KIT">ELECTRONIC&nbsp;DRUM&nbsp;KIT</a><ul id="vbUL_2tuc3" class="vbUL22uc3"><li><a href="http://ca.yamaha.com/en/products/musical-instruments/drums/el-drums/drumsets/dtxplorer/?mode=series#tab=feature" title="YAMAHA DTXPLORER">YAMAHA&nbsp;DTXPLORER</a></li><li><a href="http://ca.yamaha.com/en/products/musical-instruments/drums/el-drums/trigger-modules/dtxplj/?mode=model" title="YAMAHA DTXPL CONTROLLER">YAMAHA&nbsp;DTXPL&nbsp;CONTROLLER</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/drumsandpercussion.html" title="PERCUSSION">PERCUSSION</a><ul id="vbUL_ttuc3" class="vbUL22uc3"><li><a href="http://www.tycoonmusic.com" title="TYCOON AFRICAN DRUMS">TYCOON&nbsp;AFRICAN&nbsp;DRUMS</a></li><li><a href="htt;://www.tocapercussion.com" title="TOCA AFRICAN DRUMS">TOCA&nbsp;AFRICAN&nbsp;DRUMS</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/drumsandpercussion" title="DIGITAL PERCUSSION">DIGITAL&nbsp;PERCUSSION</a><ul id="vbUL_ptuc3" class="vbUL22uc3"><li><a href="http://ca.yamaha.com/en/products/musical-instruments/entertainment/digitalpercussions/dd-65/?mode=model" title="YAMAHA DD-65">YAMAHA&nbsp;DD-65</a></li><li><a href="http://ca.yamaha.com/en/products/musical-instruments/entertainment/digitalpercussions/dd-45/?mode=model">YAMAHA&nbsp;DD-45</a></li></ul></li><li><a href="http://www.worldofmusic.ca/products/drumsandpercussion.html" title="ACCESSORIES">ACCESSORIES</a></li></ul></li><li><img src="'+vbImgPath+'/smv2uc3.gif" alt="  MUSIC EDUCATION BOOKS" /><a href="http://www.worldofmusic.ca/products/books.html" title="  MUSIC EDUCATION BOOKS">&nbsp;&nbsp;MUSIC&nbsp;EDUCATION&nbsp;BOOKS</a></li><li><img src="'+vbImgPath+'/smdtuc3.gif" alt="  ACCESSORIES" /><a href="http://www.worldofmusic.ca/products/accessories.html" title="  ACCESSORIES">&nbsp;&nbsp;ACCESSORIES</a><ul id="vbUL_otuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/products/acousticpianos.html" title="ACOUSTIC PIANOS">ACOUSTIC&nbsp;PIANOS</a></li><li><a href="http://www.worldofmusic.ca/products/digitalpianos.html" title="DIGITAL PIANOS">DIGITAL&nbsp;PIANOS</a></li><li><a href="http://www.worldofmusic.ca/products/keyboards.html" title="KEYBOARDS">KEYBOARDS</a></li><li><a href="http://www.worldofmusic.ca/products/orchestral.html" title="ORCHESTRAL">ORCHESTRAL</a></li><li><a href="http://www.worldofmusic.ca/products/guitars.html" title="GUITARS / BASSES">GUITARS&nbsp;/&nbsp;BASSES</a></li><li><a href="http://www.worldofmusic.ca/products/ampsandeffects.html" title="AMPS & EFFECTS">AMPS&nbsp;&&nbsp;EFFECTS</a></li><li><a href="http://www.worldofmusic.ca/products/paandlighting.html" title="PA & LIGHTING">PA&nbsp;&&nbsp;LIGHTING</a></li><li><a href="http://www.worldofmusic.ca/products/recordingandsoftware.html" title="RECORDING & SOFTWARE">RECORDING&nbsp;&&nbsp;SOFTWARE</a></li><li><a href="http://www.worldofmusic.ca/products/drumsandpercussion.html" title="DRUMS & PERCUSSION">DRUMS&nbsp;&&nbsp;PERCUSSION</a></li></ul></li><li><img src="'+vbImgPath+'/smctuc3.gif" alt="  USED INVENTORY" /><a href="http://www.worldofmusic.ca/products.asp" title="  USED INVENTORY">&nbsp;&nbsp;USED&nbsp;INVENTORY</a></li></ul></div></td><td style="padding-right:0px" title ="SERVICES"><a href="http://www.worldofmusic.ca/services/home.html" onmouseover=\'xpe("p2uc3o");xpshow("p2uc3",0,this);xpsmover(this);\' onmouseout=\'xpsmout(this);\'><img id="xpi_p2uc3" src="'+vbImgPath+'/btp2uc3_0.gif" name="vbp2uc3" width="121" height="44" border="0" alt="SERVICES" /></a><div><ul id="vbUL_p2uc3" class="vbUL22uc3"><li><img src="'+vbImgPath+'/smy2uc3.gif" alt="  PIANO MOVING" /><a href="http://www.worldofmusic.ca/services/pianomoving.html" title="  PIANO MOVING">&nbsp;&nbsp;PIANO&nbsp;MOVING</a></li><li><img src="'+vbImgPath+'/smy2uc3.gif" alt="  PIANO TUNING & REPAIRS" /><a href="http://www.worldofmusic.ca/services/pianorepairs.html" title="  PIANO TUNING & REPAIRS">&nbsp;&nbsp;PIANO&nbsp;TUNING&nbsp;&&nbsp;REPAIRS</a></li></ul></div></td><td style="padding-right:0px" title ="LESSONS"><a href="http://www.worldofmusic.ca/lessons/home.html" onmouseover=\'xpe("o2uc3o");xpshow("o2uc3",0,this);xpsmover(this);\' onmouseout=\'xpsmout(this);\'><img id="xpi_o2uc3" src="'+vbImgPath+'/bto2uc3_0.gif" name="vbo2uc3" width="118" height="44" border="0" alt="LESSONS" /></a><div><ul id="vbUL_o2uc3" class="vbUL22uc3"><li><img src="'+vbImgPath+'/smf2uc3.gif" alt="  PIANO / KEYBOARD LESSONS" /><a href="http://www.worldofmusic.ca/lessons/private.html" title="  PIANO / KEYBOARD LESSONS">&nbsp;&nbsp;PIANO&nbsp;/&nbsp;KEYBOARD&nbsp;LESSONS</a><ul id="vbUL_wtuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/tunesfortwos.html" title="YAMAHA - TUNES FOR TWO\'s (AGE 2)">YAMAHA&nbsp;-&nbsp;TUNES&nbsp;FOR&nbsp;TWO\'s&nbsp;(AGE&nbsp;2)</a></li><li><a href="http://www.worldofmusic.ca/lessons/musicwonderland.html" title="YAMAHA - MUSIC WONDERLAND (AGES 3 & 4)">YAMAHA&nbsp;-&nbsp;MUSIC&nbsp;WONDERLAND&nbsp;(AGES&nbsp;3&nbsp;&&nbsp;4)</a></li><li><a href="http://www.worldofmusic.ca/lessons/juniormusiccourse.html" title="YAMAHA - JUNIOR MUSIC COURSE (AGES 5 & 6)">YAMAHA&nbsp;-&nbsp;JUNIOR&nbsp;MUSIC&nbsp;COURSE&nbsp;(AGES&nbsp;5&nbsp;&&nbsp;6)</a></li><li><a href="http://www.worldofmusic.ca/lessons/youngmusicianscourse.html" title="YAMAHA - YOUNG MUSICIANS COURSE ( AGES 6 - 8)">YAMAHA&nbsp;-&nbsp;YOUNG&nbsp;MUSICIANS&nbsp;COURSE&nbsp;(&nbsp;AGES&nbsp;6&nbsp;-&nbsp;8)</a></li><li><a href="http://www.worldofmusic.ca/lessons/yamahapianoclub.html" title="YAMAHA - YAMAHA PIANO CLUB (AGES 8 & OVER)">YAMAHA&nbsp;-&nbsp;YAMAHA&nbsp;PIANO&nbsp;CLUB&nbsp;(AGES&nbsp;8&nbsp;&&nbsp;OVER)</a></li><li><a href="http://www.worldofmusic.ca/lessons/private.html" title="PRIVATE LESSONS">PRIVATE&nbsp;LESSONS</a></li><li><a href="http://www.worldofmusic.ca/lessons/seniors.html" title="LESSONS FOR SENIORS">LESSONS&nbsp;FOR&nbsp;SENIORS</a><ul id="vbUL_4tuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/private.html" title="PRIVATE LESSONS">PRIVATE&nbsp;LESSONS</a></li><li><a href="http://www.worldofmusic.ca/lessons/group.html" title="GROUP LESSONS">GROUP&nbsp;LESSONS</a></li></ul></li></ul></li><li><img src="'+vbImgPath+'/smk2uc3.gif" alt="  VOICE LESSONS" /><a href="http://www.worldofmusic.ca/lessons/private.html" title="  VOICE LESSONS">&nbsp;&nbsp;VOICE&nbsp;LESSONS</a><ul id="vbUL_ztuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/singersclub.html" title="SINGER\'S CLUB (AGES 10 & OVER)">SINGER\'S&nbsp;CLUB&nbsp;(AGES&nbsp;10&nbsp;&&nbsp;OVER)</a></li><li><a href="http://www.worldofmusic.ca/lessons/private.html" title="PRIVATE LESSONS">PRIVATE&nbsp;LESSONS</a></li></ul></li><li><img src="'+vbImgPath+'/smh2uc3.gif" alt="  GUITAR / BASS / BANJO LESSONS" /><a href="http://www.worldofmusic.ca/lessons/private.html" title="  GUITAR / BASS / BANJO LESSONS">&nbsp;&nbsp;GUITAR&nbsp;/&nbsp;BASS&nbsp;/&nbsp;BANJO&nbsp;LESSONS</a><ul id="vbUL_utuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/private.html" title="PRIVATE LESSONS">PRIVATE&nbsp;LESSONS</a></li></ul></li><li><img src="'+vbImgPath+'/smj2uc3.gif" alt="  YAMAHA - TUNES FOR TWO\'s (AGE 2)" /><a href="http://www.worldofmusic.ca/lessons/tunesfortwos.html" title="  YAMAHA - TUNES FOR TWO\'s (AGE 2)">&nbsp;&nbsp;YAMAHA&nbsp;-&nbsp;TUNES&nbsp;FOR&nbsp;TWO\'s&nbsp;(AGE&nbsp;2)</a></li><li><img src="'+vbImgPath+'/smj2uc3.gif" alt="  YAMAHA - MUSIC WONDERLAND (AGES 3 & 4)" /><a href="http://www.worldofmusic.ca/lessons/musicwonderland.html" title="  YAMAHA - MUSIC WONDERLAND (AGES 3 & 4)">&nbsp;&nbsp;YAMAHA&nbsp;-&nbsp;MUSIC&nbsp;WONDERLAND&nbsp;(AGES&nbsp;3&nbsp;&&nbsp;4)</a></li><li><img src="'+vbImgPath+'/smj2uc3.gif" alt="  YAMAHA - JUNIOR MUSIC COURSE (AGES 4 & 5)" /><a href="http://www.worldofmusic.ca/lessons/juniormusiccourse.html" title="  YAMAHA - JUNIOR MUSIC COURSE (AGES 4 & 5)">&nbsp;&nbsp;YAMAHA&nbsp;-&nbsp;JUNIOR&nbsp;MUSIC&nbsp;COURSE&nbsp;(AGES&nbsp;4&nbsp;&&nbsp;5)</a></li><li><img src="'+vbImgPath+'/smj2uc3.gif" alt="  YAMAHA - YOUNG MUSICIANS COURSE (AGES 6 - 8)" /><a href="http://www.worldofmusic.ca/lessons/youngmusicianscourse.html" title="  YAMAHA - YOUNG MUSICIANS COURSE (AGES 6 - 8)">&nbsp;&nbsp;YAMAHA&nbsp;-&nbsp;YOUNG&nbsp;MUSICIANS&nbsp;COURSE&nbsp;(AGES&nbsp;6&nbsp;-&nbsp;8)</a></li><li><img src="'+vbImgPath+'/smj2uc3.gif" alt="  YAMAHA - YAMAHA PIANO CLUB (8 & OVER)" /><a href="hhttp://www.worldofmusic.ca/lessons/yamahapianoclub.html" title="  YAMAHA - YAMAHA PIANO CLUB (8 & OVER)">&nbsp;&nbsp;YAMAHA&nbsp;-&nbsp;YAMAHA&nbsp;PIANO&nbsp;CLUB&nbsp;(8&nbsp;&&nbsp;OVER)</a></li><li><img src="'+vbImgPath+'/smk2uc3.gif" alt="  SINGER\'S CLUB (AGES 10 & OVER)" /><a href="http://www.worldofmusic.ca/lessons/singersclub.html" title="  SINGER\'S CLUB (AGES 10 & OVER)">&nbsp;&nbsp;SINGER\'S&nbsp;CLUB&nbsp;(AGES&nbsp;10&nbsp;&&nbsp;OVER)</a></li><li><img src="'+vbImgPath+'/sm42uc3.gif" alt="  PRIVATE LESSONS" /><a href="http://www.worldofmusic.ca/lessons/private.html" title="  PRIVATE LESSONS">&nbsp;&nbsp;PRIVATE&nbsp;LESSONS</a></li><li><img src="'+vbImgPath+'/smn2uc3.gif" alt="  LESSONS FOR SENIORS" /><a href="http://www.worldofmusic.ca/lessons/seniors.html" title="  LESSONS FOR SENIORS">&nbsp;&nbsp;LESSONS&nbsp;FOR&nbsp;SENIORS</a><ul id="vbUL_vtuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/private.html" title="PRIVATE LESSONS">PRIVATE&nbsp;LESSONS</a></li><li><a href="http://www.worldofmusic.ca/lessons/group.html" title="GROUP LESSONS">GROUP&nbsp;LESSONS</a></li></ul></li><li><img src="'+vbImgPath+'/smz2uc3.gif" alt="  MUSIC LESSONS HOME PAGE" /><a href="http://www.worldofmusic.ca/lessons/home.html" title="  MUSIC LESSONS HOME PAGE">&nbsp;&nbsp;MUSIC&nbsp;LESSONS&nbsp;HOME&nbsp;PAGE</a></li><li><img src="'+vbImgPath+'/smo2uc3.gif" alt="LESSONS BROCHURE (PDF)" /><a href="http://www.worldofmusic.ca/lessons/brochure.pdf" title="LESSONS BROCHURE (PDF)">LESSONS&nbsp;BROCHURE&nbsp;(PDF)</a></li><li><img src="'+vbImgPath+'/smo2uc3.gif" alt="  HOLIDAYS, POLICIES & REGISTRATION INFO" /><a href="http://www.worldofmusic.ca/lessons/policies.html" title="  HOLIDAYS, POLICIES & REGISTRATION INFO">&nbsp;&nbsp;HOLIDAYS,&nbsp;POLICIES&nbsp;&&nbsp;REGISTRATION&nbsp;INFO</a><ul id="vbUL_ytuc3" class="vbUL22uc3"><li><a href="http://www.worldofmusic.ca/lessons/policies.html" title="HOLIDAYS & POLICIES">HOLIDAYS&nbsp;&&nbsp;POLICIES</a></li><li><a href="http://www.worldofmusic.ca/lessons/registrationinfo.html" title="REGISTRATION INFO">REGISTRATION&nbsp;INFO</a></li><li><a href="http://www.worldofmusic.ca/lessons/brochure.pdf" title="LESSONS BROCHURE (PDF)">LESSONS&nbsp;BROCHURE&nbsp;(PDF)</a></li><li><a href="http://www.worldofmusic.ca/lessons/registrationform.pdf" title="REGISTRATION FORM (PDF)">REGISTRATION&nbsp;FORM&nbsp;(PDF)</a></li></ul></li><li><img src="'+vbImgPath+'/smx2uc3.gif" alt="  EVENTS & ACTIVITIES" /><a href="http://www.worldofmusic.ca/lessons/activities.html" title="  EVENTS & ACTIVITIES">&nbsp;&nbsp;EVENTS&nbsp;&&nbsp;ACTIVITIES</a></li><li><img src="'+vbImgPath+'/smo2uc3.gif" alt="  YAMAHA CANADA MUSIC EDUCATION SITE" /><a href="http://ca.yamaha.com/en/music_education/" title="  YAMAHA CANADA MUSIC EDUCATION SITE">&nbsp;&nbsp;YAMAHA&nbsp;CANADA&nbsp;MUSIC&nbsp;EDUCATION&nbsp;SITE</a></li><li><img src="'+vbImgPath+'/smw2uc3.gif" alt="  CONTACT THE MUSIC LESSON DEPT." /><a href="http://www.worldofmusic.ca/contactus.html" title="  CONTACT THE MUSIC LESSON DEPT.">&nbsp;&nbsp;CONTACT&nbsp;THE&nbsp;MUSIC&nbsp;LESSON&nbsp;DEPT.</a></li><li><img src="'+vbImgPath+'/smp2uc3.gif" alt="  FACEBOOK" /><a href="http://www.facebook.com/womyms" title="  FACEBOOK">&nbsp;&nbsp;FACEBOOK</a></li><li><img src="'+vbImgPath+'/smb2uc3.gif" alt="  TWITTER" /><a href="http://www.twitter.com/worldofmusickel" title="  TWITTER">&nbsp;&nbsp;TWITTER</a></li><li><img src="'+vbImgPath+'/sm6tuc3.gif" alt="YOUTUBE" /><a href="http://www.youtube.com/womification" title="YOUTUBE">YOUTUBE</a></li></ul></div></td><td style="padding-right:0px" title ="ABOUT US"><a href="http://www.worldofmusic.ca/aboutus.html" onmouseover=\'xpe("w2uc3o");xpshow("w2uc3",0,this);xpsmover(this);\' onmouseout=\'xpsmout(this);\'><img id="xpi_w2uc3" src="'+vbImgPath+'/btw2uc3_0.gif" name="vbw2uc3" width="124" height="44" border="0" alt="ABOUT US" /></a><div><ul id="vbUL_w2uc3" class="vbUL22uc3"><li><img src="'+vbImgPath+'/sml2uc3.gif" alt="  WHO IS WORLD OF MUSIC?" /><a href="http://www.worldofmusic.ca/aboutus.html" title="  WHO IS WORLD OF MUSIC?">&nbsp;&nbsp;WHO&nbsp;IS&nbsp;WORLD&nbsp;OF&nbsp;MUSIC?</a></li><li><img src="'+vbImgPath+'/smy2uc3.gif" alt="  CASTANET.NET SITE" /><a href="http://classifieds.castanet.net/showcat.php/cat/419" title="  CASTANET.NET SITE">&nbsp;&nbsp;CASTANET.NET&nbsp;SITE</a></li><li><img src="'+vbImgPath+'/sm2tuc3.gif" alt="ONLINE STORE" /><a title="ONLINE STORE">ONLINE&nbsp;STORE</a></li><li><img src="'+vbImgPath+'/smp2uc3.gif" alt="  FACEBOOK" /><a href="http://www.facebook.com/womyms" title="  FACEBOOK">&nbsp;&nbsp;FACEBOOK</a></li><li><img src="'+vbImgPath+'/smb2uc3.gif" alt="  TWITTER" /><a href="http://www.twitter.com/worldofmusickel" title="  TWITTER">&nbsp;&nbsp;TWITTER</a></li><li><img src="'+vbImgPath+'/sm6tuc3.gif" alt="YOUTUBE" /><a href="http://www.youtube.com/womification" title="YOUTUBE">YOUTUBE</a></li></ul></div></td><td style="padding-right:0px" title ="CONTACT US"><a href="http://www.worldofmusic.ca/contactus.html" onmouseover=\'xpe("42uc3o");\' onmouseout=\'xpe("42uc3n");\'><img id="xpi_42uc3" src="'+vbImgPath+'/bt42uc3_0.gif" name="vb42uc3" width="129" height="44" border="0" alt="CONTACT US" /></a></td><td style="padding-right:0px" title ="FACEBOOK"><a href="http://www.facebook.com/womyms" onmouseover=\'xpe("z2uc3o");\' onmouseout=\'xpe("z2uc3n");\'><img id="xpi_z2uc3" src="'+vbImgPath+'/btz2uc3_0.gif" name="vbz2uc3" width="112" height="44" border="0" alt="FACEBOOK" /></a></td><td style="padding-right:0px" title ="TWITTER"><a href="http://www.twitter.com/worldofmusickel" onmouseover=\'xpe("u2uc3o");\' onmouseout=\'xpe("u2uc3n");\'><img id="xpi_u2uc3" src="'+vbImgPath+'/btu2uc3_0.gif" name="vbu2uc3" width="100" height="44" border="0" alt="TWITTER" /></a></td><td style="padding-right:0px" title ="YOUTUBE"><a href="http://www.youtube.com/womification" onmouseover=\'xpe("v2uc3o");\' onmouseout=\'xpe("v2uc3n");\'><img id="xpi_v2uc3" src="'+vbImgPath+'/btv2uc3_0.gif" name="vbv2uc3" width="102" height="44" border="0" alt="YOUTUBE" /></a></td></tr></table>');
vb22uc3n=xppr('22uc3_0.gif');vb22uc3o=xppr('22uc3_1.gif');vbt2uc3n=xppr('t2uc3_0.gif');vbt2uc3o=xppr('t2uc3_1.gif');vbp2uc3n=xppr('p2uc3_0.gif');vbp2uc3o=xppr('p2uc3_1.gif');vbo2uc3n=xppr('o2uc3_0.gif');vbo2uc3o=xppr('o2uc3_1.gif');vbw2uc3n=xppr('w2uc3_0.gif');vbw2uc3o=xppr('w2uc3_1.gif');vb42uc3n=xppr('42uc3_0.gif');vb42uc3o=xppr('42uc3_1.gif');vbz2uc3n=xppr('z2uc3_0.gif');vbz2uc3o=xppr('z2uc3_1.gif');vbu2uc3n=xppr('u2uc3_0.gif');vbu2uc3o=xppr('u2uc3_1.gif');vbv2uc3n=xppr('v2uc3_0.gif');vbv2uc3o=xppr('v2uc3_1.gif');var arrowChar='&raquo;';/*
 *==============================================================================
 *
 *     Copyright (c) 2007-2009, by Vista-buttons.com
 *     Version 2.1.2i
 *     http://vista-buttons.com
 *
 *==============================================================================
 * 
 * todo:
 * - item move into anchor
 * - item over using css
 * - item base on li structure
 *
 * variables:
 *   @btIdPref
 *   @pItem
 *   @ulIdPref
 *   @frameSubmenu
 *
 */
 
 
var btIdPref='vb';

function xppr(im) {
	var i=new Image();
	i.src=vbImgPath+'bt'+im;
	return i;
};

function xpe(id) {
	x=id.substring(0,id.length-1);
	if(document[btIdPref+x])document[btIdPref+x].src=eval(btIdPref+id+'.src');
};


/*
*	Vista buttons engine functions
*/ 
function vistaButtons(params){
	// init global vars
	var xobtn = null; // curent element text identifier curent
	var menuContId = 'xpMenuCont';
	var ulIdPref='vbUL_';
	
	
	//Detect browser
	var isDOM=document.getElementById; //DOM1 browser (MSIE 5+, Netscape 6, Opera 5+)
	var isOp=isO5=window.opera && isDOM; //Opera 5+
	var isOp7=isOp && document.readyState; //Opera 7+
	var isIE=document.all && document.all.item && !isOp; //Microsoft Internet Explorer 4+
	var isMz=isDOM && navigator.appName=="Netscape"; //Mozilla or Netscape 6.*


	
	/*
	 *  vistabuttons engine and global object
	 */
	
	/* create new menu and insert it to page */
	document.write('<div id="' + menuContId + '" ></div>');
	var menuCont = document.getElementById(menuContId);
		
	var ULs = document.getElementsByTagName('UL');
	for (var i=0, cnt=ULs.length; i<cnt; i++)
		if (ULs[i].id
		&& (ULs[i].id.substring(0, ulIdPref.length)==ulIdPref) // if is xp UL
		&& !(
			(ULs[i].parentNode)
			&& (ULs[i].parentNode.parentNode)
			&& (ULs[i].parentNode.parentNode.id.substring(0, ulIdPref.length)==ulIdPref)
			)
		)
		{
			// hide vista-buttons link
			var A=document.getElementById(ULs[i].id+'a');
			if (A) A.style.display='none';
		
			createMenu(ULs[i], 0, 0, params, menuCont);
			ULs[i].style.display = 'none';
		};
		
	

	/*
	 * create menu
	 * structure:	<div - menu >
	 *			<table>
	 *				<tr - item>
	 *					<td - for icon><img></td>
	 *					<td - for label><a></a></td>
	 *					<td - for arrow><img></td>
	 *				</tr>
		 *				...
	 *			</table>
	 *		</div>
	 * @ulParent - main parent of menu UL
	 * @iParent - parent item
	 * @level - level
	 */
	function createMenu(ulParent, iParent, level, params, owner){
	
		// create menu obj
		var oMenu = document.createElement((params.subFrame?'table':'div'));
		owner.appendChild(oMenu);
		if (oMenu.tagName == 'TABLE') oMenu.cellSpacing = 0; // set even if don't need in concert
		
		
		// assign menu content and crate a frame if need
		var oMenuCont;
		if (params.subFrame)
			for (var i=0; i<3; i++){
				var row = oMenu.insertRow(-1);
				for (var j=0; j<3; j++){
					var cell = row.insertCell(-1);
					if (i==1 && j==1) oMenuCont = cell
					else cell.className = 'imgFrame'+i+j;
				}
			}
		else
			oMenuCont = (oMenu.tagName == 'DIV')? oMenu: oMenu.insertRow(-1).insertCell(-1);
		
		oMenuCont.className = 'subContent';
		
		
		var oTable = document.createElement('table');
		oMenuCont.appendChild(oTable);

		oMenu.id = ulParent.id + 'tbl';
		oMenu.className = ulParent.className; // inherite style from menu definition with ul
		//oTable.style.visibility = 'hidden';
		oMenu.style.position = 'absolute'; // set here without fail
		oMenu.xpItems = [];		/* submenu items list */
		oMenu.iParent = iParent;
		oMenu.level = level;
		
		oMenu.style.zIndex = 9 + oMenu.level;
		oTable.cellSpacing = 0;

		// set menu events and metods
		oMenu.onmouseover = function (){
			xpStopTimeOut(this);
		};
		oMenu.onmouseout = function (){
			xpStartTimeOut(xpShownMenu)
		};
		oMenu.xpClearMenuMark = function(){
			for (var j = 0; j < this.xpItems.length; j++){
				var p = this.xpItems[j];
				if (p.tagName == 'TR') {
					p.className = p.className.replace('over','');
					if (p.className.indexOf('popup')<0)	p.clrOverImg();
				}
			};
		};
		
		oMenu.smShown = 0;
		
		/* create items  - organizing circle for LI */
		for (var i=0, cntLI=ulParent.childNodes.length; i<cntLI; i++){
			var oLI = ulParent.childNodes[i];
			if (oLI.tagName != 'LI') continue;
			
			
			/* 
			*	create menu item
			*/
			
			// create item base
			var oItem = oTable.insertRow(-1);
			
					
			// parse LI content 
			// <img src="icon">     <a> Item Label </a>     <img src="arrow">     <ul></ul>
			var InnerAnchor = 0;
			oItem.Img = null;
			oItem.ImgOver = null;
			var InnerUl = 0;
			oItem.ImgArrow = null;
			oItem.ImgArrowOver = null;

			// parse LI content
			for (var j=0; j < oLI.childNodes.length; j++)
				if (oLI.childNodes[j].tagName == 'A') InnerAnchor = oLI.childNodes[j];
				else if (oLI.childNodes[j].tagName == 'IMG'){
					if (!InnerAnchor){
						if (!oItem.Img) oItem.Img = oLI.childNodes[j];
						else oItem.ImgOver = oLI.childNodes[j]
					}
					else {
						if(!oItem.ImgArrow) oItem.ImgArrow = oLI.childNodes[j];
						else oItem.ImgArrowOver = oLI.childNodes[j]
					}
				}
				else if (oLI.childNodes[j].tagName == 'UL') InnerUl = oLI.childNodes[j];
				else if (oLI.childNodes[j].tagName == 'DIV'){
					for (var k=0; k<oLI.childNodes[j].childNodes.length; k++)
						if (oLI.childNodes[j].childNodes[k].tagName=='UL') InnerUl = oLI.childNodes[j].childNodes[k];
				}


			if (InnerAnchor || InnerUl || oItem.ImgArrow){ // it is not a separator

				var oItemCont = oItem;
				oItem.className = oLI.className;
				oItem.menu = oMenu;		
				oItem.setPopup = function(){
					this.className +=  ' popup';
				};
				oItem.clrPopup = function(){
					this.className = this.className.replace('popup','');
					if (this.className.indexOf('over')<0) this.clrOverImg();
				};
				oItem.clrOverImg = function(){
					if (this.Img) this.Img.style.display = 'inline';
					if (this.ImgOver) this.ImgOver.style.display = 'none';
					if (this.ImgArrow) this.ImgArrow.style.display = 'inline';
					if (this.ImgArrowOver) this.ImgArrowOver.style.display = 'none'
				};
			
				// create item content
				var oTDIMG = oItemCont.insertCell(-1);
				var oTDLabel = oItemCont.insertCell(-1);
				var oTDArrow = oItemCont.insertCell(-1);
				
				oTDIMG.style.borderRightWidth = '0px';
				oTDLabel.style.borderRightWidth = '0px';
				oTDLabel.style.borderLeftWidth = '0px';
				oTDArrow.style.borderLeftWidth = '0px';
				oTDIMG.style.paddingRight = '4px';
				oTDLabel.style.paddingRight = '4px';
				oTDLabel.style.paddingLeft = '4px';
				oTDArrow.style.paddingLeft = '4px';

				if (oItem.Img) oTDIMG.appendChild(oItem.Img);
				else oTDIMG.innerHTML = '&nbsp;';
				if (oItem.ImgOver) {
					oItem.ImgOver.style.display = 'none';
					oTDIMG.appendChild(oItem.ImgOver);
				};

				// create anchor with link execution
				if (InnerAnchor){
					var newText = document.createElement('SPAN');
					newText.innerHTML = InnerAnchor.innerHTML;

					if (InnerAnchor.href.indexOf('.pdf')>=0 && document.all)
						oTDLabel.appendChild(newText)
					else{
						oTDLabel.appendChild(InnerAnchor);
						
						// off standart click 
						InnerAnchor.onclick = function(){
							return false;
						};
					};
					
					oItem.linkHref = InnerAnchor.href;
					oItem.linkTarget = InnerAnchor.target;
					
					/* add item to menu info */
					with(oMenu) xpItems[xpItems.length] = oItem;
					
					// define my click handle event
					oItem.onclick = function(){
						if (this.linkHref)
							open(this.linkHref, (this.linkTarget? this.linkTarget :"_self"));
					}
				}
				else oTDLabel.innerHTML = '&nbsp;';

				// set item events
				oItem.onmouseover = function (){
					// clear other mark
					this.menu.xpClearMenuMark();
					this.className += ' over';// mark this item
					if (this.ImgOver){
						this.Img.style.display = 'none';
						this.ImgOver.style.display = 'inline';
					};
					if (this.ImgArrowOver){
						this.ImgArrow.style.display = 'none';
						this.ImgArrowOver.style.display = 'inline';
					};

					if (this.smPopup) xpshowmenu(this.smPopup, 1, this); // show new menu
					else xpStartTimeOut(this.menu.smShown); // hide bug
				};
				oItem.onmouseout = function (){
					this.menu.xpClearMenuMark();
				};

				// define submenu
				if (InnerUl){
					// set event for over
					oTDArrow.className = 'arrow';
					if (oItem.ImgArrow){ 
						oTDArrow.appendChild(oItem.ImgArrow);
						if (oItem.ImgArrowOver){
							oItem.ImgArrowOver.style.display = 'none';
							oTDArrow.appendChild(oItem.ImgArrowOver)
						}
					}
					else {
						if (typeof(arrowChar)!='undefined' && arrowChar){
							oTDArrow.appendChild(document.createElement('a'));
							oTDArrow.lastChild.innerHTML = arrowChar;
						}
						else oTDArrow.innerHTML = '&nbsp;';
					};

					oItem.smPopup = createMenu(InnerUl, oItem, level + 1, params, owner);
				}
				else oTDArrow.innerHTML = '&nbsp;';
			}
			else{ // add a separator
				oItem.className = 'separator';
				var oTD = oItem.insertCell(-1);
				oTD.colSpan = 3;
				
				oTD.innerHTML = '<div></div>';
			}

		}

		return oMenu;
	};



	function xpDef(){
	  for(var i=0; i<arguments.length; ++i){if(typeof(arguments[i])=='undefined') return false;}
	  return true;
	};


	function xpClientSize(){
	
		var x=0,y=0,w=0,h=0,doc=document,win=window;

		var cond = (!doc.compatMode || doc.compatMode == 'CSS1Compat') /*&& !win.opera */&& doc.documentElement;
		// height
		if(cond && doc.documentElement.clientHeight) h=doc.documentElement.clientHeight;
		else if(doc.body && doc.body.clientHeight) h=doc.body.clientHeight;
		else if(xpDef(win.innerWidth,win.innerHeight,doc.width)) {
			h=win.innerHeight;
			if(doc.width>win.innerWidth) h-=16;
		};
		//width
		if(cond && doc.documentElement.clientWidth) w=doc.documentElement.clientWidth;
		else if(doc.body && doc.body.clientWidth) w=doc.body.clientWidth;
		else if(xDef(win.innerWidth,win.innerHeight,doc.height)) {
			w=win.innerWidth;
			if(doc.height>win.innerHeight) w-=16;
		}

		if(doc.documentElement && doc.documentElement.scrollLeft) x=doc.documentElement.scrollLeft;
		else if(doc.body && xpDef(doc.body.scrollLeft)) x=doc.body.scrollLeft;

		if(doc.documentElement && doc.documentElement.scrollTop) y=doc.documentElement.scrollTop;
		else if(doc.body && xpDef(doc.body.scrollTop)) y=doc.body.scrollTop;
		
		return {x:x,y:y,w:w,h:h};
	};



	function xpObjectSize(o){
		var w = (isOp&&!isOp7) ? o.style.pixelWidth  : document.layers ? o.clip.width /* Netscape 4.*/ : o.offsetWidth;
		var h = (isOp&&!isOp7) ? o.style.pixelHeight : document.layers ? o.clip.height/* Netscape 4.*/ : o.offsetHeight;
		return {x:w, y:h};
	};



	/*
	 * calc absolute coordinates of specified object
	 */
	function xppos(obj){
		var l=0, t=0;
		while (obj) //  && obj.tagName!='BODY'
		{
			l += obj.offsetLeft;
			t += obj.offsetTop;
		
			// some browser not right set offsetParent
			//		if (obj.style && obj.style.position=='absolute') break;// this is a fix but not constant
			
			obj = obj.offsetParent;
		};	

		// fix special for opera
		if (document.body) with (document){
			if (body.leftMargin) l -= body.leftMargin;
			if (body.topMargin) t -= body.topMargin
		}

		return {x: l, y: t};
	};



	/* show menu item
	 * ind - part of object identifier
	 * @isVertical - previous menu is vertical
	 * @iParent - object created events identifier - this is about a anchor or previous menu item
	 */
	var xpshow = window.xpshow = function(ind, isVertical, iParent){
		xpshowmenu(ulIdPref+ind+'tbl', isVertical, iParent);
	}

	function xpshowmenu(menu, isVertical, iParent)
	{
		menu = get(menu);
		if (!menu) return;
		
		// already showing?
		if (menu.style.visibility == 'visible'){
			xpStopTimeOut(menu);
			return;
		};
		
		// hide previous menu in this level
		if (iParent && iParent.menu)
			xphide(iParent.menu.smShown);
		if (!menu.level && (xpShownMenu != menu))
			xphide(xpShownMenu);

		// it saves button main menu
		if (!menu.level) xobtn = menu.id.replace(ulIdPref,'').replace('tbl','');

		// Parent - parent menu item
		var parentObj =  (iParent.tagName == 'A')? iParent.parentNode: iParent;

		var pos = xppos(parentObj); // parent coordinate
		if (iParent && iParent.menu){
			pos.x -= iParent.menu['scrollLeft'] || 0;
			pos.y -= iParent.menu['scrollTop'] || 0;
		};
		var size = xpObjectSize(parentObj);

		menu.xpMenuX = 1; // menu open direction
		menu.xpMenuDx = 1; // menu open  offset
		if (menu.level > 0){
			// inherit direction from previous level
			menu.xpMenuX = menu.iParent.menu.xpMenuX;
			menu.xpMenuDx = menu.iParent.menu.xpMenuDx;
		};
		
		// initialize property
		menu.style.overflow = 'visible';
		menu.style.height = 'auto';
		menu.style.width = 'auto';

		// fix bug position for some document structure
		menu.style.left = '0px';
		menu.style.top = '0px';
		var parentAbs = xppos(menu);

		// detect window size
		var WinSize = xpClientSize();
		var menuSize = xpObjectSize(menu);

		// calc and init Y coordinate
		var CalcedPos = xpCalcMenuPos(WinSize.y, WinSize.h, pos.y, size.y, menuSize.y, menu.xpMenuDx, isVertical);

		menu.xpMenuDx = CalcedPos.align;

		// fix scrollbar bug for opera
		if (isOp && !menu.OrigWidth) menu.OrigWidth = menu.clientWidth;//menu.clientWidth;


		// size was changed - resize height, open scroll, correct width for scrollbar
		if (CalcedPos.size < menuSize.y){
			//xpsm.style.overflowY = 'auto';
			menu.style.overflow = 'auto';
			//menu.style.overflow = 'visible';
			if (isIE) menu.style.overflowX = 'visible';
			if (isIE) menu.style.width = menu.offsetWidth + 17 + 'px';
			else if (isMz) menu.style.magrinRight = 20;

			menu.style.height = CalcedPos.size + 'px';
			menu.scrollTop  = 0;
			menu.scrollLeft = 0;

			// fix scrollbar bug for opera
			if (isOp) menu.style.width = menu.OrigWidth + 'px';
		};

		menu.style.top = CalcedPos.xy - parentAbs.y + 'px';

		// calc and init X coorinate
		menuSize = xpObjectSize(menu);
		CalcedPos = xpCalcMenuPos(WinSize.x, WinSize.w, pos.x, size.x, menuSize.x, menu.xpMenuX, !isVertical);
		menu.xpMenuX = CalcedPos.align;
		if (CalcedPos.size < menuSize.x)// size was changed
			if (menu.xpMenuX > 0)
				CalcedPos.xy -= (menuSize.x - CalcedPos.size); // covered
		menu.style.left = CalcedPos.xy - parentAbs.x + 'px';

		menu.style.visibility = 'visible';

		if (!menu.level) xpShownMenu = menu
		else {
			iParent.menu.smShown = menu;
			iParent.setPopup();
		}
		
	};

	
	

	/*
	 calc menu pos for one coordinate 
	 use size of menu, parent object and screen, menu direction and parent menu orientation
	 screenSize - size of screen
	 parentXY, parentSize - position and size of parent menu
	 size - size of selected menu
	 align = +1(right, bottom), 0(center), -1(left, top)  - direction of menu
	 oHoriz  = 0(vertical), 1(horizontal) - orientation of parent menu
	*/
	function xpCalcMenuPos(screenXY, screenSize, parentXY, parentSize, size, align, oHoriz){
		var xy = parentXY;
		var newSize = size;
		var newAlign = align;
		var space = 5; // space to document borders
		
		if ((align == 0) && (!oHoriz)) align = 1; //center may be only for horizontal orientation
		
		if (!oHoriz) {// VERTICAL
			// |------<--------->)<---parent--->(<---------->---------|
			// check the place for the future menu and correct orientation
			if	(((newAlign >= 0) && (parentXY + parentSize + size > screenSize + screenXY - space)) // don't go in screen from the algin
								|| ((newAlign < 0) && (parentXY - size < space))){
				// correct direction about most of place
				if (parentXY - screenXY > screenSize + screenXY - (parentXY + parentSize)) newAlign = -1; else newAlign = 1;
			};
			// set coordinate and size
			if (newAlign >= 0){
				xy = parentXY + parentSize;
				if (screenSize + screenXY - space - xy < newSize) newSize = screenSize + screenXY  - space - xy;
			}
			else {
				xy = parentXY - newSize;
				if (xy - screenXY < space){
					xy = space + screenXY;
					newSize = parentXY - space - screenXY;
				}
			}
		}
		else {
			// --------------- <---parent---> -------------------
			//                      (<------------------------>--------|
			//   |-----<--------------------->)
			// if menu not go in screen
			if (newSize > screenSize - 2*space) {
				xy = space + screenXY;
				newSize = screenSize - 2*space;
			}
			else{
				// calc
				xy = parentXY + parentSize/2 - newSize/2 + newAlign * (newSize/2 - parentSize/2);

				// correct
				if (xy < space + screenXY){
					newAlign = 1;
					xy = space + screenXY;
				}
				if (xy + size > screenSize  + screenXY - space){
					newAlign = -1;
					xy -= xy + newSize - (screenSize  + screenXY - space);
				}
			}
		};

		return {xy: xy, size: newSize, align: newAlign};
	};
	
	
	function get(o){
		return (typeof o == 'string')? document.getElementById(o): o
	}
	

	/*
	 * hide submenu
	 * @menu
	 */
	function xphide(menu){
		menu = get(menu);
		if (!menu || menu.style.visibility != 'visible') return;

		// hide child
		xphide(menu.smShown);
		
		// off cursor selection
		menu.xpClearMenuMark();

		// hide the menu
		menu.style.visibility = 'hidden';

		// if all submenu close, then change button icon
		if (menu.level == 0){
			xpe(xobtn + 'n');//???????????
		}

		menu.smShown = 0;
		if (menu.iParent) menu.iParent.clrPopup();

		// clear to hide timeout
		if (menu.hideTimer){
			clearTimeout(menu.hideTimer);
			menu.hideTimer = null;
		}
	};
	window.xphide = xphide;
	
	

	// on mouse out from menu
	window.xpsmout = function(sender){
		if (!sender) return;
		// set time out
		xpStartTimeOut(xpShownMenu)
	};
	

	// on mouse over menu
	window.xpsmover = function(menu)
	{
		xpStopTimeOut(menu);
	};


	/*
	*	clear Time out for all parent and this menu 
	*	run in submenu engine context
	*/
	function xpStopTimeOut(menu){
		for( var o = menu; o; o = o.iParent? o.iParent.menu: 0)
			if (o.hideTimer)
				o.hideTimer = clearTimeout(o.hideTimer);
	};

	
	/*
	 * 	 start hide timer for this menu and all its submenu 
	 */
	function xpStartTimeOut(menu){
		if (menu) {
			if (!menu.hideTimer) 
				menu.hideTimer = setTimeout( function (){ xphide(menu) } , 300);
			xpStartTimeOut(menu.smShown)
		}
	}


};// end of menu component

var xpShownMenu = 0; // curent open menu tread

new vistaButtons({
	subFrame: 0
});



