...it's not that this is a problem for me at the moment, but the Token class seems to be begging to become an interface. Just out of interest, why does this class have the slightly odd structure that it does? ta, dave -- http://david.holroyd.me.uk/