added trait variability