explain how this work