begin to add distribued combination--finish compilation