how it works: