add AttributeTrait