docs: def from_array(array):
          """
          Deserialize a new Update from a given dictionary.
  
          :return: new Update instance.
          :rtype: Update
          """
          if array is None or not array:
              return None
          # end if
          assert_type_or_raise(array, dict, parameter_name="array")
          from pytgbot.api_types.receivable.inline import ChosenInlineResult
          from pytgbot.api_types.receivable.inline import InlineQuery
          from pytgbot.api_types.receivable.payments import PreCheckoutQuery
          from pytgbot.api_types.receivable.payments import ShippingQuery
          from pytgbot.api_types.receivable.updates import CallbackQuery
          from pytgbot.api_types.receivable.updates import Message
          
  
          data = {}
          data['update_id'] = int(array.get('update_id'))
          data['message'] = Message.from_array(array.get('message')) if array.get('message') is not None else None
          data['edited_message'] = Message.from_array(array.get('edited_message')) if array.get('edited_message') is not None else None
          data['channel_post'] = Message.from_array(array.get('channel_post')) if array.get('channel_post') is not None else None
          data['edited_channel_post'] = Message.from_array(array.get('edited_channel_post')) if array.get('edited_channel_post') is not None else None
          data['inline_query'] = InlineQuery.from_array(array.get('inline_query')) if array.get('inline_query') is not None else None
          data['chosen_inline_result'] = ChosenInlineResult.from_array(array.get('chosen_inline_result')) if array.get('chosen_inline_result') is not None else None
          data['callback_query'] = CallbackQuery.from_array(array.get('callback_query')) if array.get('callback_query') is not None else None
          data['shipping_query'] = ShippingQuery.from_array(array.get('shipping_query')) if array.get('shipping_query') is not None else None
          data['pre_checkout_query'] = PreCheckoutQuery.from_array(array.get('pre_checkout_query')) if array.get('pre_checkout_query') is not None else None
          data['_raw'] = array
          return Update(**data)