code: def from_array(array):
          
          if array is None or not array:
              return None
          # end if
          assert_type_or_raise(array, dict, parameter_name="array")
          from pytgbot.api_types.sendable.reply_markup import InlineKeyboardMarkup
          
  
          data = {}
          data['game_short_name'] = u(array.get('game_short_name'))
          if array.get('chat_id') is None:
              data['receiver'] = None
          elif isinstance(array.get('chat_id'), None):
              data['receiver'] = None(array.get('chat_id'))
          elif isinstance(array.get('chat_id'), str):
              data['receiver'] = u(array.get('chat_id'))
          elif isinstance(array.get('chat_id'), int):
              data['receiver'] = int(array.get('chat_id'))
          else:
              raise TypeError('Unknown type, must be one of None, str, int or None.')
          # end if
          if array.get('reply_to_message_id') is None:
              data['reply_id'] = None
          elif isinstance(array.get('reply_to_message_id'), DEFAULT_MESSAGE_ID):
              data['reply_id'] = DEFAULT_MESSAGE_ID(array.get('reply_to_message_id'))
          elif isinstance(array.get('reply_to_message_id'), int):
              data['reply_id'] = int(array.get('reply_to_message_id'))
          else:
              raise TypeError('Unknown type, must be one of DEFAULT_MESSAGE_ID, int or None.')
          # end if
          data['disable_notification'] = bool(array.get('disable_notification')) if array.get('disable_notification') is not None else None
          data['reply_markup'] = InlineKeyboardMarkup.from_array(array.get('reply_markup')) if array.get('reply_markup') is not None else None
          return GameMessage(**data)
docs: Deserialize a new GameMessage from a given dictionary.
  
          :return: new GameMessage instance.
          :rtype: GameMessage