transform and apply