build procedure