code: def get_vm(self, at_header: BlockHeader=None) -> 'BaseVM':
          
          header = self.ensure_header(at_header)
          vm_class = self.get_vm_class_for_block_number(header.block_number)
          return vm_class(header=header, chaindb=self.chaindb)
docs: Returns the VM instance for the given block number.