Added self assignment check