Projection optimization
Finding Charge of the particle is Optimized, few particles are called very frequently and if we could return its charge fast then it will have an impact on performance of projection and ultimately to analysis and program.
if-else to find Visible particle is realigned, the heavier operation is done later.