moved gcpa_T type to a separate file