fix self
fix tests