adds self stuff