Use the internal function