self in method declaration retained