Yahoo Groups archive

Disklavier

Index last updated: 2026-04-28 23:20 UTC

Message

Re: [disklavier] Re: Alternative to tablet and PDA for MKIV

2007-11-08 by Kevin Goroway

Written in straight java so it should work on anything.  That's the plan anyway.  I plan to test from PC and Linux for sure.

----- Original Message ----
From: jheitzeb1 <jheitzeb1@...>
To: disklavier@yahoogroups.com
Sent: Thursday, November 8, 2007 1:21:51 PM
Subject: [disklavier] Re: Alternative to tablet and PDA for MKIV









  


    
            Kevin,  will the software run on Macintosh computers or just PC's?  A search and catalog 

function would be very nice.



Thanks,

Joan



--- In disklavier@yahoogro ups.com, Kevin Goroway <kgoroway@.. .> wrote:

>

> Well, one might argue that it's much worse, since it doesn't support most of what the 

PDA does.

> 

> It's what it can do (in the near future) that the PDA can't, though, that makes it 

interesting.

> 1) search for songs and albums.  You know you've got "chopsticks" saved on there 

somewhere, but you've completely forgotten where.  Type in chopsticks, and there it 

is...Click on it to play.

> 2) Ability to print out a catalog of what you've got stored on your DKV.  Have a large 

library on there?  Want to present a list of what's available to some visitors?  Hand them 

the printout.  

> 

> The list can go on and on...It's also MUCH faster than the PDA, and has a whole lot more 

screen space to display album/song titles...though (in my case) it requires going to a 

different room, since I'm not doing this on a laptop. :-(

> 

> There's also the following possibility, which I haven't investigated yet.

> 

> Let's say you have a large MIDI library on your computer, but you haven't moved it to 

your DKV (for whatever reason).  You also don't have a MIDI connection between your 

computer and your DKV.  I think I can let you point the software are a folder filled with 

MIDI files on the computer, and have the DKV play them.  Here's how I imagine it would 

work.  

> a) computer copies file to the piano's from/to pc folder

> b) computer forces DKV to "refresh" it's from/to pc folder

> c) computer tells DKV to start playing that file

> d) when song is finished, computer removes file from piano's from/to pc folder

> e) lather/rinse/ repeat

> 

> -Kevin

> 

> ----- Original Message ----

> From: jheitzeb1 <jheitzeb1@. ..>

> To: disklavier@yahoogro ups.com

> Sent: Thursday, November 8, 2007 11:04:57 AM

> Subject: [disklavier] Re: Alternative to tablet and PDA for MKIV

> 

> 

> 

> 

> 

> 

> 

> 

> 

>   

> 

> 

>     

>             What makes your program any different than using the pda with your MKIV?

> 

> 

> 

> Thanks,

> 

> Joan

> 

> 

> 

> --- In disklavier@yahoogro ups.com, Kevin Goroway <kgoroway@ .> wrote:

> 

> >

> 

> > Roberto,

> 

> > 

> 

> > I plan to continue to update the group on my progress (until I'm told to cut it out :-) ).

> 

> > 

> 

> > I did have a breakthrough last night.  I found out why I couldn't select songs to play.  I 

> 

> was sending the piano the song_id and the album_id (which seemed to make perfect 

> 

> sense), but the piano wants the album_id and the song sequence number, so, for 

example, 

> 

> "play the third song from album 1024"

> 

> > 

> 

> > I've got it all working now so I can peruse the pianosoft and the user sections as a 

tree-

> 

> view, select the song I want to hear, and press play.  It's actually quite fun.  The piano 

> 

> does have a natural behavior that is a bit counter-intuitive. ..Once you play a song, the 

> 

> piano will continue to play the next song on the album when that one is finished, and it 

> 

> will keep on going...No big deal, really.

> 

> > 

> 

> > The software needs some more things.  The ability to search with wildcards, support 

for 

> 

> the other "folders" (usb, floppy, etc), the ability to export the database, and ability to 

print 

> 

> a report on the database.  Ultimately, I'd REALLY love for it to be able to update the 

> 

> database (just the simple notion of correcting spelling/case/ titles would be great!).  I 

think 

> 

> this is also trivial though.  There's really nothing on the list that is difficult at all....it's all 

> 

> just time.

> 

> > 

> 

> > That being said, I'd love to release this even as is so people can start playing with 

it...but 

> 

> how many of you are even interested?  It also has absolutely no error checking in it at 

all, 

> 

> currently.

> 

> > 

> 

> > -Kevin

> 

> > 

> 

> > ----- Original Message ----

> 

> > From: ipermedia <r.fasciani@ ...>

> 

> > To: disklavier@yahoogro ups.com

> 

> > Sent: Wednesday, November 7, 2007 8:15:53 AM

> 

> > Subject: [disklavier] Re: Alternative to tablet and PDA for MKIV

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> >   

> 

> > 

> 

> > 

> 

> >     

> 

> >             Hi Kevin,

> 

> > 

> 

> > please let me know about your progress in this develop, I hope to

> 

> > 

> 

> > contribute as soon as mu DKV will work again.

> 

> > 

> 

> > Thanks

> 

> > 

> 

> > 

> 

> > 

> 

> > Roberto

> 

> > 

> 

> > 

> 

> > 

> 

> > --- In disklavier@yahoogro ups.com, Kevin Goroway <kgoroway@ .> wrote:

> 

> > 

> 

> > >

> 

> > 

> 

> > > Matt, I'm going to reply to this directly since it's probably

> 

> > 

> 

> > outside the scope of this group...

> 

> > 

> 

> > > 

> 

> > 

> 

> > > But here's an update for anyone following along.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I got my linux installation working, and was able to sniff the

> 

> > 

> 

> > traffic.  I have a good capture now, and I can try to find out why I

> 

> > 

> 

> > am unable to do some of the things I want to do.  

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I did notice something very interesting that I hadn't seen mentioned

> 

> > 

> 

> > before.  It turns out that the tablet interface interacts with the

> 

> > 

> 

> > piano differently from the PDA.  I hadn't expected this at all, but

> 

> > 

> 

> > instead of using XML to request album information, the tablet instead

> 

> > 

> 

> > uses HTTP to access a php page on the server.  I'm surprised they

> 

> > 

> 

> > bothered to have two ways to query the same information.  Since it's

> 

> > 

> 

> > noise in my captures at the moment, I plan to turn off the tablet and

> 

> > 

> 

> > concentrate on the PDA.  I hope to revisit the tablet interface to see

> 

> > 

> 

> > if there is anything more interesting there.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > -Kevin

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ----- Original Message ----

> 

> > 

> 

> > > From: Matthew Teeter <mrmuk7@>

> 

> > 

> 

> > > To: disklavier@yahoogro ups.com

> 

> > 

> 

> > > Sent: Tuesday, November 6, 2007 9:07:27 PM

> 

> > 

> 

> > > Subject: Re: [disklavier] Re: Alternative to tablet and PDA for MKIV

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >             Hi Kevin, 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > When you say you've been unable to get our software to work, do you

> 

> > 

> 

> > mean specifically the command that switches albums/songs fails, or no

> 

> > 

> 

> > commands work?  

> 

> > 

> 

> > > 

> 

> > 

> 

> > > We tested the software with firmware 2.0

> 

> > 

> 

> > >  and it appeared to work.  Perhaps you are using the 2.1 firmware? 

> 

> > 

> 

> > Does the connection on port 3191 connect successfully?

> 

> > 

> 

> > > 

> 

> > 

> 

> > > The PRC and TRC used to send an identifier along with their messages

> 

> > 

> 

> > to the piano.  Our software did not supply an identifier, with no ill

> 

> > 

> 

> > effects.  But that is probably why it is prompting you to upgrade :-).

> 

> > 

> 

> >  Cute.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > You shouldnt have to install Linux just to sniff wireless traffic. 

> 

> > 

> 

> > I used Ethereal on Windows and it worked great.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Matthew

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > On 11/6/07, Kevin Goroway

> 

> > 

> 

> > >  <kgoroway@yahoo. com> wrote:

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >             

> 

> > 

> 

> > > Update on my progress.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > All of the database stuff that I've tried has been pretty simple, so

> 

> > 

> 

> > the ability to fetch albums and songs is pretty much complete.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I ran into quite a bit of difficulty once I tried controlling the

> 

> > 

> 

> > piano from my java app though (this uses a separate connection).  I

> 

> > 

> 

> > can make it do a lot of the simple things (play, stop, etc), but I

> 

> > 

> 

> > can't select a different song/album.  It seems that the research paper

> 

> > 

> 

> > and project are either out of date (I've been unable to make the

> 

> > 

> 

> > project itself work), or I'm just doing something wrong.  What's there

> 

> > 

> 

> > already though works well.  The UI and Socket are on separate threads,

> 

> > 

> 

> > and there is a thread that heartbeats "<active/>"

> 

> > 

> 

> > >  with the piano every 3 seconds.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I did notice that the piano is sending me XML that indicates that I

> 

> > 

> 

> > should pop up a message box informing the user that the software is

> 

> > 

> 

> > out of date running version "too old to tell", and that they should

> 

> > 

> 

> > update to 

> 

> > 

> 

> > > 2.0.  :-)  That makes me wonder how much of the protocol has changed.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > So, I've ended up having to install linux so I can get a wireless

> 

> > 

> 

> > card into "monitor" mode so that I can sniff the traffic.  I'll do

> 

> > 

> 

> > that tonight to try to solve the simplest of cases (waking up from

> 

> > 

> 

> > standby, and selecting an album/song).

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > -Kevin

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ----- Original Message ----

> 

> > 

> 

> > > From: Kevin Goroway <

> 

> > 

> 

> > > kgoroway@yahoo. com>

> 

> > 

> 

> > > To: disklavier@yahoogro ups.com

> 

> > 

> 

> > > Sent: Friday, November 2, 2007 8:07:13 AM

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Subject: Re: [disklavier] Re:

> 

> > 

> 

> > >  Alternative to tablet and PDA for MKIV

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >             

> 

> > 

> 

> > > Matt, and Chris,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Thanks so much for joining our conversation!  The background is very

> 

> > 

> 

> > interesting.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Matt, I think you've done a wonderful job under the circumstances,

> 

> > 

> 

> > and it's opened up a world of possibilities.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I'm wrapping up a pure java implementation that doesn't try to mimic

> 

> > 

> 

> > the PRC at all.  Instead it's basically a song and album browser (with

> 

> > 

> 

> > search capabilities) and the ability to play them once you find them.

> 

> > 

> 

> >  I'm also planning to include the ability to dump your songs and

> 

> > 

> 

> > albums to a CSV file so you can move them wherever you'd like (excel,

> 

> > 

> 

> > access, whatever), and a rudimentary reporting view so that you can at

> 

> > 

> 

> > least get a hardcopy of what you have on your

> 

> > 

> 

> > >  Disklavier.  

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Like Matt, I program for a living (well, mostly manage now), and

> 

> > 

> 

> > with 3 kids at home I don't get much time to write code when I get

> 

> > 

> 

> > there...besides, I also want to actually play piano! :-)  So, it may

> 

> > 

> 

> > take a little while to actually wrap this up, but it's already got

> 

> > 

> 

> > some real functionality.  I plan to release it as source so that

> 

> > 

> 

> > others can continue it, and hopefully flesh it out to be more of a

> 

> > 

> 

> > tablet/pda replacement.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Thanks again for joining us, and any insight you can provide would

> 

> > 

> 

> > be most helpful!

> 

> > 

> 

> > > 

> 

> > 

> 

> > > -Kevin

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ----- Original Message ----

> 

> > 

> 

> > > From: mrmuk7 <mrmuk7@gmail. com>

> 

> > 

> 

> > > To: disklavier@yahoogro 

> 

> > 

> 

> > > ups.com

> 

> > 

> 

> > > Sent: Thursday, November 1, 2007 10:40:56 PM

> 

> > 

> 

> > > Subject: [disklavier] Re: Alternative to tablet and PDA for MKIV

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >             Hello all,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I'm certainly surprised and pleased to see such enthusiasm regarding

> 

> > 

> 

> > > 

> 

> > 

> 

> > > our software controller for the Disklavier.  I never expected anyone

> 

> > 

> 

> > > 

> 

> > 

> 

> > > to actually scrutinize those development notes I made while working on

> 

> > 

> 

> > > 

> 

> > 

> 

> > > the project :-)

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > As Chris mentioned, we choose Flash initially because we suspected the

> 

> > 

> 

> > > 

> 

> > 

> 

> > > original software used Flash due to its transparency effects and

> 

> > 

> 

> > > 

> 

> > 

> 

> > > animations.  It also seemed like a good choice because it had a built

> 

> > 

> 

> > > 

> 

> > 

> 

> > > in class called XMLSocket which would conveniently send XML on ports >

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 1024, just like the original software.  It is too bad we never got

> 

> > 

> 

> > > 

> 

> > 

> 

> > > access to some of Yamaha's UI Elements; with those in place, the

> 

> > 

> 

> > > 

> 

> > 

> 

> > > software would have a much more familiar feel to less technical users.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > In retrospect, I do agree that the overall architecture of the

> 

> > 

> 

> > > 

> 

> > 

> 

> > > software is somewhat of a hack due to the java backend running in a

> 

> > 

> 

> > > 

> 

> > 

> 

> > > separate process.  Note that this whole thing was thrown together in

> 

> > 

> 

> > > 

> 

> > 

> 

> > > about 4 months with only one person working on it, and no help from

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Yamaha, so I had little time to evaluate and implement a more elegant

> 

> > 

> 

> > > 

> 

> > 

> 

> > > solution. 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > We had already invested a large amount of time in Flash when I

> 

> > 

> 

> > > 

> 

> > 

> 

> > > realized I needed a direct database connection.  I couldn't find any

> 

> > 

> 

> > > 

> 

> > 

> 

> > > free Flash plugins/source that could send SQL statements

> 

> > 

> 

> > > 

> 

> > 

> 

> > > synchronously.  A few existed, but they cost money, and we wanted the

> 

> > 

> 

> > > 

> 

> > 

> 

> > > software to be completely free and redistributable.  To get around

> 

> > 

> 

> > > 

> 

> > 

> 

> > > this problem, I implemented the Java backend, which of course takes

> 

> > 

> 

> > > 

> 

> > 

> 

> > > XML from the Flash app, restructures it into a query, and then sends

> 

> > 

> 

> > > 

> 

> > 

> 

> > > the results back to the Flash app asynchronously. 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > If members here are interested in rearchitecting the program, I would

> 

> > 

> 

> > > 

> 

> > 

> 

> > >  be wary of Flash.  It is not what I would consider an elegant or

> 

> > 

> 

> > > 

> 

> > 

> 

> > > powerful language.  Even the simplest tasks took hours to accomplish,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > and in the version I was using (Flash 8), there were very annoying

> 

> > 

> 

> > > 

> 

> > 

> 

> > > bugs.  For example, in certain cases, the program compilation is

> 

> > 

> 

> > > 

> 

> > 

> 

> > > actually affected by where you place comments in the code! 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Ridiculous, I know.  That's not to say that if you didn't use Flash,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > you couldn't make a pretty interface.  There are a lot of great

> 

> > 

> 

> > > 

> 

> > 

> 

> > > alternatives now that look as good, if not better, than Flash...

> 

> > 

> 

> > > 

> 

> > 

> 

> > > including things you can do with WPF 3.0 and Silverlight (though I

> 

> > 

> 

> > > 

> 

> > 

> 

> > > haven't worked with them first-hand myself).

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > When we were asking Yamaha if we could publish the paper disclosing

> 

> > 

> 

> > > 

> 

> > 

> 

> > > details of their software, they mentioned that they might incorporate

> 

> > 

> 

> > > 

> 

> > 

> 

> > > additional security precautions in future versions.  I don't know if

> 

> > 

> 

> > > 

> 

> > 

> 

> > > that is a good or bad thing, but I certainly hope they keep the

> 

> > 

> 

> > > 

> 

> > 

> 

> > > protocol open and easy for third party devs to access.  Plus, judging

> 

> > 

> 

> > > 

> 

> > 

> 

> > > by their current history of software releases, this shouldn't happen

> 

> > 

> 

> > > 

> 

> > 

> 

> > > any time soon.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Regardless of Yamaha's position, a community of Disklavier users

> 

> > 

> 

> > > 

> 

> > 

> 

> > > enthusiastic about improving the capabilities of their instrument will

> 

> > 

> 

> > > 

> 

> > 

> 

> > > only serve to promote Yamaha's product.  I'll be happy to stop by here

> 

> > 

> 

> > > 

> 

> > 

> 

> > > every so often and provide any insight I can.  I do work full time now

> 

> > 

> 

> > > 

> 

> > 

> 

> > > doing software development, so when I come home at the end of the day,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > writing software is usually quite low on my activity list; but I still

> 

> > 

> 

> > > 

> 

> > 

> 

> > > live near the University and will be happy to support any development

> 

> > 

> 

> > > 

> 

> > 

> 

> > > efforts that commence (testing, troubleshooting, different firmwares,

> 

> > 

> 

> > > 

> 

> > 

> 

> > > etc).

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > I can help you get the software working if you would be so kind as to

> 

> > 

> 

> > > 

> 

> > 

> 

> > > post details such as: firmware version, PostgreSQL JDBC driver

> 

> > 

> 

> > > 

> 

> > 

> 

> > > version, java version, exact error messages, and the like.  I know of

> 

> > 

> 

> > > 

> 

> > 

> 

> > > at least 3 people around the world that have got it working

> 

> > 

> 

> > successfully.

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > Thanks for your interest!

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ____________ _________ _________ _________ _________ __

> 

> > 

> 

> > > Do You Yahoo!?

> 

> > 

> 

> > > Tired of spam?  Yahoo! Mail has the best spam protection around 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > http://mail. yahoo.com

> 

> > 

> 

> > >  

> 

> > 

> 

> > >     

> 

> > 

> 

> > > 

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ____________ _________ _________ _________ _________ __

> 

> > 

> 

> > > Do You Yahoo!?

> 

> > 

> 

> > > Tired of spam?  Yahoo! Mail has the best spam protection around 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > http://mail. yahoo.com 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >     

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >   

> 

> > 

> 

> > > 

> 

> > 

> 

> > >     

> 

> > 

> 

> > >     

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > <!--

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-mkp{

> 

> > 

> 

> > > border:1px solid #d8d8d8;font- family:Arial; margin:14px

> 

> > 

> 

> > 0px;padding: 0px 14px;}

> 

> > 

> 

> > > #ygrp-mkp hr{

> 

> > 

> 

> > > border:1px solid #d8d8d8;}

> 

> > 

> 

> > > #ygrp-mkp #hd{

> 

> > 

> 

> > >

> 

> > 

> 

> > color:#628c2a; font-size: 85%;font- weight:bold; line-height: 122%;margin: 10px

> 

> > 

> 

> > 0px;}

> 

> > 

> 

> > > #ygrp-mkp #ads{

> 

> > 

> 

> > > margin-bottom: 10px;}

> 

> > 

> 

> > > #ygrp-mkp .ad{

> 

> > 

> 

> > > padding:0 0;}

> 

> > 

> 

> > > #ygrp-mkp .ad a{

> 

> > 

> 

> > > color:#0000ff; text-decoration: none;}

> 

> > 

> 

> > > -->

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > <!--

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-sponsor #ygrp-lc{

> 

> > 

> 

> > > font-family: Arial;}

> 

> > 

> 

> > > #ygrp-sponsor #ygrp-lc #hd{

> 

> > 

> 

> > > margin:10px 0px;font-weight: bold;font- size:78%; line-height: 122%;}

> 

> > 

> 

> > > #ygrp-sponsor #ygrp-lc .ad{

> 

> > 

> 

> > > margin-bottom: 10px;padding: 0 0;}

> 

> > 

> 

> > > -->

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > <!--

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-mlmsg {font-size:13px; font-family: arial, helvetica, clean,

> 

> > 

> 

> > sans-serif;}

> 

> > 

> 

> > > #ygrp-mlmsg table {font-size:inherit; font:100% ;}

> 

> > 

> 

> > > #ygrp-mlmsg select, input, textarea {font:99% arial, helvetica,

> 

> > 

> 

> > clean, sans-serif;}

> 

> > 

> 

> > > #ygrp-mlmsg pre, code {font:115% monospace;}

> 

> > 

> 

> > > #ygrp-mlmsg * {line-height: 1.22em;}

> 

> > 

> 

> > > #ygrp-text{

> 

> > 

> 

> > > font-family: Georgia;

> 

> > 

> 

> > > }

> 

> > 

> 

> > > #ygrp-text p{

> 

> > 

> 

> > > margin:0 0 1em 0;}

> 

> > 

> 

> > > #ygrp-tpmsgs{

> 

> > 

> 

> > > font-family: Arial;

> 

> > 

> 

> > > clear:both;}

> 

> > 

> 

> > > #ygrp-vitnav{

> 

> > 

> 

> > > padding-top: 10px;font- family:Verdana; font-size: 77%;margin: 0;}

> 

> > 

> 

> > > #ygrp-vitnav a{

> 

> > 

> 

> > > padding:0 1px;}

> 

> > 

> 

> > > #ygrp-actbar{

> 

> > 

> 

> > > clear:both;margin: 25px

> 

> > 

> 

> > 0;white-space: nowrap;color: #666;text- align:right; }

> 

> > 

> 

> > > #ygrp-actbar .left{

> 

> > 

> 

> > > float:left;white- space:nowrap; }

> 

> > 

> 

> > > .bld{font-weight: bold;}

> 

> > 

> 

> > > #ygrp-grft{

> 

> > 

> 

> > > font-family: Verdana;font- size:77%; padding:15px 0;}

> 

> > 

> 

> > > #ygrp-ft{

> 

> > 

> 

> > > font-family: verdana;font- size:77%; border-top: 1px solid #666;

> 

> > 

> 

> > > padding:5px 0;

> 

> > 

> 

> > > }

> 

> > 

> 

> > > #ygrp-mlmsg #logo{

> 

> > 

> 

> > > padding-bottom: 10px;}

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-vital{

> 

> > 

> 

> > > background-color: #e0ecee;margin- bottom:20px; padding:2px 0 8px 8px;}

> 

> > 

> 

> > > #ygrp-vital #vithd{

> 

> > 

> 

> > >

> 

> > 

> 

> > font-size:77% ;font-family: Verdana;font- weight:bold; color:#333; text-transform: 

> 

> uppercase; }

> 

> > 

> 

> > > #ygrp-vital ul{

> 

> > 

> 

> > > padding:0;margin: 2px 0;}

> 

> > 

> 

> > > #ygrp-vital ul li{

> 

> > 

> 

> > > list-style-type: none;clear: both;border: 1px solid #e0ecee;

> 

> > 

> 

> > > }

> 

> > 

> 

> > > #ygrp-vital ul li .ct{

> 

> > 

> 

> > >

> 

> > 

> 

> > font-weight: bold;color: #ff7900;float: right;width: 2em;text- align:right; padding-

right: 

> 

> .5em;}

> 

> > 

> 

> > > #ygrp-vital ul li .cat{

> 

> > 

> 

> > > font-weight: bold;}

> 

> > 

> 

> > > #ygrp-vital a{

> 

> > 

> 

> > > text-decoration: none;}

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-vital a:hover{

> 

> > 

> 

> > > text-decoration: underline; }

> 

> > 

> 

> > > 

> 

> > 

> 

> > > #ygrp-sponsor #hd{

> 

> > 

> 

> > > color:#999;font- size:77%; }

> 

> > 

> 

> > > #ygrp-sponsor #ov{

> 

> > 

> 

> > > padding:6px 13px;background- color:#e0ecee; margin-bottom: 20px;}

> 

> > 

> 

> > > #ygrp-sponsor #ov ul{

> 

> > 

> 

> > > padding:0 0 0 8px;margin:0; }

> 

> > 

> 

> > > #ygrp-sponsor #ov li{

> 

> > 

> 

> > > list-style-type: square;padding: 6px 0;font-size: 77%;}

> 

> > 

> 

> > > #ygrp-sponsor #ov li a{

> 

> > 

> 

> > > text-decoration: none;font- size:130% ;}

> 

> > 

> 

> > > #ygrp-sponsor #nc{

> 

> > 

> 

> > > background-color: #eee;margin- bottom:20px; padding:0 8px;}

> 

> > 

> 

> > > #ygrp-sponsor .ad{

> 

> > 

> 

> > > padding:8px 0;}

> 

> > 

> 

> > > #ygrp-sponsor .ad #hd1{

> 

> > 

> 

> > >

> 

> > 

> 

> > font-family: Arial;font- weight:bold; color:#628c2a; font-size: 100%;line- height:

122% ;}

> 

> > 

> 

> > > #ygrp-sponsor .ad a{

> 

> > 

> 

> > > text-decoration: none;}

> 

> > 

> 

> > > #ygrp-sponsor .ad a:hover{

> 

> > 

> 

> > > text-decoration: underline; }

> 

> > 

> 

> > > #ygrp-sponsor .ad p{

> 

> > 

> 

> > > margin:0;}

> 

> > 

> 

> > > o{font-size: 0;}

> 

> > 

> 

> > > .MsoNormal{

> 

> > 

> 

> > > margin:0 0 0 0;}

> 

> > 

> 

> > > #ygrp-text tt{

> 

> > 

> 

> > > font-size:120% ;}

> 

> > 

> 

> > > blockquote{margin: 0 0 0 4px;}

> 

> > 

> 

> > > .replbq{margin: 4;}

> 

> > 

> 

> > > -->

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > 

> 

> > 

> 

> > > ____________ _________ _________ _________ _________ __

> 

> > 

> 

> > > Do You Yahoo!?

> 

> > 

> 

> > > Tired of spam?  Yahoo! Mail has the best spam protection around 

> 

> > 

> 

> > > http://mail. yahoo.com

> 

> > 

> 

> > >

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> >     

> 

> >   

> 

> > 

> 

> >     

> 

> >     

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > <!--

> 

> > 

> 

> > #ygrp-mkp{

> 

> > border:1px solid #d8d8d8;font- family:Arial; margin:14px 0px;padding: 0px 14px;}

> 

> > #ygrp-mkp hr{

> 

> > border:1px solid #d8d8d8;}

> 

> > #ygrp-mkp #hd{

> 

> > color:#628c2a; font-size: 85%;font- weight:bold; line-height: 122%;margin: 10px 

0px;}

> 

> > #ygrp-mkp #ads{

> 

> > margin-bottom: 10px;}

> 

> > #ygrp-mkp .ad{

> 

> > padding:0 0;}

> 

> > #ygrp-mkp .ad a{

> 

> > color:#0000ff; text-decoration: none;}

> 

> > -->

> 

> > 

> 

> > 

> 

> > 

> 

> > <!--

> 

> > 

> 

> > #ygrp-sponsor #ygrp-lc{

> 

> > font-family: Arial;}

> 

> > #ygrp-sponsor #ygrp-lc #hd{

> 

> > margin:10px 0px;font-weight: bold;font- size:78%; line-height: 122%;}

> 

> > #ygrp-sponsor #ygrp-lc .ad{

> 

> > margin-bottom: 10px;padding: 0 0;}

> 

> > -->

> 

> > 

> 

> > 

> 

> > 

> 

> > <!--

> 

> > 

> 

> > #ygrp-mlmsg {font-size:13px; font-family: arial, helvetica, clean, sans-serif;}

> 

> > #ygrp-mlmsg table {font-size:inherit; font:100% ;}

> 

> > #ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, sans-serif;}

> 

> > #ygrp-mlmsg pre, code {font:115% monospace;}

> 

> > #ygrp-mlmsg * {line-height: 1.22em;}

> 

> > #ygrp-text{

> 

> > font-family: Georgia;

> 

> > }

> 

> > #ygrp-text p{

> 

> > margin:0 0 1em 0;}

> 

> > #ygrp-tpmsgs{

> 

> > font-family: Arial;

> 

> > clear:both;}

> 

> > #ygrp-vitnav{

> 

> > padding-top: 10px;font- family:Verdana; font-size: 77%;margin: 0;}

> 

> > #ygrp-vitnav a{

> 

> > padding:0 1px;}

> 

> > #ygrp-actbar{

> 

> > clear:both;margin: 25px 0;white-space: nowrap;color: #666;text- align:right; }

> 

> > #ygrp-actbar .left{

> 

> > float:left;white- space:nowrap; }

> 

> > .bld{font-weight: bold;}

> 

> > #ygrp-grft{

> 

> > font-family: Verdana;font- size:77%; padding:15px 0;}

> 

> > #ygrp-ft{

> 

> > font-family: verdana;font- size:77%; border-top: 1px solid #666;

> 

> > padding:5px 0;

> 

> > }

> 

> > #ygrp-mlmsg #logo{

> 

> > padding-bottom: 10px;}

> 

> > 

> 

> > #ygrp-vital{

> 

> > background-color: #e0ecee;margin- bottom:20px; padding:2px 0 8px 8px;}

> 

> > #ygrp-vital #vithd{

> 

> > font-size:77% ;font-family: Verdana;font- weight:bold; color:#333; text-

> 

> transform:uppercase ;}

> 

> > #ygrp-vital ul{

> 

> > padding:0;margin: 2px 0;}

> 

> > #ygrp-vital ul li{

> 

> > list-style-type: none;clear: both;border: 1px solid #e0ecee;

> 

> > }

> 

> > #ygrp-vital ul li .ct{

> 

> > font-weight: bold;color: #ff7900;float: right;width: 2em;text- align:right; padding-

right: .

> 

> 5em;}

> 

> > #ygrp-vital ul li .cat{

> 

> > font-weight: bold;}

> 

> > #ygrp-vital a{

> 

> > text-decoration: none;}

> 

> > 

> 

> > #ygrp-vital a:hover{

> 

> > text-decoration: underline; }

> 

> > 

> 

> > #ygrp-sponsor #hd{

> 

> > color:#999;font- size:77%; }

> 

> > #ygrp-sponsor #ov{

> 

> > padding:6px 13px;background- color:#e0ecee; margin-bottom: 20px;}

> 

> > #ygrp-sponsor #ov ul{

> 

> > padding:0 0 0 8px;margin:0; }

> 

> > #ygrp-sponsor #ov li{

> 

> > list-style-type: square;padding: 6px 0;font-size: 77%;}

> 

> > #ygrp-sponsor #ov li a{

> 

> > text-decoration: none;font- size:130% ;}

> 

> > #ygrp-sponsor #nc{

> 

> > background-color: #eee;margin- bottom:20px; padding:0 8px;}

> 

> > #ygrp-sponsor .ad{

> 

> > padding:8px 0;}

> 

> > #ygrp-sponsor .ad #hd1{

> 

> > font-family: Arial;font- weight:bold; color:#628c2a; font-size: 100%;line- height:

122% ;}

> 

> > #ygrp-sponsor .ad a{

> 

> > text-decoration: none;}

> 

> > #ygrp-sponsor .ad a:hover{

> 

> > text-decoration: underline; }

> 

> > #ygrp-sponsor .ad p{

> 

> > margin:0;}

> 

> > o{font-size: 0;}

> 

> > .MsoNormal{

> 

> > margin:0 0 0 0;}

> 

> > #ygrp-text tt{

> 

> > font-size:120% ;}

> 

> > blockquote{margin: 0 0 0 4px;}

> 

> > .replbq{margin: 4;}

> 

> > -->

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > 

> 

> > ____________ _________ _________ _________ _________ __

> 

> > Do You Yahoo!?

> 

> > Tired of spam?  Yahoo! Mail has the best spam protection around 

> 

> > http://mail. yahoo.com

> 

> >

> 

> 

> 

> 

> 

>     

>   

> 

>     

>     

> 

> 

> 

> 

> <!--

> 

> #ygrp-mkp{

> border:1px solid #d8d8d8;font- family:Arial; margin:14px 0px;padding: 0px 14px;}

> #ygrp-mkp hr{

> border:1px solid #d8d8d8;}

> #ygrp-mkp #hd{

> color:#628c2a; font-size: 85%;font- weight:bold; line-height: 122%;margin: 10px 0px;}

> #ygrp-mkp #ads{

> margin-bottom: 10px;}

> #ygrp-mkp .ad{

> padding:0 0;}

> #ygrp-mkp .ad a{

> color:#0000ff; text-decoration: none;}

> -->

> 

> 

> 

> <!--

> 

> #ygrp-sponsor #ygrp-lc{

> font-family: Arial;}

> #ygrp-sponsor #ygrp-lc #hd{

> margin:10px 0px;font-weight: bold;font- size:78%; line-height: 122%;}

> #ygrp-sponsor #ygrp-lc .ad{

> margin-bottom: 10px;padding: 0 0;}

> -->

> 

> 

> 

> <!--

> 

> #ygrp-mlmsg {font-size:13px; font-family: arial, helvetica, clean, sans-serif;}

> #ygrp-mlmsg table {font-size:inherit; font:100% ;}

> #ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, sans-serif;}

> #ygrp-mlmsg pre, code {font:115% monospace;}

> #ygrp-mlmsg * {line-height: 1.22em;}

> #ygrp-text{

> font-family: Georgia;

> }

> #ygrp-text p{

> margin:0 0 1em 0;}

> #ygrp-tpmsgs{

> font-family: Arial;

> clear:both;}

> #ygrp-vitnav{

> padding-top: 10px;font- family:Verdana; font-size: 77%;margin: 0;}

> #ygrp-vitnav a{

> padding:0 1px;}

> #ygrp-actbar{

> clear:both;margin: 25px 0;white-space: nowrap;color: #666;text- align:right; }

> #ygrp-actbar .left{

> float:left;white- space:nowrap; }

> .bld{font-weight: bold;}

> #ygrp-grft{

> font-family: Verdana;font- size:77%; padding:15px 0;}

> #ygrp-ft{

> font-family: verdana;font- size:77%; border-top: 1px solid #666;

> padding:5px 0;

> }

> #ygrp-mlmsg #logo{

> padding-bottom: 10px;}

> 

> #ygrp-vital{

> background-color: #e0ecee;margin- bottom:20px; padding:2px 0 8px 8px;}

> #ygrp-vital #vithd{

> font-size:77% ;font-family: Verdana;font- weight:bold; color:#333; text-

transform:uppercase ;}

> #ygrp-vital ul{

> padding:0;margin: 2px 0;}

> #ygrp-vital ul li{

> list-style-type: none;clear: both;border: 1px solid #e0ecee;

> }

> #ygrp-vital ul li .ct{

> font-weight: bold;color: #ff7900;float: right;width: 2em;text- align:right; padding-right: .

5em;}

> #ygrp-vital ul li .cat{

> font-weight: bold;}

> #ygrp-vital a{

> text-decoration: none;}

> 

> #ygrp-vital a:hover{

> text-decoration: underline; }

> 

> #ygrp-sponsor #hd{

> color:#999;font- size:77%; }

> #ygrp-sponsor #ov{

> padding:6px 13px;background- color:#e0ecee; margin-bottom: 20px;}

> #ygrp-sponsor #ov ul{

> padding:0 0 0 8px;margin:0; }

> #ygrp-sponsor #ov li{

> list-style-type: square;padding: 6px 0;font-size: 77%;}

> #ygrp-sponsor #ov li a{

> text-decoration: none;font- size:130% ;}

> #ygrp-sponsor #nc{

> background-color: #eee;margin- bottom:20px; padding:0 8px;}

> #ygrp-sponsor .ad{

> padding:8px 0;}

> #ygrp-sponsor .ad #hd1{

> font-family: Arial;font- weight:bold; color:#628c2a; font-size: 100%;line- height:122% ;}

> #ygrp-sponsor .ad a{

> text-decoration: none;}

> #ygrp-sponsor .ad a:hover{

> text-decoration: underline; }

> #ygrp-sponsor .ad p{

> margin:0;}

> o{font-size: 0;}

> .MsoNormal{

> margin:0 0 0 0;}

> #ygrp-text tt{

> font-size:120% ;}

> blockquote{margin: 0 0 0 4px;}

> .replbq{margin: 4;}

> -->

> 

> 

> 

> 

> 

> 

> 

> ____________ _________ _________ _________ _________ __

> Do You Yahoo!?

> Tired of spam?  Yahoo! Mail has the best spam protection around 

> http://mail. yahoo.com

>





    
  

    
    




<!--

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.