```
  template<class T,class TV> struct CONJUGATE_GRADIENTS_HELPER{
      DEFORMABLE_OBJECT<T,TV>* deformable_object;
      int partition_id;
      T time,dt;
      T alpha,beta;
      ARRAY<TV>* dX_full;
      ARRAY<double> *S_dot_Q_partial,*rho_new_partial,*supnorm_partial;
  };

  typedef CONJUGATE_GRADIENTS_HELPER<T,TV> T_CG_HELPER;
  ARRAY<double> S_dot_Q_partial(particles.particle_ranges->m);
  ARRAY<T_CG_HELPER> helpers(particles.particle_ranges->m);

  for(int p=1;p<=particles.particle_ranges->m;p++){
          helpers(p).deformable_object=this;
          helpers(p).partition_id=p;
          helpers(p).time=time;
          helpers(p).beta=beta;
          helpers(p).S_dot_Q_partial=&S_dot_Q_partial;
  }

```

What do the brackets in helpers(p) stand for? How can we iterate through helpers since helpers is a single object