def run(pipeline, inpath, outpath):
    for item_type in ORDER:
        source = read_single_sheet(inpath, item_type)
        fieldnames = [k for k in source.fieldnames if ':ignore' not in k]
        with open(os.path.join(outpath, item_type + '.tsv'), 'wb') as out:
            writer = csv.DictWriter(out, fieldnames, dialect='excel-tab', extrasaction='ignore')
            writer.writeheader()
            writer.writerows(combine(source, pipeline))