implement source compress indiviually