fixing call to self