remove more redundancy