explain in more detail how this works