def get_token(self, hash):
        """
        Looks up a token by hash
        Args:
            hash (UInt160): The token to look up

        Returns:
            SmartContractEvent: A smart contract event with a contract that is an NEP5 Token
        """
        tokens_snapshot = self.db.prefixed_db(NotificationPrefix.PREFIX_TOKEN).snapshot()

        try:
            val = tokens_snapshot.get(hash.ToBytes())
            if val:
                event = SmartContractEvent.FromByteArray(val)
                return event
        except Exception as e:
            logger.error("Smart contract event with contract hash %s not found: %s " % (hash.ToString(), e))
        return None