Implemented self operations