code: def import_from_xdr(self, xdr):
          
          te = Te.from_xdr(xdr)
          if self.network.upper() in NETWORKS:
              te.network_id = Network(NETWORKS[self.network]).network_id()
          else:
              te.network_id = Network(self.network).network_id()
          self.te = te
          self.tx = te.tx  # with a different source or not .
          self.ops = te.tx.operations
          self.address = te.tx.source
          self.sequence = te.tx.sequence - 1
          time_bounds_in_xdr = te.tx.time_bounds
          if time_bounds_in_xdr:
              self.time_bounds = {
                  'maxTime': time_bounds_in_xdr[0].maxTime,
                  'minTime': time_bounds_in_xdr[0].minTime
              }
          else:
              self.time_bounds = None
          self.memo = te.tx.memo
          return self
docs: Create a :class:`TransactionEnvelope
          <stellar_base.transaction_envelope.TransactionEnvelope>` via an XDR
          object.
  
          In addition, sets the fields of this builder (the transaction envelope,
          transaction, operations, source, etc.) to all of the fields in the
          provided XDR transaction envelope.
  
          :param xdr: The XDR object representing the transaction envelope to
              which this builder is setting its state to.
          :type xdr: bytes, str