card refactors