added preferred vendor method