added GameLogic design