Fuck it all up.
Improved but still screwed.
Introduce GunId property for unique identity and easy comparison.
Removing some debug logging.