Are arrays the best method here? Any ideas?