added create vocabulary function