def get_order_by_drone_id(drone_id: str) -> DroneOrder:
    '''
    Gets current order if given drone has one.
    '''
    return map_to_object(
        fetchone('SELECT protocol FROM drone_order WHERE drone_id = :drone_id',
                 {'drone_id': drone_id}), DroneOrder)
def get_discord_id_of_drone(drone_id: str) -> str:
    '''
    Returns the discord ID associated with a given drone
    '''
    return map_to_object(
        fetchone('SELECT id FROM drone WHERE drone_id = :drone_id',
                 {'drone_id': drone_id}), Drone)
def fetch_drone_with_drone_id(drone_id: str) -> Drone:
    '''
    Finds a drone with the given drone_id.
    '''
    return map_to_object(
        fetchone(
            'SELECT id, drone_id, optimized, glitched, trusted_users, last_activity FROM drone WHERE drone_id = :drone_id',
            {'drone_id': drone_id}), Drone)
def fetch_storage_by_target_id(drone_id: str) -> Storage:
    '''
    Fetch a single storage by the target_id.
    '''
    return map_to_object(
        fetchone(
            'SELECT id, stored_by, target_id, purpose, roles, release_time FROM storage WHERE target_id = :drone_id',
            {'drone_id': drone_id}), Storage)