added functional collision and event management