the comments on these two functions are good but don't explain why they exist.