internal function comments