add each friend functions