It fought me every step of the way, but it finally works and fast too. I might have taken the long route in doing this with arrays, but it works without delay. The source code can be downloaded from: www.BlindTunes.net/BlindTunesSource.zip The file you are looking for is called: iTunes_super_playlists.JSS I did my best at something I have never done before and learned quite a bit about arrays. The sort function sorts the array by not the name of the string, but the value attached along side it in the next row. So for example, detecting play counts for a specific artist or genre. I have been passing arrays through this function and it works nicely. I don't need to use the array after I get what I want, because I know it changes values and the array becomes useless after. I don't know how collections would work in this scenario because there is so much I have to gather about genres, artists, favorite ratings, play counts, skip counts, etc. Take a look and use whatever code you like. The alphabetize function works nicely. I pass two arrays through it to keep the track index intact and get an actual list for a dialog. Just because the songs have been alphabetized, it still keeps track of what actual item in the library to interact with. I think I did an OK job at this. It probably could be done better though. Anyway, enjoy, John Martyn __________� View the list's information and change your settings at //www.freelists.org/list/jawsscripts