bcp utility implementation