preprocessing update