m.c updated. see particle_register()