code: def poke(self, session, address, width, data):
          
  
          if width == 8:
              return self.poke_8(session, address, data)
          elif width == 16:
              return self.poke_16(session, address, data)
          elif width == 32:
              return self.poke_32(session, address, data)
          elif width == 64:
              return self.poke_64(session, address, data)
  
          raise ValueError('%s is not a valid size. Valid values are 8, 16, 32, or 64' % width)
docs: Writes an 8, 16, 32, or 64-bit value from the specified address.
  
          Corresponds to viPoke* functions of the VISA library.
  
          :param session: Unique logical identifier to a session.
          :param address: Source address to read the value.
          :param width: Number of bits to read.
          :param data: Data to be written to the bus.
          :return: return value of the library call.
          :rtype: :class:`pyvisa.constants.StatusCode`