function hierarchy return values cleanup