try to refactor card class methods