working on bases class