solved some bug and added more exceptions like control of cards, more refactoring