public -> external