def get_memory(self, address, memory):
    if (memory <= 0):
        raise ValueError((((('Must get a positive number of memory from the Virtual Memory instance. Attempted to get from ' + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes.'))
    if (address > self.max_memory):
        raise IndexError(((((("Can't get memory from an address outside the max_memory range of the Virtual_Memory instance. Attempted to get from " + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes. max_memory of the current Virtual_Memory instance is ') + str(hex(self.max_memory))))
    chunk_num = 'None'
    for chunk in range(0, len(self.chunks)):
        if ((self.chunks[chunk][1] <= address) and ((address + memory) < (self.chunks[chunk][1] + self.chunks[chunk][2]))):
            chunk_num = chunk
            break
    if (chunk_num == 'None'):
        raise IndexError((((('No chunk was found that has memory allocated in the memory region to get from the Virtual Memory instance. Attempted to get from ' + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes.'))
    current_chunk = self.chunks[chunk]
    address = (address - current_chunk[1])
    return current_chunk[0].memory[address:(address + memory)]
def get_memory(self, address, memory):
    if (memory <= 0):
        raise ValueError((((('Must get a positive number of memory from the Virtual Memory instance. Attempted to get from ' + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes.'))
    if (address > self.max_memory):
        raise IndexError(((((("Can't get memory from an address outside the max_memory range of the Virtual_Memory instance. Attempted to get from " + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes. max_memory of the current Virtual_Memory instance is ') + str(hex(self.max_memory))))
    chunk_num = 'None'
    for chunk in range(0, len(self.chunks)):
        if ((self.chunks[chunk][1] <= address) and ((address + memory) < (self.chunks[chunk][1] + self.chunks[chunk][2]))):
            chunk_num = chunk
            break
    if (chunk_num == 'None'):
        raise IndexError((((('No chunk was found that has memory allocated in the memory region to get from the Virtual Memory instance. Attempted to get from ' + str(hex(address))) + ' for ') + str(hex(memory))) + ' bytes.'))
    current_chunk = self.chunks[chunk]
    address = (address - current_chunk[1])
    return current_chunk[0].memory[address:(address + memory)]