working version of genparticle linked list