take out redundant self