implement dep assignment