for self