recursive replacing conditionals