Log an announcement from the blockstack developers,
    but first verify that it is correct.
    Return True if the announcement came from the announce IDs whitelist
    Return False otherwise

def check( state_engine, nameop, block_id, checked_ops ):
    """
    Log an announcement from the blockstack developers,
    but first verify that it is correct.
    Return True if the announcement came from the announce IDs whitelist
    Return False otherwise
    """

    sender = nameop['sender']
    sending_blockchain_id = None
    found = False
    blockchain_namerec = None

    for blockchain_id in state_engine.get_announce_ids():
        blockchain_namerec = state_engine.get_name( blockchain_id )
        if blockchain_namerec is None:
            # this name doesn't exist yet, or is expired or revoked
            continue

        if str(sender) == str(blockchain_namerec['sender']):
            # yup!
            found = True
            sending_blockchain_id = blockchain_id
            break

    if not found:
        log.warning("Announcement not sent from our whitelist of blockchain IDs")
        return False

    nameop['announcer_id'] = sending_blockchain_id
    process_announcement( blockchain_namerec, nameop, state_engine.working_dir )
    return True