code: def InventoryReceived(self, inventory):
          
          if inventory.Hash.ToBytes() in self._MissedBlocks:
              self._MissedBlocks.remove(inventory.Hash.ToBytes())
  
          if inventory is MinerTransaction:
              return False
  
          if type(inventory) is Block:
              if BC.Default() is None:
                  return False
  
              if BC.Default().ContainsBlock(inventory.Index):
                  return False
  
              if not BC.Default().AddBlock(inventory):
                  return False
  
          else:
              if not inventory.Verify(self.MemPool.values()):
                  return False
docs: Process a received inventory.
  
          Args:
              inventory (neo.Network.Inventory): expect a Block type.
  
          Returns:
              bool: True if processed and verified. False otherwise.