def deliver(lims_sample):
    """Figure out how to deliver results for a sample.

    Answers:
        - whether to delivery to Scout
        - where to deliver raw data
        - wether we shoud delivery extra assets
    """
    extras = []
    to_scout = 'scout' in lims_sample.udf.get('Data Analysis', 'notFound')
    payload = {'target': 'caesar'}
    customer = lims_sample.udf['customer']
    uppmax_project = lims_sample.udf.get('uppmax_project')
    if uppmax_project:
        payload = {'target': 'uppmax', 'project': uppmax_project}
    if customer == 'cust002':
        extras.append('bam')
    elif customer == 'cust009':
        payload = {}
    elif customer in ('cust008', 'cust016', 'cust019', 'cust020'):
        payload = {'target': 'sll-sthlm@medstore.sahlgrenska.gu.se'}
    elif customer == 'cust000':
        payload = {'target': 'rasta'}
    return {'scout': to_scout, 'customer': customer, 'raw_data': payload,
        'extras': extras}
