code: def get_input_dialog(dialog):
      
      try:
          if dialog.SUBCLASS_OF_ID == 0xa21c9795:  # crc32(b'InputDialogPeer')
              return dialog
          if dialog.SUBCLASS_OF_ID == 0xc91c90b6:  # crc32(b'InputPeer')
              return types.InputDialogPeer(dialog)
      except AttributeError:
          _raise_cast_fail(dialog, 'InputDialogPeer')
  
      try:
          return types.InputDialogPeer(get_input_peer(dialog))
      except TypeError:
          pass
  
      _raise_cast_fail(dialog, 'InputDialogPeer')
docs: Similar to :meth:`get_input_peer`, but for dialogs