add get set to abstract