remove redunant self