Mapped out how it should work in comments