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 = {}
          # 'type' is given by class type
          data['id'] = u(array.get('id'))
          data['audio_file_id'] = u(array.get('audio_file_id'))
          data['caption'] = u(array.get('caption')) if array.get('caption') is not None else None
          data['parse_mode'] = u(array.get('parse_mode')) if array.get('parse_mode') 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
          data['input_message_content'] = InputMessageContent.from_array(array.get('input_message_content')) if array.get('input_message_content') is not None else None
  
          instance = InlineQueryResultCachedAudio(**data)
          instance._raw = array
          return instance
docs: Deserialize a new InlineQueryResultCachedAudio from a given dictionary.
  
          :return: new InlineQueryResultCachedAudio instance.
          :rtype: InlineQueryResultCachedAudio