final internal functions exercise