implemented card states