not actually needed in this branch, but it will clarify the idea of how it will be used in later tasks.