do protected/private check